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

(61评价)
价格: 2208.00元
控制人物站立、行走、奔跑,但反应很不灵敏,且原地不动时有时也一直保持奔跑状态
qwertyuiop1发起了问答2019-10-28
4
回复
1357
浏览

设置速度大于0时行走,大于1.5时奔跑,小于0.1时回到站立动画,小于1.4时回到行走动画。

但是实际运行的时候,人物经常移动了很久还是站立姿势,直到多移动几次,才开始行走或奔跑,而且切换很不敏感。

当到达目的地之后,经常原地执行跑步动作,在Scene视图中看,发现此时人物的transform的坐标不变,但用W键工具显示的则是三条轴和交点不断地向人物身后平移,然后又回到人物坐标,循环往复。

此外,我的人物有时走到一块区域之后在game视图会消失,在Scene视图中却依旧能看见。

代码都是按照教程写的。 

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

public class Hero : MonoBehaviour
{
    public Animator anim;
    public NavMeshAgent hero;
    // Use this for initialization
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit))
            {
                hero.SetDestination(hit.point);
            }
            anim.SetFloat("speed", hero.velocity.magnitude);
        }
    }
}

 

Unity 2017.4.32f1 Personal (64bit) - Main.unity - Learn4-HistoricExploration - PC, Mac & Linux Standalone _DX11_ 2019_10_28_周一 20_31_44.mp4 预览 下载
所有回复
  • qwertyuiop1 2019-10-28

    这个是game视图出现隐身

    Unity 2017.4.32f1 Personal (64bit) - Main.unity - Learn4-HistoricExploration - PC, Mac & Linux Standalone _DX11_ 2019_10_28_周一 20_32_20.mp4 预览 下载
    还有-5条回复,点击查看
    你还没有登录,请先登录注册
  • 老师_Trigger 2019-10-29

    同学你好,这是哪个课程的项目?老师的源码测试有问题吗,可以打开老师源码看一下,可能是一些属性值没有去设置好,单看源码没什么问题

    • qwertyuiop1 2019-10-29

      老师的源码测试没有问题。

      我print(hero.velocity.magnitude)检测,速度的确是达到了变换条件的,但是动画就是不切换

      (0) 回复
    • qwertyuiop1 2019-10-29

      ok,已经发现问题了……anim.SetFloat("speed", hero.velocity.magnitude);这句语句我放在了if下,导致速度并没有实时传递,只有连续点鼠标时,能变换动画。已经改了过来!

      (0) 回复
    还有-3条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!