1、Unity对资源的管理API汇总:
Resources:Load、LoadAll、LoadAsync、UnloadAsset、UnloadUnusedAssets。
AssetBundle:LoadFromFile、LoadFromFileAsync、LoadFromMemory、LoadFromMemoryAsync、LoadAllAssets、LoadAllAssetsAsync、LoadAsset、LoadAssetAsync、Unload(true/false)。
GameObject:Instantiate、Destroy、DestroyImmediate。
以上API是Unity5.x下几乎所有的对内存资源管理的接口,所有的内存管理方案也几乎都是用以上接口实现的。
2、文件的加载方式:
对Resource内文件的加载:Resources.Load、Resources.LoadAll、Resources.LoadAsync
支持包内加载的同步加载方式:AssetBundle.LoadFromeFile
常用的同步加载方式:AssetBundle.LoadFromFile、File.Open
常用的异步方式(都支持包内):AssetBundle.LoadFromFileAsync、new www、www.LoadFromCacheOrDownload
3、对比几种加载assetbundle方式:
对于new www这种加载资源文件的方式,其优点是不会受到ios平台256文件句柄的限制,而其缺点是这种方式加载资源后所占的内存要比其他方式高。而对于www.LoadFromCacheOrDownload这种方式,其加载后所占内存会比较低,在内存中是以SerializeFile的格式存在,但其会受到ios平台256文件句柄上限的限制。不