UnityGameUpdater
No description available
Install / Use
/learn @wuxingogo/UnityGameUpdaterREADME
##这是GameUpdater的扩展程序
GameUpdater是Unity3D的一个非常好用的热更新插件.
他的思路是每次登陆游戏检查版本,如果和远程版本不同,则对比版本文件里需要更新的文件,然后逐个从远程服务器上更新bundle文件.
第一次Build Bundle到Resources路径下,然后每一次Build Bundle到AssetBundlePool路径下,Build的Bundle都是经过7Zip压缩和加密,所以Bundle文件会特别小,每次把版本信息记录在一个版本文件里.每次LoadBundle时解密解压缩.
##优势:
如果有10个版本的更新,则可以从当前版本直接更新到最新版本,而不必考虑各个版本的差异
##劣势: 如果版本更新文件较多则与远程服务器IO操作较多.
##BundleExtension
对此我在他的基础上写了BundleExtension,一样都是用7Zip压缩和加密. 但是每次Build的Bundle都是压缩到一个文件,每次从服务器更新时会把文件解包到临时文件夹下.
##优势
每个版本只下载一个文件,减少Client和Server的IO操作
##劣势
如果有10个版本更新,则必须从1版本到10版本逐个更新.对此最好有大版本更新,把最新的Bundle再次打入Resources下则即可.
##Note:
BundleExtension是基于我的插件WuxingogoExtension之上写的,如果觉着不需要WuxingogoExtension其他插件,则需要自己删除类,或者重构:)
WuxingogoExtension:
https://github.com/wuxingogo/WuxingogoExtension
##Note:
Unity5.x buildBundle会自动把依赖分好。prefab尤其重要,最好把模型(.fbx)和动画(.anim)都使用一个bundle。要不然两个相同的prefab会将这些都打入各自的bundle里,bundle巨大。如果打入公共bundle里则必须先加载公共bundle,否则资源丢失。还好Unity把依赖自己识别了,5.X很方便。
Contact: 52111314ly@sina.com
Related Skills
node-connect
340.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
340.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.1kCommit, push, and open a PR
