学会Unity 其实不难,但要说在任一领域做精的话,都是需要下大功夫的。以下是针对程序来说的学习路线
初步熟悉Unity
熟悉Unity的开发环境,界面,文档:(知道有问题时去哪里找很重要)
熟悉Unity的基本概念:(包括但不限于)
Game Object & Component
Prefab
Tag
Layer
Mono Behaviour 的生命周期
熟悉Unity的资源管理
知晓常用的游戏开发资源从哪里来,到哪里去,包括但不限于:模型,材质,动画,数据表,配置表.....
熟悉Unity的工程结构
内置目录
区分清楚工程文件中哪些是引擎生成的文件,在协同工作时避免这些文件产生冲突
形成一些良好的习惯,整理干净工程。
熟悉Unity中各个常用的子系统及其相关组件,知道怎么去使用是第一步
物理
动画
UI
图形渲染
...
熟悉在Unity中的游戏开发编程
3D数学
常用API
熟悉常用的数据结构
编程基础薄弱的,还要恶补一下编程功底
使用Unity产出作品,形成自己的正向反馈
经过之前的熟悉过程,到这里应该已经有一定的熟悉程度了,那么别停下,开始做些个人作品吧。
Asset Store上面有很多值得学习的完整工程,找自己感兴趣的,下载下来,开始复刻,在复刻的过程中,学习别人的经验
自己给自己定一个小目标,使用Unity开发点自己的东西
深入学习
在这个阶段,如果可以的话,最好先明确了自己未来的发展方向,要知晓自己未来想做什么, 以下我列出了一些,可能的发展方向,每种方向,都有不同的深入学习的路线。所以选好了,就朝着一个方向努力吧,不要朝三暮四。
独立开发者
用到什么学什么,是这个路线的唯一真理,一切跟着你的项目走
Gameplay工程师
这个路线会学的稍微杂一些, 但有几项是必须要融会贯通的,一个好的Gameplay工程师其实是非常难得的,特别是在这个大环境就是程序员都喜欢往底层做而忽视直接跟用户接触的上层逻辑。
数学知识基础
物理知识基础
熟练掌握,且深入理解动画系统
熟练掌握,且深入理解UI系统
熟练掌握,且深入理解物理系统
熟练掌握,且深入理解渲染系统
网络,AI.... 等等
总的来说,就是得熟悉引擎的方方面面,还得懂游戏。
引擎工程师
鉴于渲染部分是任何一个引擎的核心模块,所以先从这里研究起吧,但这也绝对不是引擎的全貌。尝试下自己实现个软件渲染器,非常有利于深入理解渲染管线。
打牢C++基础,毕竟现代游戏引擎,底层都是C++。由于Unity毕竟是个闭源引擎,其源码你是看不到了,就算有,也是老版本的了。所以找些其他引擎的源码读读吧。
基于Unity实现自己的扩展模块。
游戏设计师
用到什么学什么,做到自己能实现游戏原型,就够了
....
这里还有一些教程,希望能帮到你:游戏开发入门指南
有疑问加站长微信联系(非本文作者)