しっぽを追いかけて

ぐるぐるしながら考えています

Unity と猫の話題が中心   掲載内容は個人の私見であり、所属組織の見解ではありません

Unity でカーソルキーでキャラを左右に動かす

※ これは 2020/12/11 時点の Unity 2020.1.17f1 の情報です

最新版では動作が異なる可能性がありますのでご注意ください

前回カーソルキーでねこキャラを動かしたので、さらに簡単なアニメーションしながら左右に振り向くようにする

ねこを動かしたい

アニメーション用に用意する画像は右向きのねこキャラ2枚だけのお手軽方法

Cat オブジェクトに Animator コンポーネントをつけて、Animation Clip を作成

なんか Animation Controller なしで Animation コンポーネントLegacyAnimation Clip を設定する方法が動かなくなっていた・・・Legacy だからか?

普通に2枚の画像が交互に表示されるように Sprite の Animation を作る

アニメーション

あとは Cat.cs を次のように修正

using UnityEngine;
using UnityEngine.InputSystem;

public class Cat : MonoBehaviour
{
    private SpriteRenderer spriteRenderer = null;

    public void Awake()
    {
        this.spriteRenderer = this.GetComponent<SpriteRenderer>();
    }

    public void OnMove(InputAction.CallbackContext context)
    {
        var move = context.ReadValue<Vector2>();
        if (move.x != 0)
        {
            this.spriteRenderer.flipX = move.x < 0;
        }
        this.transform.Translate(move * 0.25f);
    }
}

SpriteRenderer.flipX を設定するだけで左右反転、とても簡単

お試し実行

左右に振り向く