Nur neugierig, was ein guter Weg sein könnte, um ein anständiges Kollisionssystem zu implementieren. Als Klasse, die von einer Basisentitätsklasse geerbt wurde? Momentan stecke ich fest und könnte nur ein paar bessere Ideen gebrauchen als meine eigenen.
Jede Hilfe wird geschätzt!
Bearbeiten: Sorry, es ist 2D-Kollision, aber ehrlich gesagt suche ich nicht nach bestimmten Kollisionsmethoden. Ich schaue mehr über die Implementierungslinien. Ich bin nur neugierig auf einige der gängigen Methoden zur Implementierung von Kollisionssystemen wie:
Sollte das gesamte Kollisionssystem eine eigene Klasse sein? Was sollte, wenn überhaupt, vererbbar sein?
Dies sind einige meiner Fragen. Entschuldigung für die Verwirrung.
Antworten:
Jedes Mal, wenn ich nach Kollisionssystemen frage, gehen Diskussionen (online) so:
Nach mehreren Diskussionen wie diesen habe ich mir endlich das Buch gekauft: http://realtimecollisiondetection.net/
Es enthält alle Aspekte des Themas, um Sie ausreichend zu informieren, damit Sie entscheiden können, was für jeden Fall zu tun ist.
quelle
Dies ist eine Frage des Entwurfsansatzes, daher gibt es keine einzige optimale Lösung.
Ein möglicher Ansatz wäre die Erstellung einer Oberklasse für kollidierbare Objekte, die Funktionen für die Kollisionserkennung definiert und alle kollidierbaren Objektklassen von dieser Klasse erben lässt.
Wie diese Funktionen funktionieren, hängt von anderen Parametern ab, z. B. von der Art der Kollisionserkennung (Begrenzungsrahmen, Begrenzungskreis, Begrenzungspolygon, pro Pixel, ...).
quelle