2016-03-25 9 views
1

Erste hey und Dank an alle, die meine Frage betrachtet,Broad Phase Kollisionserkennung - Methoden Im Vergleich

Im Gebäude eine 3D-Physik-Engine für Hexe i ein breites Phase Kollisionserkennungssystem benötigen. Die Welt, für die ich das brauche, ist sehr spezifisch und ich habe einige Ansätze verglichen und bin immer noch unsicher, was das Beste ist.

Jetzt möchte ich Sie um einige Eingaben zu diesem Thema bitten.

Eigenschaften der Welt: - Verry groß (Positionen in Doppel Vektoren) - Nur wenige Objekte (max 100) - Objekte haben komplexe Collider (Montage von Primitiven - durchschnittlich 10 bis 50) - Objekte werden oft gruppierten in Gruppen (durchschnittlich 2 bis 10) - Objekte bewegen sich ständig - Nur wenige statische Objekte

ich habe 2 Optionen im Fokus (aber offen für andere): - Sphere oder Buchsbaumachse ausgerichtet - Spartial Partitionierungs

Der Kugelbaum mit binärer Struktur (max. 2 Objekte pro Knoten) könnte der beste sein.

Was ist das Schnellste? Gibt es eine Möglichkeit zu erzählen, ohne jede einzelne Möglichkeit auszuprobieren?

Ich hoffe, Sie haben einige Vorschläge.

mrsunshine

+1

Große Domäne, geringe Anzahl von Objekten: klingt wie keine Partitionierung und nur Sweep-and-Prune. –

Antwort

0

meist Physik-Engines implementieren da draußen eine Art Dynamic AABB tree.

Sie etwas komplizierter als Kugel Bäume sind, aber besser verhalten und erzeugt weniger falsch positive Kollisionen, insbesondere bei Objekten mit hohen Geschwindigkeit.

Sie ermöglichen auch, die verschiedenen Gruppen von Objekten in Ihrem Fall leicht zu isolieren und sie unabhängig zu simulieren, indem Sie den Baum in einer bestimmten Höhe schneiden.

Ihre komplexen Kollisionsformen können auch einen eigenen AABB-Baum haben, um die endgültige Erkennung von konvexen und konvexen Kollisionspaaren zu beschleunigen, die dann in den globalen AABB-Baum integriert werden können.

+0

Ich habe für jede komplexe Kollisionsform einen binären Kugelbaum mit einem eigenen Baum gewählt. Der Vorteil ist, dass die Kugelpositionen im Baum einfach durch ein Objekt in eine Weltmatrix umgewandelt werden müssen, so dass keine Einfügung oder Neuberechnung der umgebenden Kugeln erforderlich ist der Kollisionsformbaum – MrSunshine