标准的从Resources和Assetbundle读取这里不做介绍了,
主要的应用场景是从互联网http服务器 或者从本地的文件夹读取资源。
音频加载逻辑:
音频是可以直接读取文件后同步返回一个AudioClip的句柄,然后开始加载,加载到可以播放的时候,即开始播放。
方法:
WWW www = new WWW(ModManager.ModBaseUrl + path);
AudioClip ac = www.GetAudioClip(true, true);
WWW的GetAudioClip 可以在没有完全下载完成前获得一个audio stream的AudioClip,我们直接赋值给AudioSource的clip属性,然后在Update里去检测:
if(audioMgr.clip != null && !audioMgr.isPlaying && audioMgr.clip.isReadyToPlay){
audioMgr.Play ();
}
这样可以完成异步加载播放。
图片加载逻辑:
我们希望图片立即能返回一个Sprite赋值给UI组件,然后等完成加载完成后,改变UI组件上绑定的texture
方法:
先创建一个texture2d
Texture2D t = new Texture2D(1,1,TextureFormat.ARGB4444, false);
用它创建Sprite