0

Box2d (libgdx) を使用して、BMX バイクとそのライダーを実装しています。バイクは一体であり、ライダーの各手足は一体です。ジャンプ中に空中にいるとき、プレイヤーはライダーではなくバイクをコントロールできる必要があります。ライダーはハンドルバーとペダルで自転車に接続されているため、自転車の動きが制限される時点で腕/脚が完全に伸ばされるまで、四肢は自転車に追従します。

これを達成するために(おそらく)ジョイントを使用する良い方法を誰かが提案できますか? バイクとライダーの両方が重力の影響を受ける必要がありますが、ライダーの体が重力によって倒れないようにする必要があります。手足を硬くして重力の影響を受けなくても構いません (つまり、内部の位置) が、手足は自転車の影響を受けなければなりません。ライダーの手足の内側の位置は、たとえばバイクが地面に激しく着地する場合などに影響を受ける必要がありますが、これは 2 番目の優先事項です。

手足の関節に角度制限を設定して、倒れないようにすることもできますが、自転車を動かそうとしても動きません。

4

1 に答える 1

0

手足が自転車に追従している場合、腕/脚を完全に伸ばすにはどうすればよいですか?

最初に、手足の関節に制限を設定して、激しい衝突 (肘関節が後方に回転するなど) で手足が裏返しにならないようにする必要があると思います。

次に、静止位置にある各ジョイントの目標角度を決定し、タイム ステップごとにジョイント モーターを使用してジョイントを静止位置に移動させることができます。これらのジョイント モーターを、ライダーを直立に保つのに十分なだけ強くするが、強すぎないようにする場合、ライダーは激しい着地の影響を受けるはずです。

于 2012-09-27T06:07:29.563 に答える