1

弾丸物理学を使用したことがある方のために...

hello worldの例http://www.bulletphysics.org/mediawiki-1.5.8/index.php/Hello_Worldを読んで実行しましたが、次に進む場所がわかりません。

hello worldチュートリアルは、両方とも剛体であるbtStaticPlaneShapeとbtSphereShapeで構成されていました。球は静的な平面形状で跳ね返りましたが、問題ありません。

ただし、別の球を別の位置に作成すると、Bulletは2つの球の形状間の衝突を記録しませんが、両方ともbtStaticPlaneShapeから自動的に跳ね返ります。btStaticPlaneShapeが衝突するオブジェクトを自動的にバウンスさせるのは、どのような内部魔法ですか?

Bulletには、衝突後にオブジェクトを自動的に跳ね返す設定がありますか?または、手動で衝突をテストし、結果として生じる力を自分で適用する必要がありますか?

ありがとう。

4

1 に答える 1

0

Bulletが互いに衝突できるとは思わない状態で、誤って球を作成した可能性があります。ほとんどデフォルトに固執し、Hello Worldプログラムに別の球を追加するだけの場合、Bulletはそれらの衝突に気づいて反応するはずです。Hello Worldを変更して復元をゼロより大きい値に設定しない限り、実際にはバウンスしませんが、衝突します。たとえば、最初の球の真上に2番目の球を追加し(球を作成するコードブロックの周りにforループを配置し、ループ変数を使用して原点のy値を決定することにより)、シミュレーションを拡張して、十分に長く実行されるようにしました。両方とも飛行機に到達します。最初のものは飛行機に着陸してそこに休み、2番目のものは最初に着陸してそこに休みます。

これで問題が解決しない場合は、コードの一部を投稿することをお勧めします。

于 2010-12-23T04:04:30.543 に答える