Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(197评价)
价格: 4431.00元
[stealth秘密行动游戏开发 / 16.Stealth秘密行动游戏开发-控制主角的运动] 按下移动键角色进入移动状态速度过慢
五蕴沙门发起了问答2017-12-05
2
回复
998
浏览
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class PlayerController : MonoBehaviour
{
    public float moveSpeed = 3;

    private Animator anim;

    void Awake()
    {
        anim = this.GetComponent<Animator>();
    }

    void Update()
    {
        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");
        if (Mathf.Abs(h) > 0.1f || (v) > 0.1f)
        {
            float newSpeed= Mathf.Lerp(anim.GetFloat("Speed"), 5.6f, Time.deltaTime * moveSpeed);
            anim.SetFloat("Speed",newSpeed);
        }
        else
        {
            anim.SetFloat("Speed", 0);
        }
    }

}

我是用的是U3D 2017,动画状态机也略有不同

设置如上,开始游戏后,按下方向键需要两秒角色才会从Idel变为Run。

所有回复
发表回复
你还没有登录,请先 登录或 注册!