unity Animator 怎么判斷一個動畫播放結束
unity Animator 怎么判斷一個動畫播放結束?
慕碼人2483693
2019-02-04 10:06:40
TA貢獻1784條經驗 獲得超8個贊
第一種方法:在動畫結束幀后面加個動畫事件,調用下含這個變量的函數接口不是可以了?
如圖,找到動畫的inspector面板,在里面有個Events下拉條,下拉后在想要的幀的位置添加事件函數,函數名字記得在使用這個動畫的物體的腳本里面寫好,否則會報錯
第二種方法:試試animator上面那個 exit time
第三種方法:
//獲取動畫層 0 指Base Layer.
AnimatorStateInfo stateinfo = animator.GetCurrentAnimatorStateInfo(0);
//如果正在播放walk動畫.
if(stateinfo.IsName("Base Layer.walk"))
{
}
TA貢獻1744條經驗 獲得超4個贊
Animator Controller只有一個state時,直接使用Animator.IsInTransition(0)判斷是否正在轉換,true就是結束,反之沒有;
有多個state時,使用AnimatorStateInfo stateinfo = animator.GetCurrentAnimatorStateInfo(0)
if(stateinfo.IsName("Base Layer.walk")進行判斷
舉報