1
Box2D回転ジョイントが分離する原因は何ですか?
ダイナミックボディ(長方形)とシンプルな回転ジョイント(低い角度と高い角度)を使用してラグドールを作成しました。ぼろ人形が地面(静的な物体)にぶつかると、身体がそわそわして関節が分離します。 ボディが地面にくっついているように見え、ラグドールの勢いが関節を引き離します(下のスクリーンショットを参照)。 関連しているかどうかはわかりませんが、Box2DにBadlogic GDX Javaラッパーを使用しています。以下は、最も関連性の高いコードだと私が思うスニペットです。 private RevoluteJoint joinBodyParts( Body a, Body b, Vector2 anchor, float lowerAngle, float upperAngle) { RevoluteJointDef jointDef = new RevoluteJointDef(); jointDef.initialize(a, b, a.getWorldPoint(anchor)); jointDef.enableLimit = true; jointDef.lowerAngle = lowerAngle; jointDef.upperAngle = upperAngle; return (RevoluteJoint)world.createJoint(jointDef); } private Body createRectangleBodyPart( float x, float y, float width, float height) …