From ba3c6bc0ffcbc9987eab2027102d9972de4592bb Mon Sep 17 00:00:00 2001 From: Sean Harmer Date: Fri, 16 Feb 2018 14:53:22 +0000 Subject: Revert "CameraControllers: use the Camera's upVector" This reverts commit 627167bd4a2e1dc12ffee813e82f9b33bff19a22. There was a reason to use the y axis as the up vector here which is to keep the camera controller oriented correctly. Without this restriction it's far too easy to end up with a twisted camera. If we want a fully free trackball type controller, let's add that as a new type, or perhaps as an option on these. Change-Id: I56c8708535d4ccd05ccb5f2ddea732bb27abda58 Reviewed-by: Mike Krus --- src/extras/defaults/qfirstpersoncameracontroller.cpp | 2 +- src/extras/defaults/qorbitcameracontroller.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/extras/defaults/qfirstpersoncameracontroller.cpp b/src/extras/defaults/qfirstpersoncameracontroller.cpp index bba6bcdfd..0561bbc37 100644 --- a/src/extras/defaults/qfirstpersoncameracontroller.cpp +++ b/src/extras/defaults/qfirstpersoncameracontroller.cpp @@ -102,7 +102,7 @@ void QFirstPersonCameraController::moveCamera(const QAbstractCameraController::I theLookSpeed *= 0.2f; } - const QVector3D upVector(theCamera->upVector()); + const QVector3D upVector(0.0f, 1.0f, 0.0f); theCamera->pan(state.rxAxisValue * theLookSpeed * dt, upVector); theCamera->tilt(state.ryAxisValue * theLookSpeed * dt); diff --git a/src/extras/defaults/qorbitcameracontroller.cpp b/src/extras/defaults/qorbitcameracontroller.cpp index 903d1587b..61b930569 100644 --- a/src/extras/defaults/qorbitcameracontroller.cpp +++ b/src/extras/defaults/qorbitcameracontroller.cpp @@ -150,7 +150,7 @@ void QOrbitCameraController::moveCamera(const QAbstractCameraController::InputSt if (theCamera == nullptr) return; - const QVector3D upVector(theCamera->upVector()); + const QVector3D upVector(0.0f, 1.0f, 0.0f); // Mouse input if (state.leftMouseButtonActive) { -- cgit v1.2.3