LoginSignup
0
1

More than 3 years have passed since last update.

【Godot】キー入力に合わせたアニメーションをつける 

Last updated at Posted at 2021-01-24

やりたいこと

左右ボタンを押したらキャラクターが歩きアニメーションを開始し、止まったらアニメーションを歩きストップさせたい。

手順

以下の画像をSpriteノードで読み込む
walk_animsprite_small.png

Spriteのインスペクタ>Animation>Hframeを2にする。
これでスプライトを横に2分割し、フレームで切り分けることができる。

AnimationPlayerノードを作成し、「アニメーション」ボタン>新規で「walk」を作成。
アニメーションの長さを0.4秒にし、ループボタンを押す。
ループ.png

スプライトのインスペクタ>Animation>Frameの鍵マークを押し、0秒の位置にキーフレームを打つ。
タイムラインの0.2秒のところに移動し、Frameを1にして鍵マークを押す。
キーフレーム.png

再生ボタンを押すとプレイヤーが歩き始める。
再生ボタン.png

新規でアニメーション「stop」を作成。
Frameを0にして鍵マークを押し、自動再生ボタンを押す。
これでキャラクターは初期状態では止まっている状態になる。
自動再生ボタン.png

スクリプトで以下のようにAnimationPlayerを操作する。
Spriteをキー入力で左右反転させたコードを利用)

Player.gd
func _process(delta):
    if Input.is_action_pressed("move_right"):
        $AnimationPlayer.play("walk")
        $Sprite.set_flip_h(false)
    elif Input.is_action_pressed("move_left"):
        $AnimationPlayer.play("walk")
        $Sprite.set_flip_h(true)
    else :
        $AnimationPlayer.play("stop")

これで左右ボタンを押したら歩きアニメーションを開始し、止まったらアニメーションをストップさせることができる。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1