private AsyncAssetProxy LoadAssetProxy_discard <T>(AssetType assetType, string assetName , Action <T> action, Action <float> progress) where T : Object { AsyncAssetProxy proxy = PoolMgr.Instance.GetCsharpObject <AsyncAssetProxy>(); proxy.InitProxy(assetType, assetName); CoroutineMgr.Instance.RunCoroutine(LoadAssetAsync_discard <T>(assetType, assetName, proxy, action, progress)); return(proxy); }
/// <summary> /// 异步从AssetBundle加载资源; /// </summary> /// <param name="assetType">资源类型</param> /// <param name="assetName">资源名字</param> /// <param name="progress">加载进度</param> /// <param name="isUsePool">资源是否使用对象池</param> /// <returns>异步代理</returns> public AsyncAssetProxy LoadAssetProxy(AssetType assetType, string assetName, Action <float> progress, bool isUsePool) { AsyncAssetProxy proxy = PoolMgr.Instance.GetCsharpObject <AsyncAssetProxy>(); AssetBundleLoadNode loadNode = AssetBundleMgr.Instance.GetAssetBundleLoadNode(assetType, assetName); loadNode.AddLoadProgressCallBack(progress); proxy.InitProxy(assetType, assetName, loadNode, isUsePool); _asyncProxyQueue.Enqueue(proxy); return(proxy); }