当前位置:   article > 正文

Resources异步加载_异步加载资源

异步加载资源

1、Resources异步加载

如果加载过多、过大的资源可能会造成程序卡顿,卡顿的原因时从硬盘上把数据读取到内存中,是需要进行计算的,越大的资源耗时越长,就会造成掉帧卡顿。

Resources异步加载,就是内部新开一个线程进行资源加载,不会造成主线程卡顿

2、Resources异步加载方法

注意:异步加载不能马上得到加载的资源,至少要等一帧

(1)通过异步加载中的完成事件监听,使用加载的资源

刚刚执行了异步加载的执行代码资源还没有加载完毕,不能直接使用,一定要等加载结束后才能使用

  1. Texture tex;
  2. private void LoadOver(AsyncOperation rq) {
  3. print("加载结束")
  4. tex = (rq as ResourceRequest).asset
  5. ......
  6. }
  7. // 新开一个线程进行资源加载
  8. ResourceRequest rq = Resource.LoadAsync<Texture>("Tex/TestJpg");
  9. // 资源加载结束后进行相关的事件监听回调
  10. rq.completed += LoadOver;
  11. private void Update() {
  12. // 使用前要对tex进行判空
  13. if (tex != null)
  14. ......
  15. }

(2)通过协程使用加载的资源

  1. StartCoroutine(Load());
  2. IEnumerator Load() {
  3. // 迭代器函数遇到yield return时就会停止执行之后的代码(分步)
  4. // 然
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/271590
推荐阅读
相关标签
  

闽ICP备14008679号