根据物理学的朝向,将汽车扔出赛道

时间:2019-02-01 11:45:34

标签: unity3d

我当时正在从事《汽车大战》游戏,所以我需要扔掉越过电路边界的汽车。

下图清楚地说明了我的观点: enter image description here

现在,按照我的编程设置,我需要通过手动施加的力/速度来抛掷我的汽车,并且我想朝着抛掷汽车的方向翻转汽车。

我对此进行了尝试,但未能获得预期的结果。

myRigidbody.AddForce(transform.forward * 80f);

Vector3 currentRotation = transform.eulerAngles.normalized;
myRigidbody.angularVelocity = new Vector3(currentRotation.x * Random.Range(1f, 4f), Random.Range(1f, 2f), currentRotation.z * Random.Range(1f, 2f));

这是汽车检查员的设置: enter image description here

现在就此分享您的侧面建议,我想根据跳水赛车的侧面手动给出力和角速度。

1 个答案:

答案 0 :(得分:0)

您可以使用AddRelativeTorque沿x轴施加角速度:

rigidbody.AddRelativeTorque(new Vector3(Some Value, 0, 0), ForceMode.Impulse);

然后AddRelativeForce将汽车向前推。

rigidbody.AddRelativeForce(new Vector3(0, 0, Some Value), ForceMode.Impulse);