Unity3d 如何在unity汽车游戏中获取汽车速度

Unity3d 如何在unity汽车游戏中获取汽车速度,unity3d,Unity3d,我已经开始了汽车游戏,并开发了AI,汽车控制脚本 现在我想知道汽车的速度 我使用了下面的代码 BackLeftWheel.wheelTorque = EngineTorque / GearRatio * 4; 汽车运行平稳,但我想知道它的准确速度。我不熟悉您正在使用的汽车,但只要您的脚本能够访问汽车的变换,您就可以随时根据时间检查最后位置,并以这种方式更新速度 Vector3-prevpos; 无效更新() { Vector3距离=transform.position-prevpos; p

我已经开始了汽车游戏,并开发了AI,汽车控制脚本

现在我想知道汽车的速度

我使用了下面的代码

BackLeftWheel.wheelTorque = EngineTorque / GearRatio * 4;

汽车运行平稳,但我想知道它的准确速度。

我不熟悉您正在使用的汽车,但只要您的脚本能够访问汽车的变换,您就可以随时根据时间检查最后位置,并以这种方式更新速度

Vector3-prevpos;
无效更新()
{  
Vector3距离=transform.position-prevpos;
prevpos=变换位置
Vector3 distancepertime=行驶距离/时间.deltaTime;
}

如果汽车有刚体,只需执行rigidbody.velocity.magnitude即可获得速度

不过需要注意的是:不要在Update中调用GetComponent,在Start中调用它并存储结果。 另外:计算震级需要平方根运算。如果可能的话,这应该在更新中避免(尽管,在项目中有一些可能不会太重要)