private void loadAsset <T>(string resPath, LoadCb loadCallBack, ResEnum resEnum, bool isAsync = true) where T : UnityEngine.Object { if (loadedCacheDict.ContainsKey(resPath)) { if (loadCallBack != null) { addResRef(resPath); loadCallBack(loadedCacheDict[resPath], resPath); } return; } if (waitLoadInfoDict.ContainsKey(resPath)) { waitLoadInfoDict[resPath].LoadFinishCb.Insert(0, loadCallBack); return; } ResLoadInfo loadInfo = this.resLoadInfoPool.GetItem(); loadInfo.ResPath = resPath; loadInfo.LoadFinishCb.Insert(0, loadCallBack); waitLoadInfoDict[resPath] = loadInfo; if (isAsync) { AssetLoader.Instance.LoadAssetAsync <T>(resPath, loadFinishCallBack); } else { AssetLoader.Instance.LoadAsset <T>(resPath, loadFinishCallBack); } }
public void LoadPrefab(string resPath, LoadCb loadCallBack) { LoadAssetAsync <GameObject>(resPath, loadCallBack, ResEnum.Prefab); }
public void LoadAssetAsync <T>(string resPath, LoadCb loadCallBack, ResEnum resEnum) where T : UnityEngine.Object { loadAsset <T>(resPath, loadCallBack, resEnum, true); }
public static extern void setNavigationFunctions(int windowID, string hookUrl, NavHookCb navCb, LoadCb loadCb);