OpenGl:Vector für den Blickwinkel der Kamera
-
Hi leute folgendes problem.
Ich benötige einen Vector der angibt in welche Richtung meine Kamera guckt.
Hat jemand ne idee? ich hab das ganze bereits mit gluUnProject versucht und einfach den mittigen pixel von meinem Fenster angepeilt. Das Ergebnis kommt zwar dicht ran ist aber nicht exakt.
-
Wie umfangreich benötigst du dein Kamerasystem denn? Für die klassische Shooter Kamera reicht sowas meisst schon:
glRotated(dRotX, 1.0, 0, 0); glRotated(dRotY, 0.0, 1.0, 0); glTranslated(-dCamPosX, -dCamPosY, -dCamPosZ);
(edit)
Nochmal zur Berechnung der Blickrichtung. Das geht dann z.B. so:
(Pseudocode)// #define CONST_GEO_PIOVER180 0.0174532925199432957692369076848 ViewDir = Vektor(0,0,-1) * cos(-dRotY * CONST_GEO_PIOVER180) - Vektor(1,0,0) * sin(-dRotY * CONST_GEO_PIOVER180); ViewDir = Normalize(ViewDir);
Irgendwie kann man auch nach Ausführung von Code1 die Matrix auslesen und die "Blickrichtung" darüber ermitteln.
Falls es in alle Bewegungsrichtungen gehen soll, musst du Blickrichtung und Up-Vektor berechnen und mit gluLookAt verwenden. Bei NeHe gibts ein Tutorial dafür.
-
Wie erzeugst du denn deine View Matrix? Normalerweise brauchst du diese Information dafür ja bereits.