Unity主程架构师应该如何学习,需要学习哪些知识点

发布时间 2023-11-10 15:01:25作者: rain4414

很多小伙伴想进阶Unity主程,进阶Unity架构师,不知道要学哪些知识,今天给大家分下一个比较完整的知识体系,介绍一些有干货的博主与教程,给大家做参考。

 

1: 编程语言,数据结构与算法

  (1) c#的基本语法与常用的机制:权限,继承,多态, virutal, override委托,协程,foreach,泛型,Lambda表达式,Attrubute,反射,枚举,异常处理try/catch,垃圾回收等。了解这些C#的语法与核心机制,有助于你写出高性能的代码。

(2)掌握常用的数据结构,熟悉每种数据结构背后的实现原理与性能细节: List, Hash,队列,栈,链表,字典,树,图等;

(3)了解常用的一些算法思想: 分治,动态规划,贪心算法,穷举,预先计算与查表,搜索,排序等。

2: 熟悉Unity游戏引擎使用的非渲染的核心机制:

  (1)熟悉开发环境与开发工具: .net, mono,il2cpp,android SDK, android NDK, JDK, visual studio, git,svn等。

(2)熟悉Unity引擎中的各种工具的使用: profiler, stats, frame,debugger, log;

(3)熟悉Unity编辑器扩展机制来定制开发流程与相关工具:关卡编辑器,地图编辑器,代码自动生成等。

(4)熟悉Unity的跨平台的开发与调试:基于编辑器/iOS/Android/win/mac等平台如何开发与真机调试。

(5)熟悉常用的iOS开发与Android开发的一些核心概念与机制:Activity,OpenGL thread等。

(6)熟悉Unity的各种资源加载策略的机制与用法: Resources, AssetsBundle,StreammingAssets等。

(7)熟悉基于Unity组织大型游戏项目与分工合作的工作展开:美术,程序,策划如何同时开发,将相互影响降到最低等。

(8)熟悉Unity的各种配置与相关参数对游戏与性能的影响:物理引擎的参数,编译的相关参数,unsafe code的相关参数等。

(9)熟悉各种游戏常用的算法原理与方案:寻路导航,网络,http,AOI, ROV动态避障,定点数物理引擎,程序生成地图,行为决策树,状态机,流场寻路等。

(10)熟悉常用的解决方案,框架库,开源项目:

   Lua热更新: xLua, ulua;

   C# 热更新: ILRuntime,huatuo/HybirdCLR(wolong)

   Json文本序列化与反序列化: LitJson;

   二进制序列化与反序列化: Protobuf;

   资源管理: YooAssets等;

   CSV表格数据管理: CSVParser, Flash闪表工具等。

(11)Unity DOTS 开发: ECS, Burst;

(12)操作系统的基本知识:文件读写,多线程与同步,虚拟内存,垃圾回收算法等;

3: 熟悉一个游戏项目应该如何管理与如何组织;

(1)如何基于git等版本管理工具来管理项目;

(2)搭建框架,技术选型,技术验证,让策划,程序,美术能协同工作;

a:目录结构划分与规划,将不同的研发人员分开(美术,策划,核心程序,基础程序);

b:引入基础的库与相关模块: 资源管理框架,网络,protobuf协议,json;

c:根据游戏的类型来制作一些开发中的编辑工具:地图编辑器,关卡编辑器,技能编辑器等;

d:根据游戏的类型编写通用的框架:资源管理,网络管理,协议管理,声音管理,配置表管理,事件管理,UI管理等。

e: 热更新的技术分析与接入: Lua方案,ILRuntime方案,huatuo/HybirdCLR方案等;

d: 性能测试与技术验证: 做好项目的技术验证与性能验证;

e: 熟悉与服务端进行对接,熟悉网络游戏的解决方案,知道哪些放客户端,哪些放服务端。

(3)项目进度管理与任务安排;

   a:给项目组的开发人员来合理的分配相关任务;

   b:追踪相关进度;

   c:引入系统测试与全平台测试,尽快更近问题;

   d:建立测试casebug库记录,记录下现在有的bug与解决情况;

   e:阅读团队其它成员的代码,必要时调整重构,确保代码的质量;

4: 与团队成员,客户,老板沟通需求,深度交流,有效沟通;

  (1): 能谦虚的听完其它人的讲话与观点;

  (2): 记录好别人观点的重点与内在逻辑,并重新梳理,找确认好需求;

  (3): 针对问题,提出自己的解决方案与疑虑,深度沟通;

  (4): 每次沟通完后做好小结,发到邮箱等待确认,实现完成的一次有效沟通;

5: 熟悉Unity引擎的渲染相关的机制与技能(可以往技术美术的角度转型)

(1)可编程渲染管线的核心机制;

(2)内置渲染管线的核心机制;

(3)URP/HDRP渲染管线的核心机制与处理;

(4)熟悉常用的一些渲染机制:阴影计算,法线,漫反射光照计算,镜面反射光照计算, 深度测试等

(5)熟悉Shader开发与常见的Shader移植修改;

(6)熟悉常见的一些主流游戏的Shader算法与处理技巧;

 

6: 关注最新的技术前沿动态;

(1)Unity引擎的技术动态与发展方向;

(2)其它引擎的技术动态与发展方向;

(3)关注虚拟现实,VR, AR,元宇宙等相关技术动态;

(4)关注深度学习AI训练等与游戏,计算机3D相关的交叉领域;