GodotでUIの開閉にアニメーションをつけたかったので、実践したメモを残しておきます。
AnimationPlayerノードの追加
アニメーションを使用したいノードの子ノードにAnimationPlayerを追加します。今回は「ShowMenuAnimation」という名前にしています。
新規アニメーションの追加
AnimationPlayerノードを選択し、アニメーションウィンドウの「アニメーション」クリックし、開いたメニューの「New…」を選択。
※アニメーションウィンドウが出ない場合、エディタの最下部にアニメーションタブが追加されていると思うので、そちらをクリック。
「トラックを追加」から「Property track」を選択し、ノード選択画面から動かしたいノードを選択。
「ButtonContainer」を動かしたいので選択。
さらにノードのプロパティを選択。今回は「position」を選択。
トラックが追加されているので、追加されたトラックの任意の場所で右クリックする。「Insert Key」というボタンが出てくるのでクリック。
するとインスペクターウィンドウでプロパティの値を指定できるようになる。これを2つ以上作成すれば、指定した時間内で値の差の分だけ変化するアニメーションが作成できる。
設定したアニメーションをスクリプトで実行する
上記までで設定したアニメーションの実行タイミングをスクリプトで指定してあげる。設定したノードのplay()で引数に実行したいアニメーション名を渡す。これでアニメーションがつけられます。
インスペクターからトラック追加を行う方法
アニメーションウィンドウを開いた状態で別のノードを選択。するとインスペクター上で鍵のようなマークが出てくる。それをクリックすると、トラック追加のウィンドウを開かず、直接トラックを追加することができる。
Animation終了のシグナルと処理を結びつける
AnimationPlayerを選択し、「インスペクター」の隣の「ノード」タブを選択。するとAnimationのシグナルと処理を結びつけることができる。
作成したアニメーションの名前で処理を分けることができる。