/// <summary> /// 一般来说,尽可能使用AssetBundle.LoadFromFile。该API在速度,磁盘使用率和运行时内存使用方面是最有效的 /// </summary> public AssetBundlePackage LoadAssetBundleFromFile(string assetBundleName) { assetBundleName = assetBundleName.ToLower(); string[] list = Instance.GetAssetBundleDependencies(assetBundleName); if (list.Length != 0) { for (int i = 0; i < list.Length; i++) { LoadAssetBundleFromFile(list[i]); } } if (!allAssetBundleDic.ContainsKey(assetBundleName)) { AssetBundle bundle = AssetBundle.LoadFromFile(AutoGetResourcePath(assetBundleName, false)); AssetBundlePackage tmpAssetBundle = new AssetBundlePackage(bundle, assetBundleName); AddAssetBundleToDic(tmpAssetBundle); //HFLog.L("同步加载AssetBundle " + assetBundleName); return(tmpAssetBundle); } else { AssetBundlePackage ab = allAssetBundleDic[assetBundleName]; ab.Retain(); return(ab); } }