//打开已存在动画片段 public void OpenClip(UnityEngine.Object prefab) { if (mCurrentClip != null) {//若当前已经打开了片段,询问是否保存并清理 _QuerySaveClip(); _ClearCurrentClip(); } mCurrentClip = new SpecialEffectAnimClipProxy(prefab); mCurrentClip.Context = mEditorSpeAnimClipContext.GetComponent <SpecialEffectDefaultContext>(); //将新建的动画片段挂接至统一挂接点 _Attach(mCurrentClip.Go.transform); mCmdMgr.Clear(); //为打开的动画片段准备预览动作 SetPreviewModelAction(mCurrentClip.PreviewAnimClip); //尝试绑定特效动画至模型 _TryAttachSpeAnim(); CurrentPlayTime = 0.0f; CurrentSelect = -1; isClipOpen = true; UpdateNotify(); }
//创建动画片段 public void NewClip(string name) { if (mCurrentClip != null) {//若当前已经打开了片段,询问是否保存并清理 _QuerySaveClip(); _ClearCurrentClip(); } //创建动画片段 mCurrentClip = new SpecialEffectAnimClipProxy(name); mCurrentClip.Context = mEditorSpeAnimClipContext.GetComponent <SpecialEffectDefaultContext>(); //将新建的动画片段挂接至统一挂接点 _Attach(mCurrentClip.Go.transform); mCmdMgr.Clear(); //清空动作 mActionMgr.Clear(); //尝试绑定特效动画至模型 _TryAttachSpeAnim(); CurrentPlayTime = 0.0f; CurrentSelect = -1; isClipNew = true; UpdateNotify(); }