Unity Animator動畫狀態機

2022-07-15 20:33:09 字數 1441 閱讀 8439

建立、檢視和修改animator controller檔案。

右邊部分:網格化布局區域

entry:狀態機入口

exit:狀態機出口

anystate:任意狀態

state

​ 橙色:預設狀態,進入狀態機時預設連線該動畫

​ 灰色:一般狀態,可以由任意狀態進入該狀態

左邊部分:狀態機的動畫層和引數

點選右側設定按鈕開啟設定視窗

​ override:忽略其他層的資訊

​ additive:在先前層上新增動畫

sync & timing:用於動畫同步

​ sync:勾選並選擇要同步的層,隨後狀態機的結構便會與之相同,但狀態使用的實際動畫剪輯不同。在同步層檢視中對狀態機的布局或結構所做的任何更改(新增/刪除狀態或過渡)都是針對同步層的源進行的。

​ timing:同步層上的動畫的長度拉伸到與原始層上的一致,如果選中該選項,則動畫長度將在兩個動畫之間平衡(基於權重)。

ik pass:開啟ik控制(可用以控制角色頭部注視物體)

可以通過多層動畫實現動畫的混合

狀態基礎

motion:狀態繫結的動畫(animation)

cycle offset:迴圈偏移 parameter:指定引數(float)作為cycle offset

foot ik:腳部ik修正,可解決角色跑動不正常問題

solo:只生成當前過渡

mute:禁用過渡

settings:(可通過數值修改,也可以通過圖形修改)

a->c 和 a->d 將無法打斷這個過渡。但是,此時當我們在 a->b 過程中去觸發 b->d,state machine 將立刻開始 a->d 的過渡,並且整個過程不需要完成 a->b 的transition。

condition:過渡條件,可從引數中選擇

可以通過指令碼來修改引數的值來觸發響應的的狀態過渡。

Unity Animator常用API解析

animator它的api部分寫的比較雜,導致我們要找想要的功能的時候,經常需要呼叫四五層介面,我寫了乙個擴充套件類,可能幫助我們快速找到想要的功能 public static animatorstatemachine getanimatorstatemachine this animator an...

Unity Animator狀態切換打斷探索

最近在研究animator的時候interruption source用法的耗費了我很長時間,因為在了解的過程中在網上大多都是官方文件的譯文,首先感謝我參考的譯文,但是按照譯文操作測試結果和官方結果並一樣,於是作為乙個撓頭的程式設計師又在不斷搜尋,最終發現救命稻草,其中 這句話點醒了我,小菜鳥恍然大...

android 動畫1 動畫補間動畫和幀動畫

透明方式 方式 animation alphaanimation new alphaanimation 0.0f,1.0f 載入 動畫資源檔案 animation animation animationutils.loadanimation this,r.anim.alpha anim imagev...