3

常に互いに一定の距離にある2つの球があります。それらは、距離が一定である限り、あらゆる自由度で動き回ることができます。それらが目に見えない棒によって魔法のように接続されていると想像してください。これらの球体を動かすために、物理シミュレーション中にさまざまな力がこれらの球体に適用されます。

球体には 2 つの Bullet SphereShapesを使用しています。一定の距離と接続をシミュレートするために、これら 2 つの球の間でどのような制約(ジョイント) を使用できますか?

これらの 2 つの球を接続するには、仮想形状 (円柱? カプセル?) を導入し、球に接続するには、その 2 つの端のそれぞれに球状の拘束 (ボールソケットジョイント) を導入する必要があるように思えます。

この設定を実現するためのより良い方法はありますか? どのような制約を使用しますか?

4

1 に答える 1

1

Point2PointConstraint (ボールとソケット)から独自の制約を作成します。

行 98 は、変更する必要があるものです。基本的に、2 つのオブジェクト間の必要な距離を知る新しい種類の拘束を作成する必要があります。ワールド空間 ( depth == 0 ) でpivotAInWpivotBInWを一緒に一致させようとする代わりに、pivotAInWpivotBInWを結合するベクトルの長さが distance に等しい場合、深度変数をゼロにする必要あります。両方のピボットが空間内の同じポイントにあり、衝撃を適用する方向 (x 軸など) を強制する特殊なケースからコードを保護したい場合があります。

于 2013-03-03T20:48:22.487 に答える