概念
AssetBundle简称AB包
AssetBundle是Unity引擎提供的一种资源打包方式,可以对除了C#脚本外的任何资源进行打包压缩处理。
如果想在Unity平台实现Lua热更新,Assetbundle技术是无法跳过的知识点,在unity平台我们进行热更新下来的资源都是需要事先进行Assetbundle打包处理的。
特定于平台的资产压缩包,有点类似于压缩文件
资产包括:模型、贴图、预设体、音效、材质球等
作用
1、相对于Resources下的资源,AB包可以更好地管理资源,更灵活方便,更易于做热更新相关工作
- Resources只能用Resources.Load方法加载,这就显得比较死板
unity动态加载场景Resources.Load方法https://www.cnblogs.com/soviby/p/10013351.html - AB包就显得比较灵活,首先AB包我们可以通过网络去下载,也可以从本地自动打包出去,放在特定的文件夹下
2、减小包体大小
1、压缩资源
2、减少初始包大小
举个例子
AB包都放在远程服务器上
用户下的安装包内只有一部分的默认资源
等到网络更新的时候再去下剩下一些额外的资源,甚至可以分批去下
3、热更新
AB包是热更新的基础
1、资源热更新
替换模型、贴图
2、脚本热更新
主要用来更新Lua脚本