First version to update OpenSpace to the new SGCT version

This commit is contained in:
Alexander Bock
2015-10-05 00:07:38 +02:00
parent 6801c4e9a9
commit 35e95b94e7
7 changed files with 84 additions and 66 deletions

View File

@@ -72,8 +72,8 @@ glm::vec3 MouseController::mapToCamera(glm::vec3 trackballPos) {
void MouseController::trackballRotate(int x, int y) {
// Normalize mouse coordinates to [0,1]
float width = static_cast<float>(sgct::Engine::instance()->getActiveXResolution());
float height = static_cast<float>(sgct::Engine::instance()->getActiveYResolution());
float width = static_cast<float>(sgct::Engine::instance()->getCurrentXResolution());
float height = static_cast<float>(sgct::Engine::instance()->getCurrentYResolution());
glm::vec2 mousePos = glm::vec2((float)x / width, (float)y / height);
mousePos = glm::clamp(mousePos, -0.5, 1.5); // Ugly fix #1: Camera position becomes NaN on mouse values outside [-0.5, 1.5]
@@ -167,7 +167,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
if (action == MouseAction::Press){
_leftMouseButtonDown = true;
double mouseX, mouseY;
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getActiveWindowPtr()->getId(), &mouseX, &mouseY);
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getCurrentWindowPtr()->getId(), &mouseX, &mouseY);
_previousCursorPos[MouseButtons::ButtonLeft] = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
}
else if (action == MouseAction::Release) {
@@ -179,7 +179,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
if (action == MouseAction::Press){
_rightMouseButtonDown = true;
double mouseX, mouseY;
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getActiveWindowPtr()->getId(), &mouseX, &mouseY);
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getCurrentWindowPtr()->getId(), &mouseX, &mouseY);
_previousCursorPos[MouseButtons::ButtonRight] = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
}
else if (action == MouseAction::Release) {
@@ -191,7 +191,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
if (action == MouseAction::Press){
_middleMouseButtonDown = true;
double mouseX, mouseY;
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getActiveWindowPtr()->getId(), &mouseX, &mouseY);
sgct::Engine::instance()->getMousePos(sgct::Engine::instance()->getCurrentWindowPtr()->getId(), &mouseX, &mouseY);
_previousCursorPos[MouseButtons::ButtonMiddle] = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));
}
else if (action == MouseAction::Release) {
@@ -203,7 +203,7 @@ void OrbitalMouseController::button(MouseAction action, MouseButton button) {
}
void OrbitalMouseController::move(float x, float y) {
int winID = sgct::Engine::instance()->getActiveWindowPtr()->getId();
int winID = sgct::Engine::instance()->getCurrentWindowPtr()->getId();
double mouseX, mouseY;
sgct::Engine::instance()->getMousePos(winID, &mouseX, &mouseY);
_currentCursorPos = glm::vec2(static_cast<float>(mouseX), static_cast<float>(mouseY));