最新Unity游戏主程进阶学习大纲(2个月)

过完年了,很多同学开始重新规划自己的职业方向,找更好的机会,准备升职或加薪。今天给那些工作了1~5年的开发者梳理”游戏开发客户端主程”的学习大纲,帮助大家做好面试准备。适合Unity客户端开发者。进阶主程其实就是从固定的几个方面搭建好完整的知识体系做好对应的回答和准备,学习一些固定的处理相应问题的设计模式与方法。最下面放了视频教程及其源码

主程进阶学习大纲

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视频教程及源码

最后

上面列举出来了Unity游戏客户端主程进阶所需要掌握的主要方向,大家可以根据这些来进行准备和整理。我们的VIP课程也是基于这个大纲思路来出针对性的课程的配合项目,把这些结合综合起来讲解。明天我们将会放出Cocos游戏主程进阶大纲。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/262990.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python编程中模块的调用方法

模块,就是制造大型程序的“零件"。这些零件可以是外购的也可以是“自造”的。它们的使用方法很简单,就是“拿来”——import. “拿来”模块的方法有from***import*** 和import***,宗旨就是“拿来”——import. 对不对?

Vision Transfomer系列第二节---Tricks测试

目录 学习式和固定式位置编码测试dropout的作用测试block深度的作用测试embeding维度大小的作用测试多头的作用测试Overlap Patch的作用 学习式和固定式位置编码测试 主要测试无位置编码\可学习位置编码和固定式位置编码的训练效果: 其中固定式位置编码采用之前博客的正余弦位…

架构设计:数据库扩展

引言 随着业务的发展和用户规模的增长,数据库往往会面临着存储容量不足、性能瓶颈等问题。为了解决这些问题,数据库扩展成为了一种常见的解决方案。在数据库扩展的实践中,有许多不同的策略和技术可供选择,其中包括水平拆分、垂直…

高通 Android 12 Settings不显示版本号问题

