文章目錄
- 1、準備工作
- Godot資源
- 2、創建項目
- 3、創建結點
- 4、創建動畫
- 1、創建動畫
- 2、添加軌道
- 3、創建關鍵幀
- 3.1 第一個關鍵幀
- 3.2 第二個關鍵幀
- 5、加載后自動播放
- 6、動畫循環
- 7、軌道設置
- 1、軌道更新模式
- 2、軌跡插值
- 3、其他屬性的關鍵幀
- 4、編輯關鍵幀
- 5、使用 RESET 軌道
- 6、洋蔥皮
1、準備工作
這里主要使用一張Godot圖片,作為動畫資源。這里我直接上傳:
2、創建項目
3、創建結點
- 創建一個Sprite2D節點
- 為Sprite2D創建一個子節點AnimationPlayer
- 保存場景為main.tscn
此時,選擇Sprite2D節點,然后我們把資源文件:res://godot.png拖動到Texture紋理屬性設置中。
4、創建動畫
1、創建動畫
如上圖所示:我們在動畫面板,點擊動畫,然后新建,我們命名為Test。
當我們創建好動畫之后,就會注冊在動畫庫資源的列表中。點擊下拉,就有所有的動畫資源列表。
當然也可以點擊動畫,然后管理動畫:
2、添加軌道
這里的軌道我認為翻譯的不好,應該是蹤跡才對。指的就是動畫運動的蹤跡。我們為Sprite2D添加軌道:
如下圖所示:添加軌道->屬性軌道
此時會彈框,我們選擇精靈節點:Sprite2D
我們主要是讓精靈圖移動變換,所以屬性我們選擇Node2D中的position屬性。因為Sprite2D繼承Node2D,所以選擇父類的屬性即可。因為它自身沒有這個屬性。
操作完上述步驟之后,如下圖所示:
3、創建關鍵幀
3.1 第一個關鍵幀
所謂關鍵幀就是控制動畫的起始或者結束的狀態。
我們創建第一個關鍵幀,在起始的位置:
我們選擇position這個屬性,然后在0.0起始位置,鼠標右鍵,就會彈出 插入關鍵幀,我們插入即可。
插入之后,起始位置多了個菱形塊。當然也可以在檢查器面板找到position屬性,右側有個小鑰匙,點擊小鑰匙也會插入關鍵幀。
此時我們的第一個關鍵幀創建好了,但是要讓角色動起來,我們還需要創建第二個關鍵幀,因為此時角色還是在原地:
3.2 第二個關鍵幀
假設我們希望在點之間移動需要兩秒鐘。默認情況下,動畫設置為僅持續一秒,因此請在動畫面板時間軸標題右側的控件中將動畫長度更改為 2。
我們使用移動工具將我們的精靈移動到右下角,如下圖所示:
此時我們再插入一個關鍵幀:
點擊播放按鈕,如下:
其實到這里最基本的動畫制作是完成了,但是還有一些其他的概念和操作需要介紹。
5、加載后自動播放
為實現動畫自動播放,點擊動畫編輯器中“編輯”按鈕左邊的“加載后自動播放”按鈕即可。可在AnimationPlayer結點所在場景運行時或動畫加入了另一個場景中時使用。
起始現在我們就可以運行該項目,選擇當前場景,運行之后如下圖:
動畫呆在原地,此時我們點擊加載后自動播放,然后保存。
然后再次運行項目,發現動畫自動播放了。
6、動畫循環
點擊右側的循環按鈕,點擊播放,動畫就會一直循環播放。
7、軌道設置
下面的屬性可以點擊測試具體含義:
1、軌道更新模式
軌道更新模式 | 含義 |
---|---|
連續 | 每幀連續更新,適用于平滑移動、旋轉、縮放。例如:物體勻速移動到目標位置 |
離散 | 僅在關鍵幀位置更新 ,適用于幀動畫、狀態切換 。例如精靈逐幀切換(如角色攻擊動作) |
捕獲 | 記錄初始值后與第一個關鍵幀混合,適用于從當前位置/狀態開始動畫。例如角色無論在什么位置都能平滑移動到目標 |
2、軌跡插值
- 臨近:設置為最接近的關鍵幀的值
- 線性:使用線性函數計算兩個關鍵幀之間的值
- 三次方:使用三次函數計算兩個關鍵幀之間的值
3、其他屬性的關鍵幀
Godot的動畫系統不僅限于位置、旋轉和縮放。你可以對任何屬性進行動畫化。
如果你在動畫面板可見時選擇你的精靈,Godot 會在檢查器中為精靈的每個屬性顯示一個小的關鍵幀按鈕,點擊這個按鈕,Godot就會自動為當前動畫添加一個軌道和關鍵幀。也就是有小鑰匙的屬性都可以作為關鍵幀
4、編輯關鍵幀
你可以在動畫時間軸上點擊關鍵幀,以在屬性面板中顯示和編輯其值。
點擊關鍵幀,右側屬性面板就有屬性編輯。在這里編輯關鍵幀的緩和值。這將告訴 Godot 在動畫屬性到達該關鍵幀時如何進行插值。
5、使用 RESET 軌道
下面點擊編輯,就會顯示應用重置:這樣就可以保證在保存場景并重新在編輯器中打開時,會恢復默認姿勢。
6、洋蔥皮
Godot 的動畫編輯器允許你在創建動畫時使用洋蔥蒙皮。要啟用此功能,請單擊動畫編輯器右上角的洋蔥圖標。此時,在動畫對象先前位置將有透明紅色副本顯示出來。
與洋蔥皮按鈕相鄰的三個圓點按鈕可以打開一個下拉菜單,你可以用它來調整洋蔥皮的工作方式,包括在未來的幀中使用洋蔥皮的能力。