Registriert: Di Feb 01, 2005 15:59 Beiträge: 14 Wohnort: nähe Stuttgart
Hallo Community.
Ich weiss so ähnliche Probleme gab es schon, aber ich glaube nicht das gluUnProject / gluProject in diesem Fall verwendbar ist.
Problem: Ich möchte die Bewegung der Maus so verwenden das sich das gesamte System verschiebt, aber exact mit der geschwindigkeit der Maus.
Beispiel gibt Blender (oder andere 3D-Editoren) wenn ich den Screen "panne" also parallel zu meinem Viewport verschiebe (shift+alt+LMB bei Blender) verschiebt sich das Koordinatengitter über den Bildschirm, die Maus bleibt aber relativ zum gitter in ihrer Position, und das obwohl die ansicht Perspektivisch ist. In Orthogonaler Ansicht lässt sich das nämlich leicht bewerkstelligen:
Code:
transX := transX - dx/clientwidth * FrustumWidth;
Nur wie bekomme ich das in Perspektivischer Ansicht hin? die Frustumbreite ändert sich mit dem z-Wert, also dachte ich verrechne diesen mit:
Code:
objWidth := (-transZ+9 * tan(fovy * PI / 360.0))*2;
transX := transX - dx/clientwidth * objWidth ;
aber trotzdem bleibt der mauszeiger nicht auf meinem Gitter stehen
Registriert: Mo Mai 29, 2006 21:13 Beiträge: 142 Wohnort: Ballenstedt/Sachsen-Anhalt
MightyPit hat geschrieben:
Any thoughts?
Es funktioniert auch bei Blender nicht Der Standard-View bei Blender ist Orthographic. Wenn man den auf Perspective schaltet(Numpad 5), verhält sich die Maus so wie bei dir.
Komisch finde ich bloß, dass Blender trotz Ortho einigermaßen 3D aussieht. Allein schon an den parallelen Linien sollte doch die Illusion kaputtgehen... Sieht eigentlich eher aus wie isometrisch..
Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.