public OverlayDataAsset CreatOverlay() { if (string.IsNullOrEmpty(path) || string.IsNullOrEmpty(filename) || diffuse == null) { Debug.LogError("path or filename or texture is null !!!"); return(null); } OverlayDataAsset oda = OverlayDataAsset.CreateInstance <OverlayDataAsset>(); oda.overlayName = filename; oda.material = uMaterial.Load(); oda.textureList = new Texture2D[] { diffuse }; if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } string p = path + "/" + filename + "_" + UMAUtils.Overlay + ".asset"; IObjectBase objBase = new ObjectBase(p); objBase.CreatAsset(oda); objBase.Save(); return(oda); }
RaceData CreatRace(UmaTPose umaTpose)//创建Race文件 { if (umaTpose == null) { return(null); } RaceData rd = new RaceData(); RaceData targetrd = new RaceData(); rd.expressionSet = expressionSet; rd.dnaConverterList = new DnaConverterBehaviour[2]; rd.dnaConverterList[0] = dnaConverterBehaviour; rd.dnaConverterList[1] = RaceMap.Instance.tutorialDan; rd.dnaRanges = new DNARangeAsset[1]; rd.dnaRanges[0] = danRange; rd.TPose = umaTpose; rd.raceName = objBase.Name; string tempPath = string.Format("{0}/{1}_Race.asset", Fold, objBase.Name); IObjectBase race = new ObjectBase(tempPath); race.CreatAsset(rd); return(rd); }
public RaceData CreatTPose()//创建TPose文件 { ModelImporter modelImporter = objBase.importer as ModelImporter; UmaTPose umaTpose = UmaTPose.CreateInstance <UMA.UmaTPose>(); modelImporter.animationType = ModelImporterAnimationType.Human;//修改 animation类型 为 humanoid modelImporter.SaveAndReimport(); umaTpose.ReadFromHumanDescription(modelImporter.humanDescription); string tempPath = string.Format("{0}/{1}_TPose.asset", Fold, objBase.Name); IObjectBase tpose = new ObjectBase(tempPath); tpose.CreatAsset(umaTpose); return(CreatRace(umaTpose)); }
public RuntimeAnimatorController Creat() { AnimatorController controller = new AnimatorController(); controller.AddParameter(ActionConst.WALK, AnimatorControllerParameterType.Bool); controller.AddParameter(ActionConst.HELLO, AnimatorControllerParameterType.Bool); controller.AddParameter(ActionConst.TALK, AnimatorControllerParameterType.Bool); controller.AddParameter(ActionConst.CHANGE_CLOTH, AnimatorControllerParameterType.Bool); //if(CharacterConst.useExpAnim) //{ // controller.AddParameter(ActionConst.EXP_SMILE, AnimatorControllerParameterType.Bool); // controller.AddParameter(ActionConst.EXP_TALK, AnimatorControllerParameterType.Bool); //} IObjectBase objBase = new ObjectBase(AnimPath); objBase.CreatAsset(controller); IEditorAnimationLayer baselayer = new EditorAnimationLayer_base(resType, controller, sex); baselayer.Create(); IEditorAnimationLayer fittingroomlayer = new EditorAnimationLayer_fittingroom(resType, controller, sex); fittingroomlayer.Create(); //if (CharacterConst.useExpAnim) //{ // IEditorAnimationLayer expressionlayer = new EditorAnimationLayer_expression(controller, sex); // expressionlayer.Create(); //} objBase.ImportAsset(ImportAssetOptions.ForceUpdate); return(controller); }