assetbundle.UnLoad(true); 卸载所有AB资源 CUP资源开销小
assetbundle.UnLoad(false); 卸载所有没有被使用的AB资源 CUP资源开销小
Resource.UnloadUnusedAssets();可以卸载所以没有被引用的资源 CUP资源开销小
但使用assetbundle.UnLoad(false)哪些正在被使用的资源会出现一个问题
就是 这个资源单独成为了一个资源 没办法再通过assetbundle.UnLoad(true)卸载了 并且下次再加载这个资源的时候 不会判断是否有一样的资源 而少去加载这个资源了
这样的话 就容易引起内存冗余 解决方案就是AssetBundle.Unload(false)结合Resource.UnloadUnusedAssets()
需要了解的是 AB包在进入游戏之前就已经是下载在硬盘上了
之所以需要卸载 是因为程序并不能直接访问硬盘上的内容
需要先从硬盘把数据复制到寄存器 再从寄存器获取
卸载是卸载寄存器的AB包