本文介绍: 可以设置Settings中的“过渡持续时间”长短来更改两个动画的过渡快慢。

角色按键Character Controls

一、脚本操作

  1. 设置脚本
  • 设置基本键盘操作
    //水平轴
    float horizontal = Input.GetAxis("Horizontal");
    //垂直轴
    float vertical = Input.GetAxis("Vertical");
    //创建方向向量
    Vector3 dir = new Vector3(horizontal,0,vertical);
    //面向向量
    transform.rotation = Quaternion.LookRotation(dir);
  • 初始化
    private Animator animator;
    
    void Start()
    {
        animator = GetComponent<Animator>();
    }
    
    void Update()
    {
    //水平轴
    float horizontal = Input.GetAxis("Horizontal");
    //垂直轴
    float vertical = Input.GetAxis("Vertical");
    //创建方向向量
    Vector3 dir = new Vector3(horizontal,0,vertical);
    
    if(dir!= Vector3.zero)
    {
    //面向向量
    transform.rotation = Quaternion.LookRotation(dir);
    //向前方移动
    transform.Translate(Vector3.forward*2*Time.deltaTime);
    //播放跑步动画
    animator.SetBool("IsRun",true);
    }
    else
    {    //播放站立动画
        animator.SetBool("IsRun",false);
    }
    
    
    }

  1. 将跑步动画添加到动画器中 ,并添加Bool “IsRun“,动画过渡Conditions选择IsRun
  • 在这里实现的是从动画1切换到动画2后保留动画2的状态,直到有操作改出,因此不使用Trigger而是Bool

在这里插入图片描述

  1. 选择动画1到动画2的过渡,在Conditions的IsRun属性中选择true

在这里插入图片描述


  1. 选择动画2到动画1的过渡,在Conditions的IsRun属性中选择false

在这里插入图片描述


5.可以设置Settings中的“过渡持续时间”长短来更改两个动画的过渡快慢

原文地址:https://blog.csdn.net/m0_47351846/article/details/136015905

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_65789.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注