public override int LoadAsync(IAssetLoader loader, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) { if (Asset == null) { ABAssetLoader abLoader = loader as ABAssetLoader; if (abLoader == null) { OnAssetLoadCompleted(0, null); return(0); } string sABPath = abLoader.GetAssetBundleFromAsset(Path); if (string.IsNullOrEmpty(sABPath)) { return(0); } m_ABInfo = AssetCacheMgr.Instance.GetABCache(sABPath); AssetLoadCompletedEvent += OnAssetLoadCompleted; AssetLoadCompletedEvent += OnLoadAssetCompeleted; m_ABInfo.LoadABAsync(true, null, OnLoadABCompeleted); return(0); } else { OnAssetLoadCompleted.Invoke(0, Asset); return(0); } }
public int LoadAssetAsync <T>(string sPath, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) where T : UnityEngine.Object { #if UNITY_EDITOR T t = UnityEditor.AssetDatabase.LoadAssetAtPath <T>(StringUtils.PathCombine(m_ResourcePath, sPath)); int obj = 0; OnAssetLoadCompleted(obj.GetHashCode(), t); return(obj.GetHashCode()); #else return(0); #endif }
public virtual int LoadAsync(IAssetLoader loader, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) { if (Asset == null) { AssetLoadCompletedEvent += OnAssetLoadCompleted; AssetLoadCompletedEvent += (iHandle, @object) => { Asset = @object as T; }; return(loader.LoadAssetAsync <T>(Path, AssetLoadCompletedEvent)); } else { OnAssetLoadCompleted(0, Asset); return(0); } }
public int LoadAssetAsync <T>(string sPath, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) where T : UnityEngine.Object { ResourceRequest req = Resources.LoadAsync <T>(StringUtils.WithoutExtension(sPath)); req.completed += (ao) => { ResourceRequest resourceRequest = ao as ResourceRequest; UnityEngine.Object @object = null; if (resourceRequest != null) { @object = resourceRequest.asset; } OnAssetLoadCompleted.Invoke(req.GetHashCode(), @object); }; return(req.GetHashCode()); }
public int LoadAssetAsync <T>(string sAsset, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) where T : UnityEngine.Object { if (Bundle != null) { AssetBundleRequest abReq = Bundle.LoadAssetAsync <T>(AssetName(sAsset)); abReq.completed += (ao) => { AssetBundleRequest assetBundleRequest = ao as AssetBundleRequest; if (assetBundleRequest != null) { OnAssetLoadCompleted(assetBundleRequest.GetHashCode(), assetBundleRequest.asset); } }; return(abReq.GetHashCode()); } return(0); }
public int LoadAssetAsync <T>(string sPath, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) where T : UnityEngine.Object { ResourceRequest req = Resources.LoadAsync <T>(sPath); return(0); }
public int LoadAssetAsync <T>(string sPath, ResourceMgr.AssetLoadCompleted OnAssetLoadCompleted) where T : UnityEngine.Object { ABAssetInfo <T> abAssetInfo = AssetCacheMgr.Instance.GetAssetCache <T>(sPath, this) as ABAssetInfo <T>; return(abAssetInfo.LoadAsync(this, OnAssetLoadCompleted)); }