一、動態系統種類:
- Animation動畫狀態機:是舊版的動畫狀態機
- Animator動畫狀態機:是新版的動畫狀態機,其實就是由Animation組成的(這里我們常用這個)
* Animator其實就是把Animation統一管理和邏輯狀態管理的組件,更方便的圖形化狀態管理。而Animation就是每一個動畫。
(1)首先拖拽官方的人物模型(自帶Animator)
Paste_Image.png
(2)要想動畫在運行后動,那就要將動畫預制物的屬性修改為Humanoid 如下圖:
Paste_Image.png
(3)然后控制人物移動添加腳本(WSAD來移動)
public class Animation_VR : MonoBehaviour {
public Animator ani;
void Start () {
ani = GetComponent<Animator> ();
//ani.SetLayerWeight (1,1); //設置權重信息(代表那個動畫層,權重)
}
void Update () {
float h = Input.GetAxis("Horizontal");
float v = Input.GetAxis("Vertical");
ani.SetFloat ("Run",v);
ani.SetFloat ("Rotation",h);
}
}
創建一個動畫狀態機,編輯名稱后打開
image.png
image.png
點擊執行條件進行添加需要執行的動作(狀態),這里需要注意的是:為了一個游戲的完整性我們需要在條件中添加執行和返回。(本文中添加的是一個奔跑的過程添加了兩個執行條件才能實現人物在奔跑的過程中能隨時停止)
image.png
image.png
現在點擊播放就能看到隨著執行的條件人物模型開始動作了
image.png