下载AB包:AssetBundle.LoadFromFile及其Async异步 、AssetBundle.LoadFromMemory及其异步
加载AB包中资源:AssetBundle.LoadAsset以及AssetBundle.LoadAllAsset
卸载:
Resources.UnloadAsset(Object assetToUnload)卸载指定的asset
Resources.UnloadUnusedAssets:卸载全部未被引用的asset,能够在画面切换时调用,或定时调用释放全局未使用资源;
---------------------------------
AssetBundle.Unload(false):卸载AssetBundle的压缩文件数据(文件内存映像)。
AssetBundle.Unload(true):卸载AssetBundle文件内存映像,而且释放全部已载入的asset。假设asset在场景中被引用,会丢失;
-------------------------------------------------------------||---------------------------------------------------------------
①先比对服务器和本地的MD5文件,进行差异性更新。
②如果不同,则获取AssetBundleManifest文件,再根据该文件GetAllDepencies获取所有包依赖信息即需加载的AB包信息
③加载单个AB包 ------加载完存放起来后,记得释放包资源,ab.Unload(false);
ab = www.assetBundle;//异步 记得释放www资源,www.Dispose();
ab = AssetBundle.LoadFromFile(path);//同步
④加载AB包中资源
obj = ab.LoadAsset(assetName);