1

加速したりダンピングしたりせずに(一定の速度で)バレーボールのようにbox2dでボディボールを移動するにはどうすればよいですか。

これには特別な式が必要ですか?

4

1 に答える 1

1

Box2Dでは、力を使ってオブジェクトを移動します。インパルスまたは線形力を適用できます。

インパルスを適用するには、次のようにします。

myBody->ApplyForce( force, myBody->GetWorldCenter() );

または行うことによる力:

myBody->ApplyForce(force, myBody->GetWorldCenter());

フォースはb2Vecであり、次のように構築できることに注意してください。

b2Vec force = b2Vec2(0,50);

この力は体を押し上げるだけです。

放物線軌道が必要な場合は、成分xとyが0より大きい力を作成できます。

b2Vec force = b2Vec2(50,50);

その後、物理エンジンが残りを行います。

特定の位置に移動することもできますが、そうすることはお勧めしません。

力についての詳細が必要な場合は、このリンクをたどってください

于 2012-12-19T17:30:25.727 に答える