通常我們在游戲里面創建的精靈比如玩家主角,它在移動的過程中一般會帶有一些動畫的效果,比如兩只腳前后地移動,那么這種動畫效果的實現和控制就可以通過Unity2D的動畫系統來實現。
要添加這樣的動畫,首先我們需要先在Hierarchy視圖里面選中精靈,然后在Animation視圖里面創建一個動畫文件【Create New Clip】,如下圖所示:
創建好動畫的文件之后,就可以把精靈的各個狀態拉到時間軸上,然后拖動紅色的線條就可以看到動畫的預覽效果。
對於一個精靈可以創建多個動畫,各個動畫之間可以進行切換,下面我們再看一下動畫之前的切換和精靈動畫的管理。
創建了動畫之后,在動畫文件的文件夾里面會發現多了一個后綴為controller的文件,這個就是動畫控制器的文件,是跟精靈搭配起來的,名字也是跟精靈的名字一致,表示是對精靈動畫的控制。如圖所示:
點擊Palyer.controller文件,可以在Unity里面看到其可視化的界面如圖所示:
在上圖中我們可以看到左下角有一個添加參數的功能,這個功能一般會用來控制動畫之前的切換,或者動畫的終止等。動畫之前是可以互相關聯的,在可視化的控制器里面右鍵動畫,就可以添加其下一個關聯的動畫,如上圖中的兩個動畫是互相關聯的。點擊動畫之間的“箭頭”,然后再Inspector視圖里面就可以查看或者設置動畫之前的切換條件,如下圖所示,通過Warking參數來控制動畫之前的切換:
這時候在精靈的Inspector視圖里面,已經自動給精靈添加了動畫控制器的組件了,如圖所示。
接下來我們就可以在精靈對應的腳本里面來獲取動畫控制器Animator來進行相關的操作。
private Animator playerAnimator = null;// 動畫控制器 void Start() { playerAnimator = GetComponent<Animator>(); } ...... playerAnimator.SetBool("Walking", false); ...... playerAnimator.SetBool("Walking", true);
我們可以在腳本里面設置動畫控制器參數的值,通過這個參數來控制動畫之前的切換。