私は現在、物理エンジンとしてBox2DまたはChipmunk2Dを使用できる2D物理抽象レイヤーに取り組んでいます。私は当初、Chipmunk2Dを使用していて、今はBox2Dを実装しています。私が遭遇した問題の1つは、Box2Dの最大速度(b2_maxTranslationによって定義されたもの)でした。この問題を解決するために、私は世界を拡大してBox2Dユニットに合わせることにしました。Scaling Physics World
現在、私は一定の率で縮小しています:
- 位置を
- インパルス(b2Body :: ApplyForceを呼び出す前に)(呼び出す前に、 b2Body :: ApplyLinearImpulse)
私はフィクスチャを定義するために密度を使用しているので、ボディの質量もスケールダウンします。
私が気づいたことは、これは機能しません。私が力を加えるときはいつも、体はスケールが高いときよりもはるかに速く動く。
ボディを正しく更新するためにスケールする必要があるものがありますか、あるいはインパルスとフォースを他の方法でスケールする必要がありますか?
良い提案ではありますが、値の縮尺を決めるものではありません。私は別の答えを投稿して、どのようにして終わったかを示します。 –