掌握基于lua语言的框架设计基础、理论、开发实践等技能
成为一名优秀的游戏框架设计师!
你将收获
掌握基于lua语言的框架设计基础、理论、开发实践等技能
成为一名优秀的游戏框架设计师!
适用人群
课程介绍
热更新框架设计系列课程总体介绍:
本系列课程由《热更新框架设计之Xlua基础》、《热更新框架设计之热更流程与热补丁技术》、《热更新框架设计之游戏客户端框架》三套课程组成。 三套课程是一个不可分割有机的整体,笔者带领大家由浅入深逐级深入 ,领悟热更精髓的基础之上,通过高端架构设计设计出“低耦合”、“低侵入”、“高复用”性的游戏(VR/AR)客户端热更框架。
《热更新框架设计之客户端热更框架》课程介绍:
本作是热更框架系列课程中的客户端框架设计与实现部分。理解本作需要之前的所有知识点积累,在其基础之上给学员展现当今商业热更框架中,商业级热更框架的基本原理、设计全过程、实现框架产品等全过程。通过本作学习可以让资深开发人员晋升为游戏架构师、主程、技术总监等职位。
为了更好更快的服务广大学员,本课程分为上、中、下三部分,内容如下:
上部:
UI框架与AB框架整合,重构整合为 “热更新UI框架”。
中部:
“热更新UI框架”与热更流程技术重构整合。
纯Lua框架设计理念与实现。
下部:
复合型热更框架设计与实现。
框架产品加入HotFix功能模块,且功能演示与测试完善。
《热更新框架设计之客户端热更框架(中部)》课程介绍:
热更客户端中部,主要就两大部分进行讲解:
第一部分: “热更新UI框架”与热更流程技术重构整合
这部分“热更新流程实现脚本”与之前的UI框架、AB框架进行无缝的重构与整合进行开发。
这里涉及到很多地方的重构与处理:
1: Unity编辑器脚本中的"创建校验文件"、"拷贝资源文件"等的重构。
2: 由于单机版本框架所使用的Resources 目录被彻底取消,所以整个框架中,凡是涉及到Resources的编码部分,均要进行深入加工与修改,例如: ConfigManagerByJson.cs、UIManager.cs、SysDefine、Log、LauguageMgr等。
第二部分: “纯lua框架”整体设计与实现:
本部分是中部课程的核心,也是整个热更新框架的核心部分!
我们需要对商业项目中,业务功能面临经常频繁改动的部分,设计一套可复用、灵活、可扩展、高效率执行的lua框架系统。本框架系统,我们整体考虑采用类似MVC的“分层”结构进行整体架构设计,然后配之以Xlua技术,实现C#脚本与同名lua脚本之间的一对一映射关系。 这样可以使得每个3D/2D的预设对象,自动映射(预设)同名的一个"lua控制"脚本与一个“lua显示”脚本。
这里的“lua控制”脚本负责加载从服务器端传来的AB(AssetBundle)包资源,以及解析与显示AB包中的资源预设等。这些均为玩家所看不到的部分,所以都定义在控制层的lua脚本中。
对于需要显示的3D/2D 预设资源,我们使用“lua显示”脚本,控制显示的方式、内容与行为(包含事件注册)等。而本部分我们采用了xlua的映射技术,也使得“lua显示”脚本具备了Unity的常用生命周期函数,进一步大大简化了lua编写业务的难度,例如常见的:Awake()、Start()、Update()、OnDestroy()等。具体lua的架构设计如下图所示:
温馨提示:
1: 本套课程需要具备一定的框架理解与驾驭能力,为了更好的理解本作,强烈推荐广大学员首先学完必要的前导课程:“UI客户端框架设计”、“AssetBundle 框架设计”、“lua基础与中级篇”、以及本课程热更新框架的前两部(Xlua基础、热更流程与热补丁)。
2: 本课程使用Unity2017版本讲解,但是本课程主要讲解开发思想与具体实现技术,所以对Unity版本不敏感。 学员使用后续的Unity2018/19/2020..... 等版本基本没有影响。
课程目录