Unity之如何从AssetBundles加载资源
加载和卸载资源包 (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 类函数异步加载对象,从而降低应用程序暂时中断的可能性。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。