达内广州C++学院|c++培训|广州达内科技C++/C#培训|.NET培训|IT培训|达内广州岗顶中心 达内广州C++学院|c++培训|广州达内科技C++/C#培训|.NET培训|IT培训|达内广州岗顶中心
达内新闻
 当前位置:主页 > 达内新闻 >

运城游戏开发关于热更新机制的运行原理

时间:2019-06-12  来源:未知  作者:广州达内培训

对于游戏软件来说,游戏更新和打补丁可以说是非常常见的一种程序维护行为了,而今天我们就一起来了解一下,关于游戏开发中的热更新机制的一些基本知识。

运城游戏开发关于热更新机制的运行原理

Cocos Creator中的热更新机制是依赖与Cocos2D-x的AssetManager,这个功能在Cocos2D-x 3.0时发布,同时发布了Cocos2D-JS 3.0版本中也含有这个功能,之后在Cocos2D-x升级了这个功能,加入了多线程并发实现,之后又在Cocos Creator 1.4.0版本和Cocos2d-x v3.15中经过一次重大重构,系统性解决了热更新过程中的问题。

Cocos2D-JS的设计主要是针对Web平台发布游戏,所以需要考虑浏览器的缓存机制,服务器端保存了完整的一个Web页面内容,浏览器请求一个网页后,就会在浏览器缓存这个网页的资源,当浏览器重新请求这个网页时会查询服务器版本后的修改时间或者是标识,如果不同则下载新的文件来更新缓存,如果相同就使用缓存的文件。

对于市面上的手游,目前比较常有的热更新机制是补丁包机制,即每个版本对应上一个版本生成一个补丁包,每个版本对应一个版本号,在客户端保存一个当前资源的版本号,每次检测热更的时候先和服务器通讯,对比版本号,如果版本号落后于服务器版本号,就开始热更流程,否则正常进入游戏,更新流程就是按顺序下载版本差之间的一个或多个资源包,这样更新的问题是资源包如果由人工整理,很难确保不会出错,而有些项目也尝试使用git上的工具,动态对比资源文件夹下的资源,从而生成不同版本之间的虚拟资源文件包,然而由于不具有足够的灵活性和资源间的可拆解性,这种版本差异“打包”的方式终究不是一个完美的解决方案。

Cocos Creator所采用的更新基本流程是为每个文件制定一个版本号,这样当对比更新文件时,会以每个文件为单位判断是否需要更新,增加了灵活性。

它的更新的基本流程是:

客户端每次启动时发送请求和服务端版本进行比对获得差异列表。

如果差异列表为空,则直接进入游戏,否则从服务端下载所有新版本中有改动的资源文件。

用新下载的资源覆盖旧缓存以及应用包内的文件。

在这种设计思路下,所有资源文件以离散的方式保存在服务器端,更新时会以文件为单位进行更新检查和文件下载。

【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。




上一篇:设计师切图命名规范以及注意事项
下一篇:运城达内java培训常见的几种java修饰符与应用

友情链接:
  • 全球最大晶圆代工半导体制造厂,台积电斥资订购艾斯摩尔机器设备
  • 英特尔依然是那个英特尔,且看英特尔的城防体系
  • 支持双 DRAM 内存接口,慧荣企业级 SSD 主控方案披露
  • 在全球被反垄断罚款,冤!高通到底哪里得罪了欧盟?
  • 强强联合!万业、微电子所和芯鑫共同打造全新半导体设备
  • 复旦大学校长称:对于集成电路产业发展,大学应该主动担当
  • 技术再升级!无锡中科芯攻克晶圆级再布线及晶圆级凸点制备关键技
  • 聚力!万业企业设立集成电路装备集团,提供自主可控设备
  • 德州仪器C2000微控制器增强连通性和控制性
  • 英特尔打出降价策略,以免被竞争对手 AMD 打败?
  • 贸易摩擦的闹剧没有赢家,苹果有勇气离开中国吗?
  • 图像信号与视觉处理器的发展趋势
  • 真干快消品定位方案班(第二期)火热开班
  • Java集合 ArrayList原理及使用
  • TDD(测试驱动开发)死了吗?
  • JAVA基础之XML相关
  • javaweb项目搭建ehcache缓存系统
  • 每日一码——字符串统计
  • 一篇文章帮你彻底搞清楚“I/O多路复用”和“异步I/O”的前世今生
  • 九:模板方法模式
  • 十二:命令模式(人员解耦和)
  • Java 转PPT为图片、PDF、SVG、XPS、ODP以及PPT和PPTX互转
  • SpringCloud学习(SPRINGCLOUD微服务实战)一
  • 记一次微信网页授权后获取用户信息并重定向
  • 速途新营销五点实战洞察解码“品效合一”
  • 十一:外观模式详解(Service,action与dao)
  • 手把手教你学会 基于JWT的单点登录
  • mysql锁机制总结,以及优化建议
  • 解决多个版本jar包冲突【jar内包名重命名】
  • 中国首张5G终端电信设备进网许可证 华为Mate 20 X 5G版入网
  • RPC之Thrift
  • 高级Java工程师必备 ----
  • 天猫618期间实物支付GMV增长38.5%
  • 换季了,老板你的库存处理好了吗?
  • 从“618”大数据看中国消费新活力
  • 小米生态链:贵在格局感与收放度
  • CODING 2.0 企业级持续交付解决方案
  • 老铁奇趴“新京济” 快手*京东618战报出炉
  • 中小企业新媒体运营基本技能
  • 上汽大通房车再度携手LINE FRIENDS 魔都巡游顺利开启
  • 华为高端手机国内市场份额超苹果夺得榜首
  • 中国智能制造分析报告
  • iPlus艾加营销助力腾讯广告牵手吴晓波 推进商业IP变现
  • 2019世界新能源汽车大会7月1日将在海南举行
  • 区域酒企如何转型突围
  • 时时彩论坛
  • 五星体育斯诺克
  • 北单比分直播
  • 河北11选5走势图
  • 福建体彩36选7开奖结果
  • 九龙图库下载