[Problem] Gleichungssystem lösen

Hi,
erstmal kurz worum es geht: Ich arbeite gerade mit OpenGL und habe meine Kamera an Position p. Wenn der User die linke Pfeiltaste drückt soll die Kamera sich nach link bewegen (logisch oder :D ) Um den nächsten Punkt zu berechnen brauche ich ja erstmal den Vektor dem die Bewegung entspricht. Der Vektor muss diese Anforderungen erfüllen:

1. senkrecht zum Vektor der Blickrichtung (d)
2. senkrecht zur Y-Achse (0 1 0)
3. winkel zwischen d und v ist -90°/90° (Bewegung nach links/rechts)

Code:
     y
      |
      |
      |
      |__________ x
     /
    /
   /
 z

Der gesuchte Vektor heitß v
1: v skalar d = 0
2: v = k * (0 1 0) nicht lösbar
3: cos(90°) = (d skalar v) / (|d| * |v|)

Das Gleichungssystem ist doch korrekt oder? Bei mir kommt am Ende aber immer (|d| * |v|) = 0 raus, was etwas schlecht ist, da der Term ja im Nenner steht X(

Kann mir ja jemand auf die Sprünge helfen?
 
Wenn du keinen Fehler wegen Division durch 0 haben möchtest, kannst du ja die Gleichung umstellen:
cos(90°) = (d skalar v) / (|d| * |v|)
-> cos(90°) * (|d| * |v|) = (d skalar v)
Aber wenn da wirklich immer 0 rauskommt, muss ja irgendein Fehler drin stecken.
Kann dir da sonst nicht weiterhelfen, da ich mich mit Vectoren nicht auskenne...
 
omg, ich hab da was grundlegend falschen in meinen Gleichungen ... Gleichung 1 und Gleichung 3 sagen dasselbe aus. *lol* Da kann ich natürlich Stunden rumrechnen und komme auf kein Ergebnis.

Weiß jemand nen guten Ansatz??

mfg
serow
 
Zurück
Oben