2012-02-25 11 views
1

Box2dを使用して、環境のようなトップダウンスペースをシミュレートしています。私はインパルスが適用され、「惑星」の近くで(空間を介して)飛行する物体を持っています。世界自体に重力はありませんが、私は惑星と星を個々の重力でセットアップして、他の動的オブジェクトが落下/引っ張られるようにしたいと考えています。どうすればこれを達成できますか?Box2d - オブジェクトアトラクション/重力を与える

+2

これは役立ちます:http://stackoverflow.com/questions/6758060/simulate-newtons-law-of -universal-gravitation-using-box2d – iforce2d

答えて

1

体/星の数が少ない場合は、Step()関数を呼び出す前に体に重力をかけるだけで済みます。

しかし、システムが大きくなると遅くなると思います。あなたの星や惑星が動いていない場合、2D空間の各点で総重力を事前に計算することができます。この事前計算された重力の値をいくつかの2D配列に保存して(あるステップで)、このルックアップテーブルから力を適用します。

関連する問題