////////////////////////////////////////////////////////////////////////////// #region MONO // 开始加载 void Start() { //获取模型数据 string assetPath = "GameModelData/GameModelData.asset"; //assetPath = UtilTools.PathCheck(assetPath); _pAllModelData = AssetManager.getInstance().loadAsset <GameModelDataHolder>(assetPath); }
public static void excute() { //创建实例 GameModelDataHolder go = ScriptableObject.CreateInstance <GameModelDataHolder>(); ModelDataProcess.excute(); ModelDic dictModelData = ModelDataProcess._dicModelData; foreach (KeyValuePair <string, ModelData> kvp in dictModelData) { GameModelData pData = new GameModelData(); pData._strAssetName = kvp.Value._strAssetName; pData._strAnimationAssetName = kvp.Value._strAnimationAssetName; pData._strModelName = kvp.Value._strModelName; pData._listAnimEvents = kvp.Value._listAnimEvents; pData._listModelBps = kvp.Value._listModelBps; pData._listAnimations = kvp.Value._listAnimations; pData.nColliderType = kvp.Value._nColliderType; pData.nColliderParams = kvp.Value._nColliderParams; pData.colliderCenter = kvp.Value._nColliderCenter; Debug.Log(kvp.Key); go._listGameModel.Add(pData); } //生成asset string p = "Assets/Resources/GameModelData/GameModelData.asset"; AssetDatabase.CreateAsset(go, p); string assetbundle_path = GameDataAssetbundlePath + IPath.getPlatformName() + "/modelsassetbundles"; //创建路径 if (!Directory.Exists(assetbundle_path)) { Directory.CreateDirectory(assetbundle_path); } //打包 UnityEngine.Object o = AssetDatabase.LoadAssetAtPath(p, typeof(GameModelDataHolder)); BuildPipeline.BuildAssetBundle(o, null, assetbundle_path + "/gamemodeldata.assetbundle", EditorVariables.eBuildABOpt, EditorVariables.eBuildTarget); //删除临时的asset //AssetDatabase.DeleteAsset(p); }
public void LoadFinishedCallback(bool manual, TaskBase currentTask) { _pAllModelData = (GameModelDataHolder)((AssetBundleLoadTask)currentTask).getTargetAsset(); }