【发布时间】:2020-06-13 08:26:54
【问题描述】:
所以我是 Unity 的新手,我正在关注一个名为 Brackeys 的 YouTuber,但是当我执行他的角色移动代码时,我的角色不会前进或后退,它会左右移动,但速度非常快。 我是这方面的新手,所以我对此了解不多。 这是代码:
using UnityEngine;
公共类 PlayerMovement : MonoBehaviour {
public Rigidbody rb;
private float forwardForce = 2000f;
public float sidewaysForce = 500f;
void FixedUpdate()
{
rb.AddForce(0, 0, forwardForce * Time.deltaTime);
if (Input.GetKey("d"))
{
rb.AddForce(sidewaysForce * Time.deltaTime, 0, 0, ForceMode.VelocityChange);
}
if (Input.GetKey("a"))
{
rb.AddForce(-sidewaysForce * Time.deltaTime, 0, 0, ForceMode.VelocityChange);
}
if (rb.position.y < -1f)
{
FindObjectOfType<GameManager>().EndGame();
}
}
}
【问题讨论】:
-
如果您希望使用 w 或 s 键前进和后退,则无需处理这些键。
-
那么我们如何前进和后退??
标签: c# visual-studio unity3d game-engine game-physics