私はそうのように私のCCSceneにb2BodyDefを追加してい:Box2Dの衝突検出?
b2BodyDef platformBodyDef;
platformBodyDef.type = b2_dynamicBody;
platformBodyDef.position.Set(40, 495);
platformBodyDef.userData = platforms;
_body = _world->CreateBody(&platformBodyDef);
私は接触リスナーを使用することになっています知っているが、私はBOX2Dに新しいですし、これは私がそれをコーディングでしょうので、どのように私には他の言語のようなものです私のCCScene内のCCSpritesの1つがこのb2BodyDefと衝突するかどうかを確認しますか?このb2BodyDefはアニメーション化されますが、私はそれについて今心配していません。 私はこれをどのようにすることができるか知っていますか?
ありがとうございます!
私はこのスレッドを作ったので、私は正常にプロジェクトに追加しました。しかし、私が現在直面している問題は、1つの衝突に対して複数のコールバックを停止する方法です。これが可能かどうか知っていますか? –
遅れてご返事申し訳ありません。うまくいけば、他の人に役立つはずです... contactListenerのprecalcメソッドでは、イベントを取り消すことができます。だからあなたは、そのメソッドで削除されるタグでボディにタグを付けてから、イベントをキャンセルします。その後、すべてのボディーを反復して位置を更新するなど...スプライトが削除されるタグが付いている場合は削除します。 – tustvold
私は何をしているのですか、私はタグが衝突すると直ちにそれを変更し、衝突if文はその衝突のためにもう呼び出されません! –