360 Grad drehen
-
Hallo,
ich arbeite gerade an einem 3D-Spiel, in dem sich eine Person um 360 Grad drehen können soll.
Mein bisheriger Code(Ausschnitt):// rotateX liegt zwischen -180 und 180. float rotierungX = (float) (rotateX * (Math.PI / 2 / 180)); Vector3D richtung = new Vector3D(0/*Was muss hier für ein Wert hin?*/, rotierungX); // Vector3D ist eine Klasse aus Apache Commons Math 3.4 API http://commons.apache.org/proper/commons-math/apidocs/org/apache/commons/math3/geometry/euclidean/threed/Vector3D.html
Leider kann sich die Person nur um 180 Grad drehen und dreht sich bei einem größeren Winkel nicht mehr korrekt. Wahrscheinlich liegt das an dem ersten Parameter von new Vector3D(double, double);
Ich hoffe Ihr könnt mir helfen!
Mit freundlichen Grüßen Moritz.
-
Probiere mal
float rotierungX = (float) (rotateX * (Math.PI / 180));
(zumindestens wenn du Gradmaß in Bogenmaß umrechnen willst
-
Also mir geht hier schonmal der Einsatz von Winkelfunktionen ab.
-
Vielen Dank für den Tipp, Th69!