Ich versuche an einem Projekt für die Schule zu arbeiten, aber ich kämpfe wirklich, damit meine Kugeln das feindliche Objekt perfekt treffen. Bisher kollidieren sie gelegentlich an einem zufälligen Ort auf dem Feind, aber das funktioniert nur teilweise, was frustrierend ist!Eine Kugel in DirectX mit einem Feind kollidieren lassen
Das ist, was ich bisher habe:
for (int i = 0; i < 200; i++){ // 200 is number of bullets I use
for (int k = 0; k < game.enemiesVec.size(); k++){
if ((((bullets[i].pos.x + 0.15f) >(game.enemiesVec[k].x))) && ((bullets[k].pos.x - 0.15f) < (game.enemiesVec[k].x)) &&
(((bullets[i].pos.y) < (game.enemiesVec[k].y -0.15f)) && ((bullets[k].pos.y) > (game.enemiesVec[k].y +0.15f)))){
//do stuff
game.enemiesVec[k].x = 5;
}
}
}
Ich bin ahnungslos TBH, ich weiß, ich muss irgendwie vielleicht den Radius des Objekts erhalten, so dass es einen größeren Bereich mit kollidiert hat, aber ich Keine Ahnung!
Hoffentlich kann jemand helfen!
Das war eine großartige Erklärung Entschuldigung für die späte Antwort danke :) –