Hallo Community, nach längerer Abwesenheit hier im Forum (Schule, Webprogrammierung etc.) habe ich mal wieder eine Frage . Zur Zeit programmiere ich an einem realtime (mit HTML5-Websockets) Shooter in Javascript. WebGL lässt sich mittlerweile recht gut benutzen und funktioniert auch soweit. Ich würde die Szene nun gerne in einem Octree speichern, um das Rendern zu beschleunigen und um Physik abfragen zu vereinfachen. Der Octree im Wiki, soweit ich es verstanden habe, schaut auf die einzelnen Vertices der Faces. Wenn aber ein Triangle nur den Node schneidet, aber keiner der Vertices im Node liegt würde dieses Face somit nicht erkannt. Nach 2 Tagen vergeblicher Suche frage ich einfach mal hier, ob jemand mir erklären könnte wie man am besten eine AABB-Triangle Kollision in 3D testet bzw. ob es einen anderen Weg gibt die Faces einzuordnen. (Vor allem eine kurze Erklärung wäre mir hilfreich weil wir Vektoren noch nicht richtig in der Schule hatten und ich nur die Tutorials im Wiki gelesen habe)
Registriert: Di Apr 29, 2008 18:56 Beiträge: 1213
Programmiersprache: Delphi/FPC
Hey,
ich schreib über das Thema grade meine Bachelorarbeit und ich hatte genau das gleiche Problem wie du Ich kann dir diese Seite empfehlen, da stehen so ziemlich alle Algorithmen für Kollisionserkennung drin. Ich hab mich dann für die "Method of Separating Axis" entschieden, die lässt sich auf so ziemlich jedes Objekt anwenden und ist auch relativ schnell und einfach implementiert.
Vielen Dank Bergmann, so etwas hatte ich gesucht, bisher hatte ich nur haufenweise 404 Seiten gefunden. Das mit den Separating Axis werde ich mir auch mal genauer anschauen, es scheint ja mit die schnellste Implementierung zu sein.
Registriert: Di Apr 29, 2008 18:56 Beiträge: 1213
Programmiersprache: Delphi/FPC
Ja, darauf hatte ich auch Wert gelegt, ich wollte nich erst 5000 neue Klassen schreiben und am Ende gehts trotzdem nicht. Das mit den Achsen is klein, funktioniert un man muss den vorhandenen Code kaum ändern.
Registriert: Di Mai 10, 2011 19:00 Beiträge: 43
Programmiersprache: FreePascal , C++
Such doch mal nach den Papers von Tomas Akenine-Möller ("Fast 3D Triangle-Box Overlap Testing" oder so). Ich stand vor ein paar Wochen vor dem selben Problem. Die haben mir sehr geholfen. Kann dir leider Grad keinen Link schicken.
Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.