Ich implementiere meine eigene Raycasting-Bibliothek, um zu lernen, wie es funktioniert. Als Ausgangspunkt habe ich eine Box, die sich dreht und mit Hilfe von Strahlen die verschiedenen Hindernisse erkennt, denen sie auf ihrem Weg begegnet. Erwähnenswert: Ich habe dies funktioniert mit der Linie AABB Schnittpunkt-Methode. Die folgende Abbildung zeigt, wie es funktioniert:Line Intersection mit gedrehtem Box Collider-Objekt
Mein Problem kommt, wenn ich eine der oben genannten Wände drehen und versuchen, die gleiche Methode zu verwenden, um die Kollision der Strahlen zu überprüfen:
Ich habe nach einer möglichen Lösung gesucht, um das zu korrigieren, indem ich verschiedene Algorithmen wie den Trennachsensatz und Cohen-Sutherland verwende, aber ich konnte nichts finden, was ähnlich wie AABB-Schnittpunkt funktioniert, aber mit OBB. Irgendwelche Ideen, wie man das Problem im zweiten Bild rundet, wo es mit den Grenzen des Objekts kollidiert, wenn es gedreht wird? Ich verwende Unity und C#.