一直以来都是做的2d。。最近开始想学3d了。。文档看的很懵,真的很懵。。倒不是写的不好,主要是脑子里没那些概念。。
跪!!!求一个大题的学习路径。。
渲染啊,底层什么的,初学者还没到那个程度吧。。。
没有3D的概念,看文档跟着教程敲,是的确不理解。而且调视角怎么调,都没有2D 的那种感觉。所见即是所得。。。
建议去学unity3d部分,概念是相通的,unity的相关学习资料也很丰富
你的第一个游戏 是你最好的例子。
了解 EC
如果你一直用 Cocos Creator(2D),你应该非常了解结点,组件这些概念。
了解网格
我建议你先了解一下网格是什么,网格长什么样。网格渲染后就成了模型,就是你在游戏中看见的那些人物和花花草草。
你可以从最简单的网格下手,在场景编辑器里右键创建几个 Cube。
你可以通过设置位移、缩放、旋转来让 Cube 动起来,让它们大小不一,面向四面八方。这里就要注意,当设置位移、缩放、旋转时候,是用三维的坐标(向量)而非二维。
了解摄像机
你需要知道摄像机是什么,这关系到模型是怎么映入你的眼帘的。你可以想象屏幕就是一个摄像机,你实际上在通过屏幕窥视游戏里的世界。
当你在场景编辑器里面时,场景编辑器已经为你形象地画好了摄像机的视野。
当你知道脑海中对于网格和摄像机有了概念之后,你已经可以写出动态的玩意儿了,或者说,小小小游戏。你可以试着把你的 Cube 从这儿移动到那儿,并让它转个圈。与此同时,你可以也移动你的摄像机,让它跟随你的模型移动。
好了,当你确保能熟练操纵上面所述的内容。你可以去探索更多。
材质
除了背景,所有的 Cube 都是难看的紫色,这一定让你的游戏世界毫无生机。接下来,你需要去了解一下材质。创建一个材质,为这个模型指定你创建出来的材质,然后指定材质的属性。不用很深,选那个名叫 builtin-unlit 的效果,然后调一调参数,看看变化。把你的 Cube 都调成五颜六色。
模型文件
Cube 模型实在是太无趣。你可以去网上找一些复杂的、好看的模型,人物的,动物的,怪物的,花花草草都行,这些模型文件的后缀都是 .fbx 或者 .gltf。把它们下载下来放到项目里面,再从项目里拖到场景里。
动画
是的,有些模型可能带动画。当你把模型文件拖到场景里时,你可以看到自动添加了动画组件。试着设置 DefaultClip,然后勾选 playOnLoad。你就有了可以动的模型。
后续,你已经入门了 3D 游戏开发。接下来你可能需要看一些书,或者网上教程来学习:
- 材质,贴图,着色器素质三联
- 粒子系统
- 物理系统
没概念没关系,很多游戏看上去是3D的,实际还是2D玩法,这种其实比较多。真正难做的是必须3D才能实现的玩法。
要学习就建议先找游戏成品,然后对照实现,看看能不能完全还原。真的一步步按顺序去学,不仅慢,效果还不好。
你可以先从2D玩法的3D游戏入手,难度会低一些,思路都是2D的,只是需要把图片换成3D模型。
这种建议 明显是自己也不知道3d的学习路径啊
其实可以去看下 opengl 的教程,学习下坐标变换映射之类的,就会对 3D 有个概念
一入3d深似海啊,我个人的学习路径是这样的:
1.OpenGL 这个必须的,OpenGL内容很多,
1.线性代数(向量,矩阵,位移,缩放,旋转,其中旋转最复杂),
2.渲染基础 (比如顶点,线段,三角形,渲染管线,顶点缓存,纹理,uv,颜色,着色器,顶点着色器,像素着色器最常用,相机,灯光,最简单的冯氏光照原理,光照贴图原理等等),学到这里基本了解了个大概吧。
3.动画系统(骨骼动画,ik, 关键帧动画) 感觉动画系统也是挺复杂的,骨骼动画运动的原理起码要知道的
4.物理引擎(超复杂的,,)
5.粒子系统
6.ui系统 (搞好ui也挺复杂的,其中的循环列表,聊天图文混排都挺考验人的)
7.开始搞个小项目
8.继续学习OpenGL
9.继续学习OpenGL
10.继续学习OpenGL
。。。。。。
我擦。。我就想根据给的资源写出个3d游戏。。这就要opengl了啊。。。
没有OpenGL基础很难搞3d的大兄嘚
那我正式上手写的话。。岂不是猴年马月。。还早着呢。。
同意🙆
哈哈哈,回不了头了