小屋創作

日誌2017-09-24 03:59

Unity語法篇 - 使用Animator使用GetNextAnimatorStateInfo擷取下一個動畫(教練我...我抓不到動畫)

作者:Koroshi影

對於初次或不熟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版
*純屬個人平時練習紀錄使用.如果錯誤歡迎糾正

1

0

LINE 分享

相關創作

20240427 遊戲進度:程式優化

[紀錄]將Unity製作的APP上架至Meta的Quest商城

台灣獨立遊戲《人造機械之翼》參展CooMIC²,體驗JRPG風格的浪漫飛行冒險

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】