public void LoadAsset(string fullPath, AssetCallback assetCallback, object callbackData) { StartCoroutine(LoadAssetByWWW(fullPath, new AssetCallback(delegate(string Name, WWW asset, object callbackData0) { assetCallback(Name, asset, callbackData0); }), null)); }
private IEnumerator LoadAssetByWWW(string fullPath, AssetCallback assetCallback, object callbackData) { WWW asset = new WWW(fullPath); yield return(asset); assetCallback(string.Empty, asset, null); }
public void AsyncLoadAssetWithType(string resName, Type type, AssetCallback callback) { if (resName.Contains("Scenes/s") && Path.GetDirectoryName(resName) == "Scenes") { callback(null); } else { if (this.coroutineQueue == null) { this.coroutineQueue = new SingleLoader(new Func <IEnumerator, Coroutine>(GameManager.Instance.StartCoroutine)); } this.coroutineQueue.Enqueue(this.AsyncOnLoadAsset(resName, type, callback)); } }
public static void LoadEquipCustomizationAsset(string path, AssetCallback callback) { AssetManager.LoadAssetWithPool(path, delegate(bool isSuccess) { if (isSuccess) { if (!AssetManager.mEquipCustomizationAsset.Contains(path)) { AssetManager.mEquipCustomizationAsset.Add(path); } if (callback != null) { callback(AssetManager.LoadAssetNowWithPool(path)); } } }); }
//基于现有的经验,大部分情况下,异步加载资源的表现更加优异,所以直接使用异步接口,不管是否是同步还是异步 public void LoadAssetAsync(string assetName, string assetFileName, AssetCallback callBack) { if (!IsAssetsLoaded(assetFileName)) { var info = new CAssetLoaderInfo(); info.assetName = assetName; info.path = assetRootPath + assetFileName; info.loadType = CAssetLoadType.AssetBundleFile; loaderInfoQueue.Push(info); } if (callBack != null) { if (!callBacks.ContainsKey(assetFileName)) { callBacks.Add(assetFileName, new List <AssetCallback>()); } callBacks[assetFileName].Add(callBack); } //loader.callBack = callBack; }
private IEnumerator AsyncOnLoadAsset(string resName, Type type, AssetCallback callback) { StaticLoader.< AsyncOnLoadAsset > c__Iterator23 <AsyncOnLoadAsset> c__Iterator = new StaticLoader.< AsyncOnLoadAsset > c__Iterator23();
public InteropBase() { _onAssetErrorMessageChanged = LogUpdater; }
public static void LoadAsset(string resName, Type type, AssetCallback callback) { AssetLoader.GetCurrentLoader().AsyncLoadAssetWithType(resName, type, callback); }
private IEnumerator AsyncOnLoadAsset(string resName, Type type, AssetCallback callback) { DynamicLoader.< AsyncOnLoadAsset > c__Iterator20 <AsyncOnLoadAsset> c__Iterator = new DynamicLoader.< AsyncOnLoadAsset > c__Iterator20();