Einzelnen Beitrag anzeigen

Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#1

(OpenGL) 2x Rotieren um selbes Koordinatensystem

  Alt 12. Apr 2006, 22:19
Hiho miteinander!

Ich wurschtel gerade wieder etwas mit OpenGL rum, und stoße mich (wie so oft) an dem Thema Rotation.
Folgende Situation: Ich möchte ein via OGl dargestelltes Objekt mit der Maus rotieren lassen. Zu diesem Zweck lasse ich die Szene 2 Mal rotieren, und zwar einmal um die Y-Achse um die Menge, die die Maus links-recht verschoben wurde, und einmal um die X-Achse entsprechend der oben-unten Verschiebung.
Das Problem dabei ist leider: Wenn ich bereits ein Mal gedreht habe, ist die Achse um die ich das 2. Mal drehen will mit verdreht, so dass die Rotation um die verdrehte Achse passiert. Sie soll aber jedoch um die Achsen wie sie ursprünglich standen passieren.

So, dass immer wenn ich oben-unten verschiebe, das Objekt um die Bildschirmachse gedreht wird. Wie im anderen Fall auch, unabhängig davon, wie das Objekt bereits gedreht ist.
Eine Möglichkeit wäre es, die erste Rotation nicht auf Matrizenebene zu machen, sondern bereits in den Vertexdaten. Jedoch wäre das ein Schlag für die Performance, den ich nicht hinnehmen kann (will ).

Mir fällt grad nichts mehr dazu ein. *braindeadbin* Hülfeee

(Verwendete Lib ist die dglOpenGL.pas)

Danks im Voraus, und gute Nacht!
Fabian
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat