Ich schreibe ein einfaches Spiel mit einem einfachen Kollisionserkennungssystem.Iteration Array über Array ohne Duplikate
Im Moment habe ich diesen Code für das Array gegenüber dem gleichen Array iteriert, so kann ich überprüfen, ob die Objekte dicht beieinander sind und wenn sie kollidieren:
var objects = []; //assume this is not empty
for(i=0;i<objects.length;i++){
for(a=0;a<objects.length;a++){
if(a != i){
//collision handling
}
}
}
Aber die Hauptproblem mit diesem Code ist, dass ich Duplikate habe. Zum Beispiel überprüfe ich i und a, aber irgendwo später überprüfe ich a und i mit den gleichen Werten.
Ich habe versucht mit einem Array, das speichert, welche Objekte mit welchen Objekten überprüft werden, aber es gibt mir einen großen fps-Drop.
Was ist die beste Methode, dies zu tun?
was ist der Inhalt des 'objects' Array? –
Es ist nur und Array, die Kreise mit X-Position, Y-Position, Radius und X-und Y-Vektor enthält. – ruttydm