私はAndroid libGDXゲームエンジンに不慣れで、吊りロープを作るために何日もフォームを検索しています.
また、すべての Box2D ドキュメントを読みました。メソッドropJointがありますが、それを使用するための十分な説明がありません。
このようなロープを作るのを手伝ってくれる人はいますか?Box2d のハンギング ロープ
また、アンドロイド用の優れた libGDX ブックを検索しようとしましたが、見つかりませんでした。
あなたの助けが必要です、よろしくお願いします。
私はAndroid libGDXゲームエンジンに不慣れで、吊りロープを作るために何日もフォームを検索しています.
また、すべての Box2D ドキュメントを読みました。メソッドropJointがありますが、それを使用するための十分な説明がありません。
このようなロープを作るのを手伝ってくれる人はいますか?Box2d のハンギング ロープ
また、アンドロイド用の優れた libGDX ブックを検索しようとしましたが、見つかりませんでした。
あなたの助けが必要です、よろしくお願いします。
ループ内にいくつかの長方形の本体(box2dのsetAsBox)を作成し、回転ジョイントで相互に接続するだけです(ループの前にRevoluteJointDefを作成し、ループ内でinitialize(..)を呼び出します)。
これは私のコードです:
RevoluteJointDef jd = new RevoluteJointDef();
Body prevBody = startBody;
for(int i=0; i<ringCount; i++)
{
BodyDef bd = new BodyDef();
bd.type = BodyType.DynamicBody;
bd.angle = angle-MathUtils.PI/2;
bd.position.set(position.x + i*MathUtils.cos(angle)*EACH_RING_DISTANCE,
position.y + i*MathUtils.sin(angle)*EACH_RING_DISTANCE);
Body body = world.createBody(bd);
body.createFixture(eachRingFD);
Vector2 anchor = new Vector2(bd.position.x - MathUtils.cos(angle)*EACH_RING_DISTANCE/2f,
bd.position.y - MathUtils.sin(angle)*EACH_RING_DISTANCE/2f);
jd.initialize(prevBody, body, anchor);
prevBody = body;
}
//connect a hanging shape to rope here if exists