qq_37296877 2017-05-01 04:42 采纳率: 61%
浏览 947
已采纳

求大神, unity的问题

using UnityEngine;

public class PlayerMovement : MonoBehaviour
{
public float speed = 6f;

private Vector3 movement;
private Animator anim;
private Rigidbody playerRigidbody;
private int floorMask;
private float camRayLength = 100f;

void Awake()
{
    floorMask = LayerMask.GetMask ("Floor");
    anim = GetComponent<Animator> ();
    playerRigidbody = GetComponent<Rigidbody> ();
}

void FixedUpdate()
{
    float h = Input.GetAxisRaw ("Horizontal");
    float v = Input.GetAxisRaw ("Vertical");
    Move (h, v);
    Turning ();
    Animating (h, v);
}

void Move(float h, float v)
{
    movement.Set (h, 0, v);
    movement = movement.normalized * speed * Time.deltaTime;
    playerRigidbody.MovePosition (transform.position + movement);
}

void Turning()
{
    Ray camRay = Camera.main.ScreenPointToRay (Input.mousePosition);

    RaycastHit floorHit;

    if (Physics.Raycast (camRay, out floorHit, camRayLength, floorMask)) 
    {
        Vector3 playerToMouse = floorHit.point - transform.position;
        playerToMouse.y = 0.0f;

        Quaternion newRotation = Quaternion.LookRotation (playerToMouse);
        playerRigidbody.MoveRotation (newRotation);
    }
}

void Animating(float h, float v)
{
    bool walking = h != 0f || v != 0f;
    anim.SetBool ("IsWalking", walking);
    Debug.Log ("IsWalking的值 = " + walking);
}

}

求大神 Move这个函数 为什么还要加normalized GetAxisRaw返回的不就是
-1或1的确定值吗 不带平滑滤波 这个normalized没必要吧

为什么还要 * Time.deltatime FixedUpate不是固定时间更新吗 与帧率无关
这个 deltatime 有什么用

代码是很好的 标准的官网代码

  • 写回答

2条回答 默认 最新

  • 我听到你了 2017-05-02 05:41
    关注
    C#中normalized 是标准化,忽视大小只取方向的向量,然后再乘以速度和时间为了得到movement 的向量
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条