Jump to content
Unity Insider Forum

Rotation Equals


Kojote

Recommended Posts

Grüße!

Ich habe ein Problem mit der Bedingungsabfrage einer Rotation, diese sieht so aus:

charakter.transform.rotation == Quaternion.Euler(0, 0, 0)

Problem ist nun, der Charakter hat laut Debug die genaue Ausrichtung 0,0,0, die Bedingung müsste also True sein. Trotzdem springt er mir bei der if-Abfrage in die Else und meint die Rotation wäre nicht gleich. Habs nun schon mit den Vergleichsoperatoren und Equals probiert, bringt beides nix, der Wert ist immer False. Könnte nun noch eine extra Methode schreiben, ob er ungefähr diesen Wert erreicht, geht das jedoch nicht einfacher als wieder ein übelstes Konstrukt zu bauen, nur um zwei Variablen zu vergleichen?

Hoffe ihr könnt mir helfen!

Grüße von Kojote

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn du deinen Charakter drehst, kann er halt sehr, sehr nah an 0,0,0 drankommen, aber dann eben doch nicht. Um zwei Rotationen auf "so gut wie gleich" zu überprüfen, brauchst du aber kein dickes Konstrukt, sondern einfach nur sowas:

if (Quaternion.Angle(rotationA, rotationB) <= 0.001f)

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...