私は40個のCCSpriteオブジェクトを使用したゲームを設計しています。私はそれらの間の衝突を検出する必要があります。私は2つのスプライト間の衝突を検出することができます。今、残りのすべてのオブジェクトに対して1つのオブジェクトをチェックするにはどうしたらいいですか? FORループを使用していますか?またはこれを行う他の方法がありますか?Cocos2Dの衝突検出
答えて
私は最初の反復ではforループを実装して、それが十分速いかどうかを確認するべきだと思います。
もしそうでなければ、あなたのゲームエリアを長方形に分割し、あなたのオブジェクトを長方形(複数の長方形に重なっているオブジェクトがすべてに属する)に配布することができます。その後、衝突を行うと、最初のオブジェクトが配置されている四角形のみをチェックできます。もちろん、これはあなたがそこにいるものに大きく依存します。すべてのオブジェクトがたくさん動き回ると、それほど熱い考えではないかもしれません。あなたはBOX2DについてBOX2Dやシマリス
を使用dob't
なぜこのlinkが役立ちます。
次のコードはCocos2Dの場合に役立ちます。あなたは次の行
shape-> collision_type = kCollisionTypeParticleを追加する必要が
。
cpSpaceAddCollisionHandler(space_、kCollisionTypeParticle、kCollisionTypeParticle、collisonDetect、NULL、NULL、NULL、self);ここで
collisonDetectは、我々はとして登録する必要があります方法です。
cpBool collisonDetect(cpArbiter * ARB、構造体cpSpace *空間、void *型データ) {
*層=(*)データ。
[layer collisonDetect:arb];
return cpTrue;
}
今ここで、ここでは、コード
の残りの部分を処理します - (無効)collisonDetect:(cpArbiter *)ARB {
のNSLog(@」 COLLISION DETECTED ");
}
- 1. Box2d(cocos2d)の衝突検出
- 2. Cocos2Dの衝突検出
- 3. cocos2dスプライト衝突検出バウンディングボックス
- 4. Cocos2dゲームでの衝突検出?
- 5. cocos2dチェック衝突
- 6. n体衝突検出とペアワイズ衝突検出の違いは?
- 7. OpenGL衝突検出
- 8. スヌーカーボール衝突検出
- 9. cocos2d:2つの円の衝突を検出する
- 10. cocos2dで敵の頭との衝突を検出する
- 11. cocos2d-xの衝突検出にbox2dを使用する方法
- 12. Cocos2dでの粒子による衝突検出
- 13. cocos2d:衝突検出が正しく機能しない
- 14. XNAの衝突検出
- 15. Androidの衝突検出
- 16. 衝突検出のiOS
- 17. ボールの衝突検出
- 18. Delphiのカスタムアニメーション - 衝突検出
- 19. Androidでの衝突検出
- 20. JavaScriptの衝突検出
- 21. XNAの衝突検出2d
- 22. Javaのサークルサークル衝突検出
- 23. Libdgx Box2D - 衝突の検出
- 24. jQueryの衝突検出
- 25. Locorocoゲームの衝突検出
- 26. pygameキャノンボールの衝突検出
- 27. Box2Dの衝突検出?
- 28. cocos2d CCSprite衝突の問題
- 29. 衝突検出ココス2D
- 30. 衝突検出Actionscript 3