Hi
Ich brauch mal Hilfe bei einer Berechnung einer Winkeldistanz.
Ich stehe hier und gucke Richtung 10°.
Ich will aber mein Kumpel ansehen. Um ihn zu sehen
muss ich nach 340° sehen.
Ich weiss, auf welche Seite ich mich drehen muss (siehe Code),
aber nicht um wie viel grad.
Wie kann ich das berechnen?
Es geht darum, ein Charakter zu drehen.
Mit dem Code berechne ich die Richtung:
Winkel = Zielwinkel (zum Kumpel)
PlayerR = Mein momentaner Winkel
Die variable steps, berechnet mit dem faktor 0.1 * distance (diese Distanz will
ich eben berechnen können), ergibt die Geschwindigkeit der Drehung.
Je näher ich Richtung Kumpel sehe, desto langsamer dreht der Charakter
(gesmoothete Drehung).
Man könnte ja einfach:
Aber das geht nicht, dann wäre die Distanz zb wie oben im Beispiel (mit 10° und 340°) 330°, aber tatsächlich wäre sie ja 30°, denn ich drehe mich ja nie mehr als 180°.
Hoffe jemand versteht mich ^^
mfg
Juhu
Ich brauch mal Hilfe bei einer Berechnung einer Winkeldistanz.
Ich stehe hier und gucke Richtung 10°.
Ich will aber mein Kumpel ansehen. Um ihn zu sehen
muss ich nach 340° sehen.
Ich weiss, auf welche Seite ich mich drehen muss (siehe Code),
aber nicht um wie viel grad.
Wie kann ich das berechnen?
Es geht darum, ein Charakter zu drehen.
Mit dem Code berechne ich die Richtung:
Winkel = Zielwinkel (zum Kumpel)
PlayerR = Mein momentaner Winkel
Code:
If ((Winkel - PlayerR) >= 0 Or (Winkel - PlayerR) < (-180)) And ((Winkel - PlayerR) < 180) Then steps = -(0.1 * distance) 'drehe links herum (negative Zahl) ElseIf ((Winkel - PlayerR) < 0 And (Winkel - PlayerR) > (-180)) Or ((Winkel - PlayerR) > 180) Then steps = (0.1 * distance) 'drehe Rechts herum (positive Zahl) End If
ich eben berechnen können), ergibt die Geschwindigkeit der Drehung.
Je näher ich Richtung Kumpel sehe, desto langsamer dreht der Charakter
(gesmoothete Drehung).
Man könnte ja einfach:
Code:
distance = Int(PlayerR - TargetR)
Hoffe jemand versteht mich ^^
mfg
Juhu
Comment