最新Unity游戏主程进阶学习大纲(2个月)
过完年了,很多同学开始重新规划自己的职业方向,找更好的机会,准备升职或加薪。今天给那些工作了1~5年的开发者梳理”游戏开发客户端主程”的学习大纲,帮助大家做好面试准备。适合Unity客户端开发者。进阶主程其实就是从固定的几个方面搭建好完整的知识体系做好对应的回答和准备,学习一些固定的处理相应问题的设计模式与方法。最下面放了视频教程及其源码
![](https://pic4.zhimg.com/80/v2-396a897e2a763614c4344c911cbf4d33_720w.webp)
主程进阶学习大纲
1: 框架设计板块
a: 基于框架组织项目开发的原则思想,项目代码开发方式,项目协同方式等;
b: 框架的资源管理,资源自动化打包,资源更新,资源增量下载,资源断点续传等技术原理与相关开源框架(YooAssets等);
c: 项目渲染管线的选取与配置: 内置渲染管线,URP渲染管线,HDRP渲染管线等,它们的优缺点,如何给项目选择合适的渲染管线;
d: 游戏项目配置资源的加载与管理: Excel表格方案, JSON方案,XML方案,内置asset数据库文件方案等;
e: 游戏开发中常用的管理模块:日志模块,事件订阅与发布模块, 声音管理模块,UI管理模块,Timer模块,TCP/UDP/HTTP网络模块,序列化与反序列化模块,节点池管理模块,状态机逻辑控制模块,行为树逻辑控制模块;
f: 项目打包与发布: 一键打包,打空包+资源更新。
g: 资源包体优化等相关工具与脚本;
……
2: 具体项目中常用工具开发与编辑器扩展(可选,根据自己的需求准备)
a: RPG 2D/3D 斜45度菱形,六边形等地图编辑器与寻路导航解决方案;
b: 基于Recastnavigation的3D寻路导航地图编辑与解决方案;
c: 基于大世界地图的编辑方案,如WorldStreamer插件的原理与使用;
d: 游戏关卡编辑器工具的制作: 扩展编辑器支持关卡类游戏的编辑与数据导出,如《跑酷游戏》的关卡编辑器;
e: 路径编辑与数据导出相关工具, 制作塔防类游戏的时候,编辑好路径,最后把路径数据导出来,Runtime时根据路径点导航;
f: 状态同步,帧同步,断线重连等网路游戏的常见处理;
对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正在从事游戏开发的技术大佬,欢迎你来交流学习。
3:热更新解决方案(Lua,ILRuntime, huatuo/HybridCLR)
a: 基于xLua/Ulua打造纯Lua的业务逻辑开发框架
b: 编译Lua脚本为Lua字节码,并打包到ab包中;
c: Lua脚本的资源更新与代码加载;
d: C#的Lua导出,Lua与C#互调与性能优化;
e: 基于ILRuntime打造热更工程C#的业务逻辑开发框架
f: 热更.net dll的更新与加载;
g: natvie C#与热更工程之间的互调与性能优化;
h: 部署huatuo/HybridCLR的工具链,基于ADF机制来分解项目配置热更;
i: 资源的增量更新与下载;
……
4:常用的设计模式与代码自动生成
a: 单例模式的使用场景和方式;
b: 观察者模式的使用场景和方式;
c: 基于Attribute注解的属性模式;
d: 自动生成一些工具性质的代码;
e: 游戏代码组织中的逻辑流程与具体功能代码分离;
g: 代码组织中的机制与策略分离;
……
5: 渲染与Shader开发
a: 渲染管线的流程与基本处理,比如,顶点,片元, 后期处理等;
b: 常见的一些Shader效果的开发技巧:噪声纹理,波纹,模糊,等;
c: 常见的光照模型计算,阴影计算;
f: ComputeShader的并发运算与处理;
g: 游戏开发中的一些有趣的Shader编写: 捏脸,Mesh切割,涂鸦等;
h: Shader LOD的切换与分层处理;
……
6: 性能优化
a: 各种常见性能分析工具使用: stats, Profiler, FrameDebug等;
b: 性能定位分析与测试方法如:隔离法等;
c: 常见的一些优化手段与技巧总结,包体优化,内存优化,显存优化等;
d: drawcall占用分析与优化;
e: set passcall占用分析与优化;
f: 多线程or JobSystem的优化;
g: 数据IO的分析与优化: 文件IO,网络IO等;
……
7: DOTS框架设计与开发
a:DOTS的核心机制分析与底层原理: Component, System, JobSystem, Burst等;
b: DOTS创作逻辑与Entity Baker;
c: 基于DOTS+传统框架如何来组织游戏项目与开发,项目System与SystemGroup的结构组织;
d: DOTS如何支持角色的3D动画与优化;
e: 基于DOTS如何实现常用的算法与专题:物理引擎,RVO,流程寻路等;
……
最后
上面列举出来了Unity游戏客户端主程进阶所需要掌握的主要方向,大家可以根据这些来进行准备和整理。我们的VIP课程也是基于这个大纲思路来出针对性的课程的配合项目,把这些结合综合起来讲解。明天我们将会放出Cocos游戏主程进阶大纲。