2019-02-11 15:34:11 qq_43650522 阅读数 8704
  • 热更新框架设计之客户端热更框架(中部)视频课程

    热更新框架设计系列课程总体介绍:         本系列课程由《热更新框架设计之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..... 等版本基本没有影响。 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    71 人正在学习 去看看 刘国柱

当下中国游戏行业以飞快的速度在发展着,游戏用户也越来越趋年轻化,数量也在飞快上涨,而市场上的游戏开发人才是严重不足的。因此,有很多人选择自学unity3d加入到这个行业中来。
大家在进行选择的时候,一定要看是老师教得细心不细心。这里面有一个行业常识,业内为了保证教学质量,每个机构的课程都是有一帮大牛研发的,教课的老师也是按照这个讲的,个人能够发挥的有限,所以细心不细心,负不负责任就很重要了。在这里插入图片描述
线下培训价格要贵不少,主要是有老师盯着,有同学陪着,能够更快的进入学习的状态,有更充足的斗志。
最后说一句,大家作为成年人,一旦选择之后希望都能够坚持学完,可能选择之后不是很满意,但是要有成年人的担当,自己选的路,跪着也要走完,另外可以很负责任地告诉你学完之后肯定比不学强很多。
从小到大,你应该玩过很多游戏,比如都市飙车GT改装版、中国象棋精品版、跑跑卡丁车2012典藏、植物大战僵尸、仙侠情缘传、机甲风暴MAX、武魂、保卫萝卜2中文版、小鳄鱼爱洗澡、三国演义:加强版,还有最先人们喜欢的俄罗斯方块等等,数不胜数。
对于很多朋友来说,为了游戏完全可以废寝忘食。但不管你是不是游戏狂,日常中总是玩过大大小小的游戏,游戏在我们的生活当中还是占据着相当重要的一个部分。游戏无论是过去,还是现在,甚至在将来,都是一个人们离不开的娱乐方式。
因此,我们也不难判断:unity3d游戏开发行业也会愈发火爆~未来会有越来越多的人加入到这个行业中来。据统计,游戏开发工程师平均月薪13000+。未来几年,在多种因素的影响下,预计中国游戏市场研发人员的薪资将继续上涨。
希望对大家有所启发~

2019-08-22 13:56:31 qq_34229678 阅读数 638
  • 热更新框架设计之客户端热更框架(中部)视频课程

    热更新框架设计系列课程总体介绍:         本系列课程由《热更新框架设计之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..... 等版本基本没有影响。 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    71 人正在学习 去看看 刘国柱

Unity3D UGUI修改Layer层级让摄像机看不到UI

最近测试才发现,改变UI自身的Layer层是无法让摄像机屏蔽UI的,不过可以通过改变其 Canvas(画布)的Layer层来影响摄像机。

2019-03-15 02:38:30 ww1351646544 阅读数 809
  • 热更新框架设计之客户端热更框架(中部)视频课程

    热更新框架设计系列课程总体介绍:         本系列课程由《热更新框架设计之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..... 等版本基本没有影响。 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    71 人正在学习 去看看 刘国柱

最近准备一个人跑一遍制作一个3D游戏的全过程,体验一下所有岗位的工作,在这里把我遇到的问题和解决方案分享给大家,也帮助自己回忆。

3DMax建模

看了一下建模的教程觉,看的时候觉得蛮简单的。真到自己做的时候才知道难呀~具体细节就不讲了这里就讲讲坑吧。
在这里插入图片描述
拉线拉了三个小时最后出了这个玩意。呵呵…还不错.!
第一个问题就是线特别不好拉,模型同学不容易呀…
尺寸问题
修改到合适尺寸,不然到了unity会看不到。
在这里插入图片描述
面数问题
菜单栏:文件>>摘要信息
我去…我这面数,看来得狠狠的来一波优化了。
在这里插入图片描述

蒙皮部分

所畏蒙皮就是把这些模型贴在骨骼上。
这能拉个骨骼出来,然后要把他和人物对好。
在这里插入图片描述
骨骼一定要对好
人物骨骼一定,一定,一定要对好,重要的事情说三个。
无论是位置,大小,粗细。因为每一节骨骼都有他的作用范围。
形体模式要打开才能改变骨骼局部大小。
在这里插入图片描述
在这里插入图片描述
选中物体添加蒙皮:
我这里用的是自带的蒙皮,但是也觉得很强大了。

