我正在做android遊戲,使用box2d物理,我有車輛,車輪使用WheelJoints連接到主車身。現在我正在尋找加快這些車輛,同時也限制了他們的速度一定值取之有道,目前我與這樣做:Box2d - 加速和限制車輪的速度
public void accelerate(int direction)
{
if (Math.abs(wheel1.getAngularVelocity()) < maxSpeed)
{
wheel1.applyAngularImpulse(accelerateRatio * direction);
wheel1.applyAngularImpulse(accelerateRatio * direction);
}
}
其中:
- WHEEL1和wheel2是我的車輪車身。
- int方向是我們想要加速的方向(1右,-1左)
- accelerationRatio - 加速度的比例,例如10。
- MAXSPEED - 車輛的最大速度,如12等
我不認爲它是一個完美的解決方案,尤其是因爲它有惱人的錯誤,而可以說加速的權利,而且比加速離開,車輛有首先減速,因爲有最大速度檢查。