一、4.X系列
[ExcludeFromDocs]
//打包Assetbundle的函数,assetBundleOptions这个选项中你可已设置加载依赖项也可以选择不加载.
1、打包
没有Manifest文件
public static bool BuildAssetBundle(UnityEngine.Object mainAsset, UnityEngine.Object[] assets, string pathName, BuildAssetBundleOptions assetBundleOptions);
不加载依赖项。实例化的物体材质会丢失.
2、加载
string _Url = "file:///" +Application.streamingAssetsPath + "/"+"Cube" + ".unity3d";
WWW www = new WWW(_Url);
yield return www;
if ( www.error!=null)
{
yield break;
}
m_a = www.assetBundle;
场景可以通过Assetbudle加载,不用经过BuildSetting,这样节省了很多内存。
3、卸载
ad.Unload()
xml表这些资源文件的卸载是在热更后,
模型文件的不会卸载,
场景文件的卸载是在加载完之后立即卸载。
4、单独讲一下场景加载
场景加载是指 A切到B ,先跳到进度条场景,在进度条场景完成资源的卸载以及GC回收,然后跳到B。
下面是demo