【Unity】Animationを最初から再生する拡張メソッド

はじめに

今回は画】Animationを最初から再生する拡張メソッドを作成していきます。

環境は Unity 2021.3.25f1です

コード

using System.Collections;
using UnityEngine;
/// <summary>
/// アニメーションの拡張メソッド
/// </summary>
public static class AnimationExtension 
{
       /// <summary>
    /// 最初から再生する
    /// </summary>
    /// <param name="self"></param>
    public static void RePlay(this Animation self)
    {
        self.Rewind();
        self.Play();
    }
    /// <summary>
    /// 最初から再生する
    /// </summary>
    /// <param name="self"></param>
    public static void RePlay(this Animation self,AnimationClip clip)
    {
        self.Rewind(clip.name);
        self.Play(clip.name);
    }
    
}

使い方

using System.Collections;
using UnityEngine;

public class TestScene : MonoBehaviour
{
    public Animation animation;

    public AnimationClip AvtiveClip;
  
    void Update()
    {
        if(Input.GetKeyDown(KeyCode.S))
        {
            //最初から再生
            animation.RePlay(AvtiveClip)
        }
    }

}

注意点

AnimationでAnimationClipを再生するにはLegacyでなけれはいけません