游戏项目中的热更新机制

🗨️字数统计=2.3k字 ⏳阅读时长≈8分钟

项目中的热更新机制

热更新技术是指可以在不关闭游戏客户端的情况下,动态的更新游戏本身的资源。类似的服务器硬盘的“热插拔”。

目前市面上的绝大部分游戏客户端都启用了热更新技术,热更新的好处是玩家不必重新下载完整的安装包也能体验到官方的新版本资料片,减少了用户流失。

项目中安卓系统与苹果系统在热更新的机制上有一个明显的差异:苹果系统不能热更C#代码。

同样都可以进行热更新的是:AssetBundle(prefab预制体和UI界面图集等)、Table(文本,项目中的excel表格转成的二进制文件)、Lua(Lua脚本语言)、Mapfile(场景地图文件,关卡编辑器生成,项目中独有的)。

通过校验本地文件的MD5与拉取到的MD5是否一样来进行热更。

查看更多

分享到

上帝掷骰子吗?(一)

🗨️字数统计=1.4k字 ⏳阅读时长≈4分钟

回归到搭建这篇博客的初衷,我要开始写下一些关于量子物理的有趣的事情。

物理学的黄金时代

一些关于在确立量子物理这个时代主题之前的事情,这个“之前”,就要从19世纪末说起了。那是物理学的黄金时代,那时还在争论光的本质到底是什么、一个科学与神共存的时代。

在那个时代,关于光的本质的问题,物理学上的大佬们喋喋不休的争论了前后几百年。两个主要派系分别主导着这场没有硝烟的战争:微粒派和波动派。

在微粒派和波动派彻底成形之前,远古以来,对于光的猜测一直没有停歇。

查看更多

分享到

3D游戏引擎初探(三)

🗨️字数统计=789字 ⏳阅读时长≈2分钟

数学相关知识

在3D游戏引擎中会涉及到数学的相关知识,具体可以划分到线性代数:向量、矩阵、齐次坐标系、四元数。

向量

假设大家都已经对向量最基本的加法、减法、点乘、叉乘、单位化都是有了解的,简单介绍一下这些基础计算在游戏引擎中是如何应用的。

查看更多

分享到

3D游戏引擎初探(二)

🗨️字数统计=1.4k字 ⏳阅读时长≈4分钟

3D游戏引擎架构

最底层

渲染模块的图形库接口。目前游戏引擎最常用的渲染模块是微软的DirectX库或者开源跨平台的OPENGL和OPENGLES图形库。项目中使用的是Windows的GDI接口,只针对Windows操作系统。

中间层

封装好的3D游戏引擎,可以理解为功能的控制模块。可细分为:声音模块、渲染模块、图形系统、UI系统、特效系统、管理系统、物理系统、数据系统、输入系统、内存管理。

最上层

游戏开发人员所用到的游戏逻辑,一般情况下是调用引擎封装好的接口编写游戏所需要的逻辑。

查看更多

分享到

3D游戏引擎初探(一)

🗨️字数统计=466字 ⏳阅读时长≈1分钟

前阵子,我用C++编写的3D游戏引擎成功的运行了一个小游戏demo,在此将会分享我的学习与搭建历程。

该3D引擎是跟着书籍《手把手教你架构3D游戏引擎》学习搭建的,由浅入深的讲解以及范例,令我受益匪浅。

介绍

底层运用c++编写,图形接口为GDI(windows下的图形接口,不可跨平台。),模型材质运用的3D max制作,用通用的shader语法解析模型,渲染管线的一些列流程利用了矩阵的数学知识。

项目结构分为三部分:ECore核心模块,EEngine功能模块,EGame游戏模块。

查看更多

分享到

博客建站

🗨️字数统计=1.6k字 ⏳阅读时长≈6分钟

特别鸣谢

匠心零度:看了匠心零度的博客,我才下定决心要做一个自己的博客,理由太充分了。

小茗同学:博客的建立,基础的工作都是按照小茗同学的教程来做的,很详细。

徐靖峰:最终的博客主题确定为徐靖峰的博客主题,联系上后告知了相关主题以及主题出处

最终效果

AaronYard:https://aaronyard.github.io/

欢迎各位来到我的博客考察~👏👏👏

查看更多

分享到

我的个人博客开通啦

🗨️字数统计=838字 ⏳阅读时长≈2分钟

欢迎您来到我的 个人博客!点击此处进入我的GitHub个人账户。

虽说大学期间有为学院写过一个学院网站,但是懵懵懂懂,并不知道从搭建一个网站到可以外网访问的完整流程。所以从某种意义上来讲,这是我第一次搭建完成一个完整的网站,我将它作为我的个人博客(容我小得瑟一下,嘻嘻),此博客是基于Hexo与Git生成的网站,之后有时间了我会写一篇详细的搭建教程供各位参考。

查看更多

分享到