以下是一个简单的示例脚本,用于控制角色的等待、奔跑和转换动画:

using UnityEngine;

public class PlayerController : MonoBehaviour
{
    private Animator animator;

    private void Start()
    {
        animator = GetComponent<Animator>();
    }

    private void Update()
    {
        // 检测角色的移动输入
        float moveInput = Input.GetAxis("Horizontal");

        // 根据输入控制角色的移动和动画
        if (moveInput != 0)
        {
            transform.Translate(moveInput * Time.deltaTime * 5f, 0, 0);
            animator.SetBool("isRunning", true);
        }
        else
        {
            animator.SetBool("isRunning", false);
        }

        // 检测角色的转换输入
        if (Input.GetKeyDown(KeyCode.Space))
        {
            animator.SetTrigger('transition');
        }
    }
}

在上面的代码中,我们首先获取了角色的 Animator 组件,并在 Update 方法中检测了角色的移动和转换输入。如果角色在移动,我们就调用 transform.Translate 方法来移动角色,并设置 'isRunning' 参数为 true,以触发奔跑动画。如果角色不在移动,我们就将 'isRunning' 参数设置为 false,以触发等待动画。

当用户按下空格键时,我们调用 animator.SetTrigger 方法来触发转换动画。在 Animator 中,我们需要设置一个名为 'transition' 的触发器参数,并将其与转换动画的过渡条件相关联。这样,当我们在脚本中调用 SetTrigger 方法时,就会触发转换动画。

Unity 角色动画控制:等待、奔跑和转换脚本示例

原文地址: https://www.cveoy.top/t/topic/jrxj 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录