在这里插入图片描述
选择"添加"把骨骼全部添加进来
在这里插入图片描述
如果你对的好基本上就能直接用了,一开始我以为粗细没有关系,坑了半天。
如果没有对好可以用下面这俩工具调整一下,个人觉得手绘权重比较好玩。有兴趣大家可以试试试
在这里插入图片描述
选中某个骨骼就可以绘制他的作用权重了,越红影响越大。
蓝色圈圈是绘画区域,橙色是骨骼的作用区域。
在这里插入图片描述

动画部分

制作动画需要打开两个位置一个是右下角的
在这里插入图片描述
然后选择骨骼,关掉形体模式,
点击设置关键帧,然后把时间轴移到别的位置。
修改动作再点设置关键帧。
在这里插入图片描述
做完动作以后导出成FBX文件,切记不要用中文名字!
在这里插入图片描述
然后把文件拖进Unity里面
在这里插入图片描述
把他拖到场景里,需要为其添加动画控制器Animator,然后把动画片段拖给它即可。
目前为止还没有添加贴图和材质,后面我装持续更新遇到的坑。

2018-09-02 14:23:02 re_psyche 阅读数 3033
  • 热更新框架设计之客户端热更框架(中部)视频课程

    热更新框架设计系列课程总体介绍:         本系列课程由《热更新框架设计之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..... 等版本基本没有影响。 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    71 人正在学习 去看看 刘国柱

大多数游戏都是使用Unity 3D做的,我们逆向分析主要分析\assets\bin\Data\Managed中的Assembly-CSharp.dll文件,当我们用.NET Reflector 或者dnSpy 打开Assembly-CSharp.dll文件时,有时候会发现什么信息也看不到,在前面呢有一个红色的x证明被加密了。但是我们在模拟器或者手机上运行时,却能完美运行。

这里写图片描述

