私は現在、スペースインベーダーのようなゲームで2D衝突検出にこのコードを使用しています:
for(byte k = 0; k < enemies.length; k++) {
if(shot.x < enemies[k].getTexture().getImageWidth() && shot.x > enemies[k].pos.x) {
if(shot.y - 1.2f * frameCount < enemies[k].pos.y && shot.y - 1.2f * frameCount > Main.enemies[k].pos.y - enemies[k].getTexture().getTextureHeight()) {
Main.enemies[k].hit = true;
}
}
}
ただし、このタイプの衝突検出には重大な欠陥が 1 つあります。下から来る衝突しか検出できません。どうしてこれなの?