在unity中利用playmaker實現對animator人物實現控制非常簡單,只需要了解animator動畫樹的相應動作參數就能實現動畫的控制。
動畫樹如上圖所示,每個箭頭表示了動畫切換的關係,點擊這條箭頭,就能查看轉換的參數,如下圖所示
上圖表示只要給animator的傳遞參數animation為10的數字,就能從start轉換到Run的動畫狀態。
我們將人物放到舞臺上,給她添加一個character Controller,注意調整character Controller位置為放在舞臺上方,並利用playmaker給她創建一個FSM,FSM的狀態如下圖,利用w,s鍵實現前後行走,利用a,d實現左右轉向,而f,r,c來進行攻擊,space實現跳躍。
默認狀態下state如下圖,Axis Event來控制角色的character Controller,其中set animator int傳遞animation為1實現了默認狀態下休息動畫的播放
當用戶按了w按鈕,角色向前行走,set animator int傳遞animation為10實現跑步動畫
當用戶按了s,角色向後退,set animator int傳遞animation為9實現後退動畫
當用戶按了F鍵,則進入攻擊狀態,該狀態state如下圖,通過set animator int傳遞animation為21實現攻擊動畫,並利用get key up來獲知用戶按鍵停止的時候停止攻擊回到默認狀態。
其他攻擊狀態以及跳躍狀態都與上面這個state類似。
而轉向通過Rotate就可以實現
通過以上的playmaker方法就能很容易的實現對animator角色的運動控制。
示例的unity文件在下面連結提供
連結:https://pan.baidu.com/s/1g1C-UfdQ7K1kxRj3umv_Sg
提取碼:m3hb