也就是说,我们也可以在apk运行时使用一些修改器,将他的内存提取出来,然后再用工具(get_dll_from_dumped_bin.exe)将这些bin文件转换为dll文件。(发现已经有人把工具上传了,就不挂链接了)。我找到了一款被加密U3D游戏,我们在他正常运行时,用gameguardian(https://gameguardian.net/download)导出他的内存。
这里写图片描述

导出以后,我们把这些bin文件传到PC上,然后将这些bin文件与get_dll_from_dumped_bin.exe放在同一目录下,运行get_dll_from_dumped_bin.exe后,即可自动转化。

这里写图片描述

这里会看到有9个dll文件,这个时候我们就可以将文件大小与我们在apk中的dll文件作对比,即可找到正确的dll文件。

2013-08-21 18:37:07 kfqcome 阅读数 32589
  • 热更新框架设计之客户端热更框架(中部)视频课程

    热更新框架设计系列课程总体介绍:         本系列课程由《热更新框架设计之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..... 等版本基本没有影响。 一、热更新系列(技术含量:中高级): A:《lua热更新技术中级篇》 https://edu.csdn.net/course/detail/27087 B:《热更新框架设计之Xlua基础视频课程》 https://edu.csdn.net/course/detail/27110 C:《热更新框架设计之热更流程与热补丁技术》 https://edu.csdn.net/course/detail/27118 D:《热更新框架设计之客户端热更框架(上)》 https://edu.csdn.net/course/detail/27132 E:《热更新框架设计之客户端热更框架(中)》 https://edu.csdn.net/course/detail/27135 F:《热更新框架设计之客户端热更框架(下)》 https://edu.csdn.net/course/detail/27136 二:框架设计系列(技术含量:中级):  A:《游戏UI界面框架设计系列视频课程》 https://edu.csdn.net/course/detail/27142 B:《Unity客户端框架设计PureMVC篇视频课程(上)》 https://edu.csdn.net/course/detail/27172 C:《Unity客户端框架设计PureMVC篇视频课程(下)》 https://edu.csdn.net/course/detail/27173 D:《AssetBundle框架设计_框架篇视频课程》 https://edu.csdn.net/course/detail/27169 三、Unity脚本从入门到精通(技术含量:初级) A:《C# For Unity系列之入门篇》 https://edu.csdn.net/course/detail/4560 B:《C# For Unity系列之基础篇》 https://edu.csdn.net/course/detail/4595 C: 《C# For Unity系列之中级篇》 https://edu.csdn.net/course/detail/24422 D:《C# For Unity系列之进阶篇》 https://edu.csdn.net/course/detail/24465 四、虚拟现实(VR)与增强现实(AR):(技术含量:初级) A:《虚拟现实之汽车仿真模拟系统 》 https://edu.csdn.net/course/detail/26618 五、Unity基础课程系列(技术含量:初级)  A:《台球游戏与FlappyBirds—Unity快速入门系列视频课程(第1部)》   https://edu.csdn.net/course/detail/24643 B:《太空射击与移动端发布技术-Unity快速入门系列视频课程(第2部)》 https://edu.csdn.net/course/detail/24645  C:《Unity ECS(二) 小试牛刀》 https://edu.csdn.net/course/detail/27096 六、Unity ARPG课程(技术含量:初中级): A:《MMOARPG地下守护神_单机版实战视频课程(上部)》 https://edu.csdn.net/course/detail/24965 B:《MMOARPG地下守护神_单机版实战视频课程(中部)》 https://edu.csdn.net/course/detail/24968 C:《MMOARPG地下守护神_单机版实战视频课程(下部)》 https://edu.csdn.net/course/detail/24979

    71 人正在学习 去看看 刘国柱

主要来自unity3d reference再加上一些自己的理解

一 概述

摄像头是用于将世界场景投影到屏幕的设备。可以在场景中放置不限数目的摄像机,它们可以设定成任意的渲染次序,渲染到屏幕上的任意地方。

摄像机实质上是用于将游戏显示给玩家看,它们可以被定制,在上面写脚本或者挂载到其他物体上面以获得想象中的各种效果。对于一个猜谜的游戏,可能只需对游戏的全部视图保持摄像机静止即可。对于第一人称的射击游戏,常会将摄像机挂载到玩家角色上面,将其放置在角色眼睛的高度。对于一个赛车游戏,可能会让摄像机跟随赛车。

可以创建多个摄像机,然后为每一个赋予一个不同的深度值。摄像机是从低深度值到高深度值的次序进行绘制,一个深度值为2的摄像机将会在深度值为1的摄像机绘制之后再绘制。同时可以调整Normalized View Port Rect属性来调整摄像机视图在屏幕上的位置大小,使用这个可以创建多个迷你视图。


二 属性

1 clear flags

确定屏幕的哪一部分将被清除。

每个摄像机在渲染它视图的时候都会缓存颜色和深度信息。绘制出来的图像中那部分没有被绘制到的部分是空白的,默认的情况下会显示天空盒的颜色。

当使用多个摄像机的时候,每个都在缓存中存放了它自己的颜色和深度信息,在每个相机渲染的时候会累积更多的数据。在场景中任何特定的摄像机渲染其视图的时候,可以指定清除标志来清除缓存信息中的不同部分。可选项有sky box,solid color,depth only和dont clear。


<1> Skybox

这是清除标志的默认设置。屏幕的任何空白部分都会显示摄像机的天空盒,如何当前摄像机没有设定天空盒,它会默认使用渲染设置中(Eidt->Render Settings)的天空盒。假如默认渲染设置中也没有设定天空盒,它会退而使用背景色。可以选择是否将一个天空盒组件添加到摄像机。

<2> Solid Color

屏幕的任何空白部分都会显示当前摄像机的背景色

<3> Depth Only

如果想要绘制一个玩家的枪而不让它在环境中不被裁剪,可以设定一个深度为0的相机来绘制环境,同时另一个深度为1的相机单独绘制这个武器。武器相机的清除标志应该设置成Depth Only。这会保持环境的图形显示在屏幕上,但是丢弃所有关于每个对象处于3D空间什么位置的信息。当枪被绘制的时候,被绘制出来的不透明部分会完全覆盖现有的被绘制的环境图像,而不管枪离墙壁多近。


为相机使用Depth Only作为清除标志,会使相机仅仅根据相机的深度信息来输出画面,比如相机深度为N的清除标志设为Depth only,那么它的输出会直接覆盖在所有深度小于N的相机输出画面上,而不管在真实的3D环境中,各种对象的z值如何

<4> Don’t clear

这个模式下不会清除颜色和深度缓存。这会导致下一帧会在上一帧的结果上进行绘制,这个模式在游戏中用得少,一般用于常规的shader中。

不清除的话不过一会屏幕所有的空白区域都会被填满,完全看不出是什么东西。


2 Background

在没有天空盒的时候,当所有的元素绘制完成后剩余屏幕的颜色,即那些没有被元素绘制到的屏幕区域显示的颜色


3 Culling Mask

用于来设定是否剔除处于某一层的对象。Unity场景中的每一个对象,都被分配了一个层,默认为“default”层。打开层级管理器可以看到初始状态下分配了8个层,即0-7层是已经被U3D使用,而”default”处于第0层。



摄像机的Culling Mask的可选项就是这些被使用的层,外加两个完全选项Everthing和Nothing,摄像机Culling Mask的默认选择是Everything,即不剔除任何层,这个时候所有的层也都被选中,如下图


假如现在要隐藏处于Background Image层的对象,只需在该列表中取消勾选Background Image即可。


4 Projection

摄像机的投影方式,有透视投影和正交投影两种。

正交投影:投影线垂直于投影面,也叫平行投影


将摄像机设成正交投影,可以看到它变成了一个立方体



5 Size

当摄像机设成正交投影时,摄像机对应的那个长方体的大小


6 Field of view

视角,透视投影时才有的特性。视角越大,能看到的视野也越大,对应的焦距也越短


7 Clipping Planes

裁剪平面,Near和Far指定了裁剪的区域范围,即在Near-Far范围之内的面将被裁剪掉,不进行渲染。

远近裁剪平面和由Field Of view决定的平面一起构成一个椎体,被称为相机椎体或视椎体,完全处于该椎体之外的物体将会被剔除,这被称为椎体剔除。

8 Normalized viewport rect

指定如何将摄像机的视图绘制到屏幕坐标系上(取值范围为0-1)

X:摄像机视图在屏幕上被绘制的水平初始位置

Y:摄像机视图在屏幕上被绘制的垂直初始位置

W:摄像机视图输出图像占屏幕宽度的比例

H:摄像机视图输出图像占屏幕高度的比例

U3D屏幕的坐标系是以左下角为坐标原点,向右为X轴,向上为Y轴


9 Depth

摄像机在绘制序列中的位置(层级)。有更大深度值的摄像机将会在深度值更小的摄像机上面绘制,即假如两个相机C1和C2,深度值分别为10和8,假如将摄像机设为在场景中可见,则C1会在C2的上层绘制,会把摄像机C2也绘制到图像中


10 Rendering Path

用于指定摄像机使用哪种渲染方法,有下面几种

  • Use Player Settings,摄像机会使用在玩家配置里面指定的渲染路径

  • Vertex Lit,所有被该摄像机渲染的对象都会被渲染成Vertex-Lit对象

  • Forward,所有的对象都会被渲染为一个材质对应一个通道

  • Deferred Lighting,所有的对象在没有光照的情况下绘制一次,然后在渲染队列的末端将所有对象的光照一起绘制,也就是所谓的“延迟光照”技术。


11 Target Texture

可以用于容纳摄像机视图输出的Render Texture对象的引用,设定这个引用将会禁止摄像机将视图绘制到屏幕


12 HDR

启用摄像机的高动态范围渲染(High Dynamic Range Rendering)



三 示例

示例:在屏幕上显示一个2D背景图

做法如下,来自这里

  • 创建一个新的摄像机,取名为”Background Camera”

  • 创建一个新的GUI贴图,取名为”Background Image”

  • 单击Background Image的监视器面板的”Layer”下拉按钮,创建一个新的层,取名为”Background Image”

  • 设置好贴图Background Image的大小和位置,同时将它的层设定为“Background Image”

  • 选中Background Camera,对它的一些属性进行这样的操作:取消勾选Flare Layer和Audio Listener,设定清除标志为Solid Color,设定深度为-1,先将Culling Mask设为nothing,然后设为Background Image

  • 选中主摄像机,设置清除标志为Depth Only,将它的Culling Mask里面的Background Image取消勾选

到此为止,即设定了一个屏幕的背景贴图。这里先将背景相机的清除标志设置为Solid Color,那么该相机绘图后的空白区域就会填充背景色,让后通过设置Culling Mask使其仅仅显示层”Background Image”,也就是说背景摄像机仅仅绘制背景贴图,空白部分用背景色填充。然后主摄像机设置Culling Mask使其不绘制背景贴图,并且将清除标志设置成Depth Only,因为背景相机的深度为-1,那么主相机的深度就为0,背景相机先进行绘制,然后主相机进行绘制,主相机绘制出来的不透明的部分会完全覆盖在前面层级相机的图像上,也就是说主相机的绘制结果会直接覆盖到背景贴图上,这就达到了屏幕背景贴图的效果。


假如要进行满屏显示的话,手动调整背景图的大小显然是不实际的,应该使用代码

backgroundGUITexture.pixelInset.width = Screen.width;

backgroundGUITexture.pixelInset.height = Screen.height;

backgroundGUITexture.pixelInset.x = 0;

backgroundGUITexture.pixelInset.y = 0;

但是由于程序运行的时候可能分辨率会发生改变,所以前面的两句应该设置成和分辨率相关的大小

backgroundGUITexture.pixelInset.width = Screen.currentResolution.width;

backgroundGUITexture.pixelInset.height = Screen.currentResolution.height;


没有更多推荐了,返回首页