fließende Spielerdrehung

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

faeX

Betreff: fließende Spielerdrehung

BeitragFr, Apr 17, 2009 16:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine eigentlich ziemlich banale, aber verteufelte Frage Rolling Eyes

Ich möchte, dass mein Spieler auf die Maus zeigt.
Atan2 lässt grüßen - soweit kein Problem.

Allerdings möchte ich eine fließende Bewegung, à la:

Code: [AUSKLAPPEN]
PlayerAngle# = PlayerAngle*.95 + Atan2(MouseX()-(GraphicsWidth()/2), MouseY()-(GraphicsHeight()/2))*.05


Eigentlich kein Problem (wenn der Spieler in der Mitte ist), nur: wenn die Maus den Winkel 0 überschreitet, dreht der Spieler komplett andersrum, letztendlich zur richtigen Position, aber falschrum. Ist ja auch logisch, aber wie vermeide ich das?

Mfg Wink

SpionAtom

BeitragFr, Apr 17, 2009 16:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du den aktuellen Spielerwinkel weißt, und den Winkel, den der Spieler einnehmen soll, dann solltest du auch herausfinden, welche Drehrichtung schneller zum "End-Winkel" führt.
Will ja nicht zu viel verraten...
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080

D2006

Administrator

BeitragFr, Apr 17, 2009 16:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Du schaust, ob sich Soll-Winkel und Ist-Winkel um über 180 Grad unterscheiden. Ist das der Fall, dann kann es nämlich zu deinem Problem kommen. Du schaust dann einfach, welcher der Werte der größere ist und subtrahierst diesen mit 180.
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard
Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium
Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group