私のアプリには、プレーヤーと多くの敵(約100人以上)がいます。CGRectsは敵に適合しないため、使用したくありません。多くのスプライトを使用してcocos2dでピクセルパーフェクト衝突検出を行う方法の例はありますか?
いくつかの説明は素晴らしいでしょう;)
どうもありがとうございます!
編集:私はCCSpriteと.pngファイルを使用しています。pngには透明度がありますが、透明度のないピクセルでの衝突のみを検出する必要があります。
編集:私の敵は丸いです。
私のアプリには、プレーヤーと多くの敵(約100人以上)がいます。CGRectsは敵に適合しないため、使用したくありません。多くのスプライトを使用してcocos2dでピクセルパーフェクト衝突検出を行う方法の例はありますか?
いくつかの説明は素晴らしいでしょう;)
どうもありがとうございます!
編集:私はCCSpriteと.pngファイルを使用しています。pngには透明度がありますが、透明度のないピクセルでの衝突のみを検出する必要があります。
編集:私の敵は丸いです。
円と円の衝突が最も簡単です。そして、計算が最も速いです。プレーヤーの半径と敵の半径を知っているといいのですが。20をプレーヤーの半径、10を敵の半径とします。簡単な計算は次のようになります。 :
float dx = player.spr.x - enemy.spr.x;
float dy = player.spr.y - enemy.spr.y;
float dxy = dx*dx + dy*dy;
float collisionRad = (20+10)*(20+10);
if(dxy<= collisionRad)
{
//collision
}
ピタゴラス定理を使用して2点間の距離を計算しています 。http://en.wikipedia.org/wiki/Pythagorean_theorem