Ich versuche, den Satz der Trennachse in C # zu implementieren. Ich habe eine Funktion, die den minimalen Translationsvektor zwischen zwei Polygonen berechnen kann. Ich kann jedoch scheinbar keine Funktion erstellen, die den minimalen Übersetzungsvektor zwischen einem Polygon und mehreren anderen Polygonen berechnet. Ehrlich gesagt, ich arbeite seit Monaten daran und bin einer Lösung nicht näher gekommen und konnte online keine Lösung finden. Es gibt immer einige Randfälle, die nicht das richtige Ergebnis liefern, was zu Fehlern mit hoher Priorität in meinem Spiel führt.
Hier sind häufige Randfälle, die nicht richtig funktionieren:
Gibt es eine bekannte Lösung für dieses Problem? Alles, was ich finden kann, sind Leute, die sagen "Führe einfach den SAT für jedes Polygon aus", aber dies erzeugt selten den minimalen Übersetzungsvektor.
Jede Hilfe wäre sehr dankbar.