一、AssetBundle的解释
AssetBundle是一个压缩包,其中包含模型,贴图,预制体,声音甚至整个场景,可以在游戏运行时被加载
AssetBundle自身保存着互相的依赖关系,也就是说不同的包之间可以相互联系
压缩包可以使用LZMA和LZ4压缩算法,减少包的大小,更快的进行网络传输
可以把一些下载内容放在AssetBundle中,减少游戏安装包的大小
二、AssetBundle的构建和使用
1.在Asset文件夹中,将需要构建AB包的资源设置AssetBundle标签,标签组成为xxx/xxxa.xxx,后缀可以任意,不区分大小写
2.在Editor文件夹中创建脚本CreatABfiles,引入命名空间using unityEditor;写一个静态方法,方法内容为:
if (!Directory.Exists("AssetBundleFiles"))
{
Directory.CreateDirectory("AssetBundleFiles");
}
BuildPipeline.BuildAssetBundles("给出要打包的文件路径(AssetBundleFiles)",BuildAssetBundleOptions.None,BuildTarget.StandaloneWindows64);
然后可以通过[MenuItem("Assets/BuildAssetBundles")]扩展编辑器并增加了一个按钮,实现该方法的调用。
3.上传AB包到服务器
4.AB包的获取,关于AB包的获取有四个方法:
(1)AssetBundle.LoadFromMemonyAsync 从内存中加载
(2)AssetBundle.LoadFromFile从本地加载(当然还包括异步的方式)<