14

物理シミュレーションには box2d を使用しています。キーを押すたびに体にインパルスを加えることで、矢印キーを使用して円を動かしています。残念ながら、円の動きは耐え難いほど遅く、実際の物理的な体のように加速しているようには見えません。私の世界の寸法は 400x800 ピクセルです。円本体の半径は 20f です。

これによると、作成時に円の半径を縮小し、塗装時に体の位置を取得してから拡大することで問題を解決できます。まったく違いはないようです。ここに欠けているステップや設定はありますか?

ペーストビンのコード

4

2 に答える 2

4

はい、使用するサイズには違いがあります。Box2d浮動小数点数で動作するため、精度が制限され、シミュレーションの品質が異なります。Box2dサイズの動的ボディで最適に動作するように調整されています0.1 to 10

したがって、一般的には、物理​​学には1つの単位を使用し、グラフィックスには他の単位を使用することをお勧めします。

今あなたの質問に。物体の速度は、衝突、摩擦(一方の物体がもう一方の物体の上を滑っている場合)、およびの影響を受けlinear dampingます。したがって、どの値をlinear damping使用しているかを確認してください(私が覚えているように、デフォルトではゼロ以外です)。私の知る限り、速度の制限はありませんが、同じタイムステップを使用すると、速度が高くなると衝突の品質が低下します。

于 2013-02-08T15:39:23.250 に答える