GameFramework篇:StarForce资源热更新讲解(二:具体操作步骤)
上篇我们讲解了基本的实现流程,那么本篇我们来谈谈实际操作,从零开始一步步配置
先来捋一遍思路
首先,Full目录下的资源是Unity打出来的AssetBundle经过加密(如果选择了Load from memory and Decrypt或quick Decrypt)和Zip压缩(如果选择了Zip压缩)后,加上资源的hashcode在加上了一个dat后缀生成的。其中version.dat中记录了每个AssetBundle的原始大小,原始HashCode,压缩成Zip后的大小及Zip包的HashCode,你本地的AssetBundle的HashCode与服务器上的进行对比,如果不一致就需要更新,Zip包的HashCode是干啥的呢,因为你从服务器上下的资源是Zip压缩后的,资源下载下来后,需要计算你下载下来的这个资源的HashCode与服务器上这个资源的ZipHashCode做一个对比,不一致就说明你下载出错了,这个资源不能用。然后解压后,也需要将解压后计算得到的HashCode与服务器上的对比,ZipHashCode和解压后的HashCode都一致这个AssetBundle才能用。
version.hashcode.dat这个文件是放在服务器上的,做资源更新时,你首先就好获取这个文件,那么这个文件你怎么校验呢,这就到了GameResourceVersion_0_1_0.xml这个文件,里面记录了最新资源的版本号,以及你的version.hashcode.dat这个文件的特征值。
GameEntry.Config.BuildInfo.CheckVersionUrl是在Assets\GameMain\Configs\BuildInfo.txt中设置的,CheckVersionUrl指向版本信息配置表version.txt,是由GameResourceVersion_0_1_0.xml来的,于是乎我们也创建这样一个version.txt放到我们自己的服务器上。
因为这个文件的URL是从Assets\GameMain\Configs\BuildInfo.txt中获取的,所以这个文件也要改,把CheckVersionUrl指向你自己服务器上的version.txt。
具体操作
1.打AB包,比当前版本高一版本即可(默认为1,但是我打过一次了,所以当前版本为2,所以我要打版本为3的AB包)
2.添加AB文件到HFS
4.配置文件
新建version.txt文件,注意VersionListLength,VersionListHashCode,VersionListZipLength,VersionZipHashCode要对上GameResourceVersion_0_1_0.xml的数值
拖到HFS
更改BuildInfo.txt,关键是CheckVersionUrl要配置好,其余的随意
这是下载资源的地址
OK,运行游戏
参考:QQ:471812771(李春)
GameFramework篇:StarForce资源热更新讲解(二:具体操作步骤)相关推荐
- GameFramework篇:StarForce资源热更新讲解(一:基本流程)
准备工作: StarForce dev/Update分支 https://github.com/EllanJiang/StarForce/tree/dev/Update 注意下载子库 ...
- Addressable资源热更新疑问
1)Addressable资源热更新疑问 2)如何解决远处网格线会花的问题 3)关于着色器中某些特殊图片的用途 4)Lightmap在内存中有重复加载 5)Unity Job System问题 这是 ...
- 【Unity3D】基于AssetBundle实现资源热更新
1 前言 Unity3D 本地资源一般放在 Resources 目录下,但是 Resouces 文件夹的大小不能超过 2G,使用 AssetBundle 管理资源可以解决 Resources 文件夹受 ...
- 关于uni-app的资源热更新!!!
先看官方文档,对uni-app 的资源热更新有一个大致的了解: 整包升级 在线资源热更新 app方法 本文主要讲述,实现资源热更新时客户端需要进行的操作: 可以在***app.vue***的***on ...
- xLua热更新(二)实现热更新
一.环境配置 要实现热更新功能,我们首先需要开启热更新的宏.操作方法是在「File->Build Settings->Player Settings->Player->Othe ...
- 《天涯明月刀》游戏资源热更新解决方案
天刀在韩国化的过程中,韩方对天刀的游戏内商城功能提出了一系列的适应他们本土运营习惯的商业化改造需求,其中最重要的基础功能修改就是需要商城能够支持不停服修改商品内容或上下架商品,包含新增未事先打进版本配 ...
- [unity3d]手游资源热更新策略探讨
原地址:http://blog.csdn.net/dingxiaowei2013/article/details/20079683 我们学习了如何将资源进行打包.这次就可以用上场了,我们来探讨一下手游 ...
- Unity资源热更新
通过把StreamingAssets文件夹下的本地的资源MD5列表文件复制到persistentDataPath文件夹下和服务器上的进行对比,把有变化的资源更新替换到本地persistentDataP ...
- pcs增加mysql资源_PCS命令配置corosyncpacemaker群集操作步骤.doc
PCS命令配置corosync PCS命令配置corosync&pacemaker群集操作步骤使用pcs shell配置corosync & pacemaker群集 Pacemaker ...
最新文章
- Window10 VS17下 Opencv3.4.5配置
- php智能客服,智能客服系统
- 独家 | 使用机器学习加速对非结构化数据的查询-第1部分(使用BlazeIt加速聚合和限制查询)...
- mqtt 获取所有topic_MQTT协议解析
- DL之LSTM之MvP:基于TF利用LSTM基于DIY时间训练csv文件数据预测后100个数据(多值预测)状态
- linux5.8不能上网,Ubuntu 8.04不能上网的问题的解决方法
- ruby中的回调方法和钩子方法
- tomcat.apache startup.bat闪退两种解决方法
- 汇编语言---函数调用栈
- 接待员如何向客人upsell_如何提升自我做好客户服务与管理?
- 使用gogs搭建git私有仓库
- 浏览器渲染页面的原理及流程---------重绘与重排(回流)--优化
- Ubuntu 14.04 开机手动开启numlock led
- java确定随机数组的范围_Java程序以生成一定范围内的随机数数组并获取最小值和最大值...
- setuna软件使用问题:Win10(专业版)在使用setuna时,启动快捷键(Ctrl+A)截屏后屏幕会放大
- php168 discuz论坛贴子调用设置,Z-blog调用Discuz论坛最新帖子的方法
- 数字后端基本技能之:绕线Congestion怎么解?
- Hive相关(概述、环境搭建、命令、API、JDBC、HBase整合等)
- [JMeter性能测试实战]之先从搭建测试环境开始
- 即食花胶的功效与作用 即食花胶怎么吃?