對於初次或不熟Animator的人用GetNextAnimatorStateInfo都會有個相同的狀況
那就是明明想擷取下一個動畫狀態
可是都擷取不到
PS:目前我擷取的是下一個動畫的時間
老樣子的前置作業
目前先用AnimatorEvent做示範
因為這個比較容易出BUG~XD
然後拿AnimEvent當我要執行的AnimatorEvent
而Debug.Log的內容是我要擷取下一個動畫的地方
正題開始:第一步:
創建Coroutine(協程)
然後使用WaitForSeconds並輸入等待時間(盡量不要太長)
然後啟動Coroutine(協程)
並把要擷取的部分移到等待時間的後面
之後執行就發現可以正常擷取到拉~!(我擷取的是時間唷)
之所以擷取不到下一個動畫的原因
是因為Animation切換動畫後,它並不會立刻刷新
所以就算使用Animator.Update(0)方法
在一瞬間調用的話,甚至會出現閃爍BUG
所以用Coroutine(協程)讓它晚個零點幾秒,肉點看不出來的時間就行
晚個一幀左右基本上肉眼看不出來
*此篇文章使用版本為5.6.0p2
*編輯器為Visual Studio 2017 Community版
*純屬個人平時練習紀錄使用.如果錯誤歡迎糾正