Ich habe Probleme mit der Vermeidung nicht ausgerichteter Kollisionen, was meiner Meinung nach ein seltener Fall ist. Ich habe zwei Objekte so eingestellt, dass sie sich aufeinander zu bewegen, jedoch mit einem leichten Versatz, sodass sich eines der Objekte leicht nach oben und eines der Objekte leicht nach unten bewegt.
In meinem nicht ausgerichteten Algorithmus zur Steuerung der Kollisionsvermeidung finde ich die Punkte auf der Vorwärtslinie des Objekts und der Vorwärtslinie des anderen Objekts, an denen diese beiden Linien am nächsten liegen. Wenn sich diese nächstgelegenen Punkte innerhalb eines Kollisionsvermeidungsabstands befinden und der Abstand zwischen ihnen kleiner als die beiden Radien der Begrenzungskugeln der beiden Objekte ist, sollten die Objekte in die entsprechende Richtung weglenken.
Das Problem ist, dass für meinen Fall die nächsten Punkte auf den Linien so berechnet werden, dass sie wirklich weit vom tatsächlichen Kollisionspunkt entfernt sind. Dies liegt daran, dass sich die beiden Vorwärtslinien für jedes Objekt beim Passieren der Objekte voneinander entfernen. Das Problem ist, dass aus diesem Grund keine Lenkung stattfindet und die beiden Objekte teilweise kollidieren.
Hat jemand Vorschläge, wie ich den Kollisionspunkt richtig berechnen kann? Vielleicht, indem man irgendwie die Größe der beiden Objekte berücksichtigt?