3 Stimmen

Drehen eines Modells in 3D: Vorschläge für den Drehpunkt

Ich muss dem Benutzer das Schwenken, Drehen und Zoomen meiner 3D-Szene ermöglichen, die eine Parallelprojektion verwendet. Das Schwenken und Vergrößern/Verkleinern war bisher ziemlich einfach. Wenn ich jedoch die Maus zum Drehen verwende, bin ich mir nicht sicher, was ich als Mittelpunkt der Drehung verwenden soll. Insbesondere bin ich mir nicht sicher, in welcher Tiefe innerhalb des Bildschirms der Drehpunkt liegen sollte.

Das ist, was ich gerade mache: Ich nehme den Schwerpunkt des Modells und verwende ihn als Drehpunkt. Allerdings kann der Schwerpunkt manchmal außerhalb des sichtbaren Bereichs liegen (als Ergebnis des Schwenks und der Zoomstufe) und der Benutzer (und ich selbst) finden es kontraintuitiv, das Modell um einen Punkt zu drehen, den wir nicht sehen können.

Was gilt in einem solchen Fall als Standard für die Benutzerinteraktion? Was könnte hier das intuitivste Verhalten sein?

PS: Ich habe nur einen Viewport (im Gegensatz zu Blender und Freunde).

編集する。 Es wäre großartig, wenn erfahrene Parteien die aktuellen Praktiken in Paketen wie Google SketchUp und Blender 3D und veröffentlichen ihre Meinungen.

3voto

Winder Punkte 1984

Sie könnten versuchen, einen Strahl von der Kamera zur Mitte des Bildschirms zu werfen, den nächstgelegenen und den am weitesten entfernten Schnittpunkt zu finden und dann den Drehpunkt auf den Mittelpunkt der Schnittpunkte zu setzen.

1voto

SmacL Punkte 22014

Ich habe hier schon einige Lösungen gesehen, wobei mein Favorit darin besteht, dem Benutzer die Möglichkeit zu geben, den Mittelpunkt der Drehung festzulegen (und mit der Maus zu ziehen). Man greift dann einen Punkt auf dem Modell und zieht, um sich um diesen Mittelpunkt zu drehen. Weniger gut, aber praktikabel ist das Zentrum des Ansichtsfensters zurück in Modellkoordinaten projiziert.

0voto

jghost Punkte 104

Ich bin mir nicht sicher, ob ihnen das besser gefällt... aber versuchen Sie, die Rotation der Kamera so zu gestalten, dass sie wie in Ego-Shooter-Spielen rotiert. Das passt vielleicht nicht so gut zur Idee der Mausrotation, aber sie ist eine der meistgenutzten und sollte für den Benutzer innerhalb von Sekunden intuitiv zu bedienen sein.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X