History

dante's keyboard changes + getProperty + some fixes

SamGondelman committed 7 years ago

Commit 2db45b31 parent e2bdac15 files · +211 −57Browse files

Showing the changes to interface/src/Application.cpp (1 of 5 files). Show all

Unified · Split

interface/src/Application.cpp+6−7
@@ -2361,6 +2361,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo · 2360 unmodified lines
23612361 });
23622362
23632363 // Preload Tablet sounds
2364+ DependencyManager::get<EntityScriptingInterface>()->setEntityTree(qApp->getEntities()->getTree());
23642365 DependencyManager::get<TabletScriptingInterface>()->preloadSounds();
23652366 DependencyManager::get<Keyboard>()->createKeyboard();
23662367
@@ -8692,12 +8693,11 @@ void Application::createLoginDialog() { · 6325 unmodified lines
86928693
86938694 auto keyboard = DependencyManager::get<Keyboard>().data();
86948695 if (!keyboard->getAnchorID().isNull() && !_loginDialogID.isNull()) {
8695− const auto KEYBOARD_LOCAL_ORIENTATION = glm::quat(0.0f, 0.0, 1.0f, 0.25f);
86968696 auto keyboardLocalOffset = cameraOrientation * glm::vec3(-0.4f * getMyAvatar()->getSensorToWorldScale(), -0.3f, 0.2f);
86978697
86988698 EntityItemProperties properties;
86998699 properties.setPosition(position + keyboardLocalOffset);
8700− properties.setRotation(cameraOrientation * KEYBOARD_LOCAL_ORIENTATION);
8700+ properties.setRotation(cameraOrientation * Quaternions::Y_180);
87018701
87028702 entityScriptingInterface->editEntity(keyboard->getAnchorID(), properties);
87038703 keyboard->setResetKeyboardPositionOnRaise(false);
@@ -8728,7 +8728,6 @@ void Application::updateLoginDialogPosition() { · 24 unmodified lines
87288728 auto upVec = getMyAvatar()->getWorldOrientation() * Vectors::UNIT_Y;
87298729 auto offset = headLookVec * OFFSET.x;
87308730 auto newPositionVec = (cameraPositionVec + offset) + (upVec * OFFSET.y);
8731− auto newOrientation = glm::inverse(glm::quat_cast(glm::lookAt(newPositionVec, cameraPositionVec, upVec))) * Quaternions::Y_180;
87328731
87338732 bool outOfBounds = glm::distance(positionVec, cameraPositionVec) > 1.0f;
87348733
@@ -8736,17 +8735,17 @@ void Application::updateLoginDialogPosition() { · 1 unmodified line
87368735 {
87378736 EntityItemProperties properties;
87388737 properties.setPosition(newPositionVec);
8739− properties.setRotation(newOrientation);
8738+ properties.setRotation(cameraOrientation);
87408739 entityScriptingInterface->editEntity(_loginDialogID, properties);
87418740 }
87428741
87438742 {
8744− const auto KEYBOARD_LOCAL_ORIENTATION = glm::quat(0.0f, 0.0, 1.0f, 0.25f);
8745− auto keyboardLocalOffset = newOrientation * glm::vec3(-0.4f * getMyAvatar()->getSensorToWorldScale(), -0.3f, 0.2f);
8743+ glm::vec3 keyboardLocalOffset = cameraOrientation * glm::vec3(-0.4f * getMyAvatar()->getSensorToWorldScale(), -0.3f, 0.2f);
8744+ glm::quat keyboardOrientation = cameraOrientation * glm::quat(glm::radians(glm::vec3(-30.0f, 180.0f, 0.0f)));
87468745
87478746 EntityItemProperties properties;
87488747 properties.setPosition(newPositionVec + keyboardLocalOffset);
8749− properties.setRotation(newOrientation * KEYBOARD_LOCAL_ORIENTATION);
8748+ properties.setRotation(keyboardOrientation);
87508749 entityScriptingInterface->editEntity(DependencyManager::get<Keyboard>()->getAnchorID(), properties);
87518750 }
87528751 }