当前位置:   article > 正文

unity AssetBudle 的引用计数(资源优化)_unity bunlde数量

unity bunlde数量

 首先写一个类包含ab和ab对应的引用以及对应的卸载方法,在写一个ab的管理类,包括全局ab的加载,卸载,以及相关根据引用数来判断是重内存中是否删除对应的依赖资源,是新建资源还是重内存中获取资源重而达到在ab适度颗粒话下的内存优化!

脚本:

  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using System;
  5. public class AssetBundleInfos
  6. {
  7. public AssetBundle assetBundle;
  8. public int referencedCount;//引用数
  9. internal event Action unload;
  10. internal void OnUnload()
  11. {
  12. assetBundle.Unload(false);
  13. if (unload != null)
  14. unload();
  15. }
  16. }
  17. public class Resource_LoadManager
  18. {
  19. AssetBundleManifest assetBundleManifest = null;
  20. Dictionary<string, string[]> dependencies = new Dictionary<string, string[]>();
  21. Dictionary<string, AssetBundleInfos> loadeAssetBundle = new Dictionary<string, AssetBundleInfos>();
  22. // Use this for initialization
  23. public Resource_LoadManager()
  24. {
  25. //Initalize();
  26. }
  27. //初始化加载所有的依赖项目
  28. public void Initalize()
  29. {
  30. AssetBundle bundle;
  31. switch (Application.platform)
  32. {
  33. case RuntimePlatform.Android:
  34. bundle = AssetBundle.LoadFromFile(System.IO.Path.Combine(DataPath, "Android"));
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/341560
推荐阅读
相关标签
  

闽ICP备14008679号