1、最近项目遇到一个奇葩问题,编译系统版本号不见了? 2、一开始我想着可能是自己代码没有make clean结果编译几个小时,然后烧录固件发现还是未生效。 3、然后这时候我又去看git log review最近修改也没有太大发现(待定&#xff…

介绍 CI / CD

目录 一、介绍 CI / CD 1、为什么要 CI / CD 方法简介 1、持续集成 2、持续交付 3、持续部署 2、GitLab CI / CD简介 3、GitLab CI / CD 的工作原理 4、基本CI / CD工作流程 5、首次设置 GitLab CI / CD 6、GitLab CI / CD功能集 一、介绍 CI / CD 在本文档中&#x…

开源 - 一款可自定义的在线免杀平台|过x60、wd等

免责声明:本工具仅供安全研究和教学目的使用,用户须自行承担因使用该工具而引起的一切法律及相关责任。作者概不对任何法律责任承担责任,且保留随时中止、修改或终止本工具的权利。使用者应当遵循当地法律法规,并理解并同意本声明…

K线实战分析系列之二:伞形线

K线实战分析系列之二:伞形线 一、伞形线二、锤子线三、上吊线四、锤子线和上吊线的特征 一、伞形线 可以是看涨信号,也可以是看跌信号,具体要看它处于趋势的哪个位置 二、锤子线 出现在下行趋势中就叫锤子线锤子线是阳线看涨意义更大一点市…

petalinux_zynq7 驱动DAC以及ADC模块之四:python实现http_api

前文: petalinux_zynq7 C语言驱动DAC以及ADC模块之一:建立IPhttps://blog.csdn.net/qq_27158179/article/details/136234296petalinux_zynq7 C语言驱动DAC以及ADC模块之二:petalinuxhttps://blog.csdn.net/qq_27158179/article/details/1362…

【办公类-16-10-01】“2023下学期 中4班 自主游戏观察记录(python 排班表系列)

背景需求 上学期的周安排里,每班每周的自主游戏会轮到多个不同的内容 因此在每周的自主游戏观察有2次记录,观察的项目可以写不一样的, 如一位老师写沙水游戏,另一位写表演游戏 本学期,中班的自主游戏全部是户外的&am…

ApexRBp在线粒子传感器在电动汽车电池制造的应用

电动汽车电池的崛起与颗粒污染的挑战 随着电动汽车(EV)市场的迅速扩张,对高性能锂离子电池的需求也急剧增加。这些电池不仅是EV的心脏,更是推动其前行的核心动力。然而,在电池制造的每一个环节,都需要对多…

2024-02-21 作业

作业要求: 复习课上内容 //已完成结构体字节对齐,64位没做完的做完,32位重新都做一遍,课上指定2字节对齐的做一遍,自己验证 //已完成两种验证大小端对齐的代码写一遍复习指针内容 //已完成完善顺序表已写出的…

网络安全笔记总结

IAE引擎 1.深度检测技术--DFI和DPI技术 DFI和DPI都是流量解析技术,对业务的应用、行为及具体信息进行识别,主要应用于流量分析及流量检测。 DPI:深度包检测技术 DPI是一种基于应用层的流量检测和控制技术,对流量进行拆包&#x…

海外媒体发稿:链游媒体宣发推广7种有效策略解析-华媒舍

随着区块链技术的不断发展,链游(区块链游戏)已经成为了游戏市场中备受瞩目的一部分。仅仅开发出一款出色的链游并不足以成功,而有效的宣发推广策略则是不可或缺的。 本文将介绍7种有效的链游媒体宣发推广策略,帮助您了…

机器视觉【3】非线性求解相机几何参数

线性求解相机几何参数的缺点 上一章节介绍学习了(DLT)线性求解相机几何参数,了解到线性求解法当中比较明显的缺点: 没有考虑到镜头畸变的影响不能引入更多的约束条件融入到DLT算法当中优化最关键的是,代数距离并不是…

测试环境搭建整套大数据系统(六:搭建sqoop)

一:下载安装包 https://archive.apache.org/dist/sqoop/ 二:解压修改配置。 tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /opt cd /opt mv sqoop-1.4.7.bin__hadoop-2.6.0/ sqoop-1.4.7修改环境变量 vi /etc/profile#SQOOP_HOME export SQOOP_…

Python 在Word中创建表格并填入数据、图片

在Word中,表格是一个强大的工具,它可以帮助你更好地组织、呈现和分析信息。本文将介绍如何使用Python在Word中创建表格并填入数据、图片,以及设置表格样式等。 Python Word库: 要使用Python在Word中创建或操作表格,需…

Atcoder ABC340 A-D题解

比赛链接:ABC340 话不多说&#xff0c;看题。 Problem A: 签到。 #include <bits/stdc.h> using namespace std; int main(){int a,b,d;cin>>a>>b>>d;for(int ia;i<b;id)cout<<i<<endl;return 0; } Problem B: 还是签到题。一个v…

Neo4j导入数据之JAVA JDBC

目录结构 前言设置neo4j外部访问代码整理maven 依赖java 代码 参考链接 前言 公司需要获取neo4j数据库内容进行数据筛查&#xff0c;neo4j数据库咱也是头一次基础&#xff0c;辛辛苦苦安装好整理了安装neo4j的步骤&#xff0c;如今又遇到数据不知道怎么创建&#xff0c;关关难…

石头剪刀布游戏(C语言)

题目描述 石头剪刀布游戏有 3 种出拳形状&#xff1a;石头、剪刀、布。分别用字母 A , B , C 表示。 游戏规则: 出拳形状之间的胜负规则如下&#xff1a; A > B&#xff1b;B > C&#xff1b;C > A&#xff1b;">"左边一个字母&#xff0c;表示相对优…

STM32F4XX - CAN设置

can协议部分 - 逻辑信号和电平信号 先贴上CAN信号在物理信号线上的查分信号表示形式 显性电平&#xff1a; 电压差范围为1.5-2.5v。 对应的逻辑电平是0 隐性电平&#xff1a; 其他 对应的逻辑电平是1 为什么显性电平对应的逻辑电平值为0&#xff0c;而隐性电平对应的逻辑电平…