微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

通过脚本循环动画?统一 2D

如何解决通过脚本循环动画?统一 2D

这可能不像标题所说的那样。

但我基本上是在尝试通过脚本播放动画。一切顺利,有错误

ArgumentException:不能在 Playables 中使用旧剪辑。

你也能帮我一下吗?它正在播放,但我已将循环设置为 true,出于某种原因,它不会循环。有没有办法通过脚本循环播放动画?

这是我目前的代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class playerMovement : MonoBehavIoUr
{
    public Rigidbody2D rb;
    public float moveSpeed = 1f;
    public Animation idleAnim;


    public void Start () {
        idleAnim.Play();
    }
    public void FixedUpdate()
    {
        if( Input.GetKey("a")) {
        rb.AddForce(Vector2.left * moveSpeed);
        }

        if ( Input.GetKey("d")) {
        rb.AddForce(Vector2.right * moveSpeed);
        }
    }

}

感谢您的帮助!

(如果你没有注意到,我正在创建一个空闲动画)

解决方法

您应该将动画标记为循环播放,选择动画资源并在检查器中将标志设置为 true。此外,您应该使用 Animtor 组件,为其添加空闲动画,添加另一个空状态,设置一些布尔参数来触发空闲动画和空动画状态之间的转换,例如将其命名为“isIdle”,(您可能会添加将来会有更多动画状态,例如移动动画),在您的代码中,您可以更改 Animator 的“isIdle”参数,移动时将其设置为 false,停止移动时将其设置为 true。总的来说,我强烈建议您观看有关 Unity 中动画最终状态机的某种教程,以便您更好地了解这一切。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。