Nachdem ich das Tutorial angeschaut und gesehen habe, was Sie gemacht haben, kam ich auf eine Idee.
Das einzige Problem, das Sie haben, ist, dass der Zeiger nicht auf Norden, sondern auf etwas anderes schaut, während es noch mit dem Zeichen rotiert.
In Ihrem Fall können Sie einfach einen einfachen Wert hinzufügen, der den Anfangszustand des Kompasszeigers summiert. Der Kompasszeiger rotiert weiterhin mit der Y-Drehung, aber der Kompasszeiger zeigt in eine andere Richtung als normalerweise.
public float extraOffset; /* Edit this inside the editor on playmode until
your pointer points towards your north.
Then remember that value and set it while you are not in playmode.*/
public void ChangeNortDirection() {
northDirection.z = extraOffset + player.eulerAngles.y; // Just added the simple extraoffset variable and you are good to go.
northLayer.localEulerAngles = northDirection;
}
Denken Sie auch daran, Ihre Frage so gut wie möglich zu erklären, da es wirklich schwierig sein kann, für uns zu wissen, was genau das Problem ist. Zum Beispiel sagen Sie uns, ob Ihr Spiel wird 2D oder 3D und was die ursprüngliche Idee hinter dem Thema des Problems ist.
Hoffe, das hilft Ihnen ein wenig.
Was genau ist falsch mit dem Kompass? Zeigt es in die falsche Richtung oder überhaupt nicht? – Mennolp
es dreht sich, aber seine Richtung ist falsch. Es zeigt nicht auf den richtigen Norden –
Ist das ein GameObject in der Szene nördlich fixiert oder hast du ein Kartenlayout wo du einen bestimmten Punkt als Norden haben willst? – Mennolp