您的位置:首页 > 移动开发 > Unity3D

Unity之如何从AssetBundles加载资源

2015-03-10 11:57 225 查看

加载和卸载资源包 (AssetBundle) 中的对象

使用下载的数据构建资源包 (AssetBundle) 对象后,可以使用三种不同的方法加载其中包含的对象:

AssetBundle.Load 会将其名称标识符用作参数加载对象。其名称即工程 (Project) 视图中显示的名称。可选择将对象类型作为参数传递到 Load 类函数,确保加载的是特定类型的对象。

AssetBundle.LoadAsync 的作用原理与上述 Load 类函数相同,但不会在加载资源后阻塞主线程。此方法对于加载较大资源或一次加载多个资源很有用,可避免应用程序停止运行。

AssetBundle.LoadAll 将加载资源包 (AssetBundle) 中的所有对象。和 AssetBundle.Load 一样,可以按照其类型选择性地过滤对象。

要卸载资源,需要使用
AssetBundle.Unload。这个类函数包含一个布尔参数,可告诉 Unity 是卸载所有数据(包括已加载的资源对象),还是只卸载已下载资源包中的压缩数据。如果应用程序正在使用此资源包 (AssetBundle) 中的一些对象,并且需要释放一些内存,则可传递 false 以便卸载内存中的已压缩数据。如需完全卸载该资源包 (AssetBundle) 的所有对象,则应传递 true,以便销毁从资源包加载的资源 (Assets)。

从资源包 (AssetBundles) 异步加载对象

可使用
AssetBundle.LoadAsync 类函数异步加载对象,从而降低应用程序暂时中断的可能性。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: