Unity Animator 倒播动画 方式2种(2020版Unity-亲测)

第一种最简单粗暴的方式:

把一个动画,复制成2个,Speed分别设置为 -1 和 1 ,然后直接正常使用就可以了。

  

an.Play("Unity_Chan_Jump-1");----调用Speed=-1,则为倒播

an.Play("Unity_Chan_Jump-1");---调用Speed=1,则正序播放

第二种代码修改Speed 方式:

1.如同步骤设置

 2.代码部分

 public Animator an;
    

    private void Update()
    {
        if (Input.GetKeyDown(KeyCode.A))
        {
            if (an.GetCurrentAnimatorStateInfo(0).normalizedTime <= 0)
            {
                an.SetFloat("speed", 1);
                an.Play("Unity_Chan_Jump", 0, 0);
            }
            else if (an.GetCurrentAnimatorStateInfo(0).normalizedTime > 0)
            {
                an.SetFloat("speed", 1);
                an.Play("Unity_Chan_Jump", 0);
            }
        }
        if (Input.GetKeyDown(KeyCode.D))
        {
            if (an.GetCurrentAnimatorStateInfo(0).normalizedTime > 1)
            {
                an.SetFloat("speed", -1);
                an.Play("Unity_Chan_Jump", 0, 1);
            }
            else if (an.GetCurrentAnimatorStateInfo(0).normalizedTime <= 1)
            {
                an.SetFloat("speed", -1);
                an.Play("Unity_Chan_Jump", 0);
            }

        }

    }

猜你喜欢

转载自blog.csdn.net/qq_37524903/article/details/122579874