// //加载一个逻辑资源,使用阻塞加载 public void AsynLoadLogicRes(string path, LogicResouce.ELogicResType type, OnResLoaded onLoaded = null) { if (GetLogicRes(path) != null) { if (onLoaded != null) { onLoaded(path); } return; } // //LogicResouce res = new LogicResouce(); //res.resPath = path; //res.logicResType = type; switch (type) { case LogicResouce.ELogicResType.ERes_Effect: { LoadImpl(path, PhyResouce.EPhyResType.EPhyResPrefab, (resPath) => { AssetBundle ab = ResourceManager.Instance.GetPhyRes(path).assetBundle; StringScriptableObject holder = (StringScriptableObject)ab.Load("DependentBundleNames"); LogicResourceBuilder logicBuilder = new LogicResourceBuilder(); logicBuilder.resPath = resPath; logicBuilder.logicResType = type; logicBuilder.onLogicResourceBuilded = (builderPath) => { if (onLoaded != null) { onLoaded(builderPath); } }; // if (holder != null) { if (holder.content != null) { foreach (string s in holder.content) { logicBuilder.resLists.Add(s); LoadImpl(s, PhyResouce.EPhyResType.EPhyResPrefab); //Debug.LogError(s); } } } ResourceManager.Instance.AddLogicResourceBuilder(logicBuilder); } , null); } break; } }
//添加一个逻辑文件,并将所有依赖的文件加入加载队列 public void AddLogicFile(string logicFile, LogicResouce.ELogicResType logicResType) { //if (ResourceManager.Instance.GetLogicRes(logicFile) != null) //{ // return; //} if (logicReqDic.ContainsKey(logicFile) == true) { return; } // LogicLoadRequest loadReq = new LogicLoadRequest(); loadReq.resPath = logicFile; loadReq.resType = logicResType; logicReqDic.Add(logicFile, loadReq); // }
public static PhyResouce.EPhyResType getRootResType(LogicResouce.ELogicResType type) { return(PhyResouce.EPhyResType.EPhyResPrefab); }