Der Up-Vektor

Einstiegsfragen, Mathematik, Physik, künstliche Intelligenz, Engine Design
Antworten
Gelöschter Benutzer
Beiträge: 92
Registriert: 26.02.2009, 22:09

Der Up-Vektor

Beitrag von Gelöschter Benutzer »

Es geht um diesen gemeinen Vektor der das Rollen ermöglicht.

Auf XZ-Ebene funktioniert er so wie erwartet. Doch bekomme ich den restlichen Funktionsterm für die Y-Achse nicht heraus. Hier erstmal meine Herangehensweise:

Code: Alles auswählen

void SetUpDir(	const float RotationX, const float RotationY,
		const float CamRotationX)
{
	_PositionUp.z = -sin(CamRotationX);
	_PositionUp.y = cos(CamRotationX);
	_PositionUp.x = sin(CamRotationX)*cos(RotationX);
}
RotationX ist die aktulle Kamerarotation. RotationY die aktuelle vertikale Kamerarotation. CamRotationX ist die zusätzliche Rotation (rollen). Alles in Radiant.

Drehe ich mich nach unten, so verzerrt sich die Rotation merkwürdig. Hat jemand eine Idee was schief läuft?
Antworten