diff --git a/demos/optical_bench/src/controller_overlay.cpp b/demos/optical_bench/src/controller_overlay.cpp index df45dfe4bad080e6a097993346a359fe4436a094..f6bb6a7734478968563bacd87a0340ff72f7c2d3 100644 --- a/demos/optical_bench/src/controller_overlay.cpp +++ b/demos/optical_bench/src/controller_overlay.cpp @@ -64,7 +64,11 @@ ControllerOverlay::ControllerOverlay(phx::Entity* controller, ->GetMaterial() ->GetAmbientImage()); grip_images_.push_back(phx::ResourceUtils::LoadResourceFromFile<phx::Image>( - "models/opticalBench/controller_overlay/menu_images/Grip_Select.png")); + "models/opticalBench/controller_overlay/menu_images/" + "Grip_Select_Left.png")); + grip_images_.push_back(phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "models/opticalBench/controller_overlay/menu_images/" + "Grip_Select_Right.png")); grip_images_.push_back(phx::ResourceUtils::LoadResourceFromFile<phx::Image>( "models/opticalBench/controller_overlay/menu_images/Grip1.png")); grip_images_.push_back(phx::ResourceUtils::LoadResourceFromFile<phx::Image>( @@ -83,6 +87,10 @@ ControllerOverlay::ControllerOverlay(phx::Entity* controller, phx::ResourceUtils::LoadResourceFromFile<phx::Image>( "models/opticalBench/controller_overlay/menu_images/" "Trigger_Grabbed.png")); + trigger_images_.push_back( + phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "models/opticalBench/controller_overlay/menu_images/" + "Trigger_Deselect.png")); trackpad_images_.push_back( grip_trackpad_->GetFirstComponent<phx::MaterialHandle>() @@ -100,16 +108,16 @@ void ControllerOverlay::SetGripMode(GripMode m) { if (m == current_grip_mode_) return; switch (m) { case EMPTY: - setEntityImage(grip_left_, grip_images_[3]); - setEntityImage(grip_right_, grip_images_[3]); - break; - case ROTATION: setEntityImage(grip_left_, grip_images_[4]); setEntityImage(grip_right_, grip_images_[4]); break; + case ROTATION: + setEntityImage(grip_left_, grip_images_[5]); + setEntityImage(grip_right_, grip_images_[5]); + break; case TRANSLATION: - setEntityImage(grip_left_, grip_images_[2]); - setEntityImage(grip_right_, grip_images_[2]); + setEntityImage(grip_left_, grip_images_[3]); + setEntityImage(grip_right_, grip_images_[3]); break; case RESET: setEntityImage(grip_left_, grip_images_[0]); @@ -117,7 +125,7 @@ void ControllerOverlay::SetGripMode(GripMode m) { break; case SELECT: setEntityImage(grip_left_, grip_images_[1]); - setEntityImage(grip_right_, grip_images_[1]); + setEntityImage(grip_right_, grip_images_[2]); break; }; current_grip_mode_ = m; @@ -154,6 +162,9 @@ void ControllerOverlay::SetTriggerMode(TriggerMode m) { case GRABBED: setEntityImage(grip_trigger_, trigger_images_[2]); break; + case DESELECT: + setEntityImage(grip_trigger_, trigger_images_[3]); + break; }; current_trigger_mode_ = m; } diff --git a/demos/optical_bench/src/controller_overlay.hpp b/demos/optical_bench/src/controller_overlay.hpp index 98dfc26b6d3f69788ff557263fc518cb12e20723..cf761fa846cde9a96e58d9024777a05469580711 100644 --- a/demos/optical_bench/src/controller_overlay.hpp +++ b/demos/optical_bench/src/controller_overlay.hpp @@ -43,7 +43,7 @@ class ControllerOverlay : public Component { RESET = 3, SELECT = 4 }; - enum TriggerMode { NORMAL = 0, GRAB = 1, GRABBED = 2 }; + enum TriggerMode { NORMAL = 0, GRAB = 1, GRABBED = 2, DESELECT = 3 }; explicit ControllerOverlay(phx::Entity* entity, phx::Scene* scene); virtual ~ControllerOverlay() = default; diff --git a/demos/optical_bench/src/hmd_navigation_behavior.cpp b/demos/optical_bench/src/hmd_navigation_behavior.cpp index 7f685a8d4522fdb9e3cbb8b0b0c90e60bb257372..63347dd384990be3af2c691b8693d05811ea1068 100644 --- a/demos/optical_bench/src/hmd_navigation_behavior.cpp +++ b/demos/optical_bench/src/hmd_navigation_behavior.cpp @@ -191,6 +191,8 @@ void HMDNavigationBehavior::OnUpdate() { manipulationHelperAttachable(last_selected_)) { controller_overlay_->SetGripMode( static_cast<phx::ControllerOverlay::GripMode>(grip_mode % 3)); + } else { + controller_overlay_->SetGripMode(phx::ControllerOverlay::RESET); } } else { controller_overlay_->SetGripMode(phx::ControllerOverlay::RESET); @@ -204,6 +206,9 @@ void HMDNavigationBehavior::OnUpdate() { select_->GetHovered()->GetFirstComponent<phx::Selector>() != nullptr) { controller_overlay_->SetTriggerMode(phx::ControllerOverlay::GRAB); + } else if (!trigger_pressed && last_selected_ != nullptr && + manipulationHelperAttachable(last_selected_)) { + controller_overlay_->SetTriggerMode(phx::ControllerOverlay::DESELECT); } else { controller_overlay_->SetTriggerMode(phx::ControllerOverlay::NORMAL); } diff --git a/demos/optical_bench/src/laser_menu.cpp b/demos/optical_bench/src/laser_menu.cpp index 33a8f26eab51ac30ceb73c5b2c72f4fd3029d655..286ca008aceda0f0e04ac65ba212ded9d6261c0b 100644 --- a/demos/optical_bench/src/laser_menu.cpp +++ b/demos/optical_bench/src/laser_menu.cpp @@ -103,10 +103,14 @@ LaserMenu::LaserMenu(phx::Scene* scene, phx::Engine* engine) { entity_->GetFirstComponent<phx::Transform>(), false); clear_target_->GetTransform()->SetLocalRotationEuler(glm::vec3(0, -90, 90)); clear_target_->GetTransform()->SetLocalScale(glm::vec3(0.06f, 0.01f, 0.017f)); - clear_target_->GetTransform()->SetLocalTranslation(glm::vec3(0.0f,-0.075f,0.0f)); + clear_target_->GetTransform()->SetLocalTranslation( + glm::vec3(0.0f, -0.08f, 0.0f)); + clear_target_->SetImage(phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "models/opticalBench/menu/Clear.png")); clear_target_->SetHoldable(false); - clear_target_->SetOnPress( - [this, rayPass](phx::Transform*, glm::mat4) { rayPass->clearTargetBuffers(); }); + clear_target_->SetOnPress([this, rayPass](phx::Transform*, glm::mat4) { + rayPass->clearTargetBuffers(); + }); } LaserMenu::~LaserMenu() { diff --git a/demos/optical_bench/src/lens_menu.cpp b/demos/optical_bench/src/lens_menu.cpp index 90464aa79f54e7fac4556e6e50ee38c6e7f36199..4bb0e87825e643b5af21a1493b616e1d5bc3ae0c 100644 --- a/demos/optical_bench/src/lens_menu.cpp +++ b/demos/optical_bench/src/lens_menu.cpp @@ -58,8 +58,8 @@ LensMenu::LensMenu(phx::Scene* scene, phx::Engine* engine, Lens* lens) { slider_thickness_->SetMinMax(current_lens_->getThickness(0), min_max[1]); - static char te[] = "000cm"; - snprintf(te, sizeof(te), "%3.0fcm", val * 100); + static char te[] = "100.1cm"; + snprintf(te, sizeof(te), "%5.1fcm", val * 100); text_radius1_->SetText(std::string(te)); }); @@ -74,8 +74,8 @@ LensMenu::LensMenu(phx::Scene* scene, phx::Engine* engine, Lens* lens) { slider_thickness_->SetMinMax(current_lens_->getThickness(0), min_max[1]); - static char te[] = "000cm"; - snprintf(te, sizeof(te), "%3.0fcm", val * 100); + static char te[] = "100.1cm"; + snprintf(te, sizeof(te), "%5.1fcm", val * 100); text_radius2_->SetText(std::string(te)); }); @@ -171,12 +171,12 @@ void LensMenu::SetCurrentLens(Lens* lens) { slider_thickness_->SetValue(v); v = current_lens_->GetRadius(); - snprintf(te, sizeof(te), "%3.0fcm", v * 100); + snprintf(te, sizeof(te), "%5.1fcm", v * 100); text_radius1_->SetText(std::string(te)); slider_radius1_->SetValue(v); v = current_lens_->GetRadius2(); - snprintf(te, sizeof(te), "%3.0fcm", v * 100); + snprintf(te, sizeof(te), "%5.1fcm", v * 100); text_radius2_->SetText(std::string(te)); slider_radius2_->SetValue(v); diff --git a/demos/optical_bench/src/menu_button.cpp b/demos/optical_bench/src/menu_button.cpp index dc44d1a6afc1bfd86124ca98a998bd6889834d15..0676491752048a043b28631225e5d8f3cb935801 100644 --- a/demos/optical_bench/src/menu_button.cpp +++ b/demos/optical_bench/src/menu_button.cpp @@ -28,6 +28,10 @@ MenuButton::MenuButton(phx::Engine* engine, phx::Scene* scene, TYPE type) { entity_ = phx::SceneLoader::InsertModelIntoScene( "models/opticalBench/menu/Button_Round.obj", scene); break; + case TYPE::LENS: + entity_ = phx::SceneLoader::InsertModelIntoScene( + "models/opticalBench/menu/Button_Lens.obj", scene); + break; } phx::MaterialHandle* outer = nullptr; @@ -38,9 +42,10 @@ MenuButton::MenuButton(phx::Engine* engine, phx::Scene* scene, TYPE type) { ->GetFirstComponent<phx::MaterialHandle>(); if (handle->GetMaterial()->GetName().compare("ButtonBase") == 0) { outer = handle; - } - if (handle->GetMaterial()->GetName().compare("Image") == 0) { - face_ = handle; + } else if (handle->GetMaterial()->GetName().compare("Image") == 0) { + face_ = handle; + } else if (handle->GetMaterial()->GetName().compare("Face") == 0) { + face_ = handle; } } @@ -52,8 +57,13 @@ MenuButton::MenuButton(phx::Engine* engine, phx::Scene* scene, TYPE type) { outer->GetMaterial(), std::string("Button_Material_") + std::to_string(id))); face_->SetMaterial(MenuHelper::cloneMaterial( - face_->GetMaterial(), - std::string("Button_Face_Material_") + std::to_string(id))); + face_->GetMaterial(), + std::string("Button_Face_Material_") + std::to_string(id))); + + if (type == TYPE::LENS) { + face_->GetMaterial()->SetAmbientColor(glm::vec3(0.322f, 0.729f, 0.722f)); + face_->GetMaterial()->SetDiffuseColor(glm::vec3(0.322f, 0.729f, 0.722f)); + } outer->GetMaterial()->SetAmbientColor(color_unhovered); outer->GetMaterial()->SetDiffuseColor(color_unhovered); @@ -125,5 +135,5 @@ MenuButton::MenuButton(phx::Engine* engine, phx::Scene* scene, TYPE type) { MenuButton::~MenuButton() {} void MenuButton::SetImage(phx::ResourcePointer<phx::Image> image) { - face_->GetMaterial()->SetAmbientImage(image); + face_->GetMaterial()->SetAmbientImage(image); } diff --git a/demos/optical_bench/src/menu_button.hpp b/demos/optical_bench/src/menu_button.hpp index d0e7bbde016102319048a270582c99b091fe91a3..ffc0a7692e412820a7995a723b2fa4a1c4c19bc6 100644 --- a/demos/optical_bench/src/menu_button.hpp +++ b/demos/optical_bench/src/menu_button.hpp @@ -10,13 +10,13 @@ SUPPRESS_WARNINGS_END #include "phx/core/entity.hpp" #include "phx/core/scene.hpp" +#include "phx/rendering/components/material_handle.hpp" #include "phx/rendering/components/transform.hpp" #include "phx/resources/types/image.hpp" -#include "phx/rendering/components/material_handle.hpp" class MenuButton { public: - enum TYPE { RECTANGULAR, ROUND }; + enum TYPE { RECTANGULAR, ROUND, LENS }; MenuButton(phx::Engine* engine, phx::Scene* scene, TYPE type); ~MenuButton(); @@ -41,7 +41,7 @@ class MenuButton { phx::Entity* entity_; phx::Selector* selector_; bool grabbed_ = false; - glm::vec3 color_unhovered = glm::vec3(0.8f); + glm::vec3 color_unhovered = glm::vec3(0.5f); glm::vec3 color_hovered = glm::vec3(1.0f, 0.502f, 0.0f); glm::vec3 color_pressed = glm::vec3(1.0f, 0.0f, 0.0f); std::chrono::duration<double> grab_time_; diff --git a/demos/optical_bench/src/menu_slider.hpp b/demos/optical_bench/src/menu_slider.hpp index 30cc3891be524285de885a40525a44418f5b0867..8f6b4da42441041acb37cc0943696514e85e371e 100644 --- a/demos/optical_bench/src/menu_slider.hpp +++ b/demos/optical_bench/src/menu_slider.hpp @@ -51,7 +51,7 @@ class MenuSlider { std::function<void(float)> value_changed_ = nullptr; // highlight stuff - glm::vec3 color_normal = glm::vec3(0.8f); + glm::vec3 color_normal = glm::vec3(0.5f); glm::vec3 color_hovered = glm::vec3(1.0f, 0.502f, 0.0f); glm::vec3 color_pressed = glm::vec3(1.0f, 0.0f, 0.0f); glm::vec3 color_selected = glm::vec3(0.424f, 0.851f, 0.141f); diff --git a/demos/optical_bench/src/menu_switch.hpp b/demos/optical_bench/src/menu_switch.hpp index 2c17103c84e7afc07287de3ce79e93552e500b61..ae972a9b10f9be99b1f0abe93be50d30abcb1aac 100644 --- a/demos/optical_bench/src/menu_switch.hpp +++ b/demos/optical_bench/src/menu_switch.hpp @@ -33,7 +33,7 @@ class MenuSwitch { private: phx::Entity* entity_; phx::Selector* selector_; - glm::vec3 color_unhovered = glm::vec3(0.8f); + glm::vec3 color_unhovered = glm::vec3(0.5f); glm::vec3 color_hovered = glm::vec3(1.0f, 0.502f, 0.0f); bool activated_ = false; diff --git a/demos/optical_bench/src/object_menu.cpp b/demos/optical_bench/src/object_menu.cpp index 716cd0e566769fe8b665a7d4abb0b5e163c0cf47..dd3d8dfddbb58300eadd81b30223641515da0e66 100644 --- a/demos/optical_bench/src/object_menu.cpp +++ b/demos/optical_bench/src/object_menu.cpp @@ -42,14 +42,17 @@ ObjectMenu::ObjectMenu(phx::Scene* scene, phx::Engine* engine) { auto object_manager = engine->GetSystem<ObjectManager>(); - //Frame Buttons + // Frame Buttons create_frame_1_ = new MenuButton(engine, scene, MenuButton::RECTANGULAR); create_frame_1_->GetTransform()->SetParent( entity_->GetFirstComponent<phx::Transform>(), false); create_frame_1_->GetTransform()->SetLocalRotationEuler(glm::vec3(0, -90, 90)); - create_frame_1_->GetTransform()->SetLocalScale(glm::vec3(0.05f, 0.01f, 0.05f)); + create_frame_1_->GetTransform()->SetLocalScale( + glm::vec3(0.05f, 0.01f, 0.05f)); create_frame_1_->GetTransform()->SetLocalTranslation(glm::vec3(0, 0, -0.1f)); - create_frame_1_->SetImage(phx::ResourceUtils::LoadResourceFromFile<phx::Image>("laser/target/Checker.png")); + create_frame_1_->SetImage( + phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "laser/target/Checker.png")); create_frame_1_->SetHoldable(false); create_frame_1_->SetOnPress( [this, object_manager](phx::Transform* t, glm::mat4) { @@ -58,50 +61,62 @@ ObjectMenu::ObjectMenu(phx::Scene* scene, phx::Engine* engine) { create_frame_2_ = new MenuButton(engine, scene, MenuButton::RECTANGULAR); create_frame_2_->GetTransform()->SetParent( - entity_->GetFirstComponent<phx::Transform>(), false); + entity_->GetFirstComponent<phx::Transform>(), false); create_frame_2_->GetTransform()->SetLocalRotationEuler(glm::vec3(0, -90, 90)); - create_frame_2_->GetTransform()->SetLocalScale(glm::vec3(0.05f, 0.01f, 0.05f)); - create_frame_2_->GetTransform()->SetLocalTranslation(glm::vec3(0, -0.055f, -0.1f)); - create_frame_2_->SetImage(phx::ResourceUtils::LoadResourceFromFile<phx::Image>("laser/target/CheckerRed.png")); + create_frame_2_->GetTransform()->SetLocalScale( + glm::vec3(0.05f, 0.01f, 0.05f)); + create_frame_2_->GetTransform()->SetLocalTranslation( + glm::vec3(0, -0.055f, -0.1f)); + create_frame_2_->SetImage( + phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "laser/target/CheckerRed.png")); create_frame_2_->SetHoldable(false); - create_frame_2_->SetOnPress( - [this, object_manager](phx::Transform* t, glm::mat4) { - object_manager->CreateTarget(t->GetGlobalTranslation(), "CheckerRed.png"); + create_frame_2_->SetOnPress([this, object_manager](phx::Transform* t, + glm::mat4) { + object_manager->CreateTarget(t->GetGlobalTranslation(), "CheckerRed.png"); }); create_frame_3_ = new MenuButton(engine, scene, MenuButton::RECTANGULAR); create_frame_3_->GetTransform()->SetParent( - entity_->GetFirstComponent<phx::Transform>(), false); + entity_->GetFirstComponent<phx::Transform>(), false); create_frame_3_->GetTransform()->SetLocalRotationEuler(glm::vec3(0, -90, 90)); - create_frame_3_->GetTransform()->SetLocalScale(glm::vec3(0.05f, 0.01f, 0.05f)); - create_frame_3_->GetTransform()->SetLocalTranslation(glm::vec3(0, 0, -0.045f)); - create_frame_3_->SetImage(phx::ResourceUtils::LoadResourceFromFile<phx::Image>("laser/target/CheckerBlue.png")); + create_frame_3_->GetTransform()->SetLocalScale( + glm::vec3(0.05f, 0.01f, 0.05f)); + create_frame_3_->GetTransform()->SetLocalTranslation( + glm::vec3(0, 0, -0.045f)); + create_frame_3_->SetImage( + phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "laser/target/CheckerBlue.png")); create_frame_3_->SetHoldable(false); - create_frame_3_->SetOnPress( - [this, object_manager](phx::Transform* t, glm::mat4) { - object_manager->CreateTarget(t->GetGlobalTranslation(), "CheckerBlue.png"); + create_frame_3_->SetOnPress([this, object_manager](phx::Transform* t, + glm::mat4) { + object_manager->CreateTarget(t->GetGlobalTranslation(), "CheckerBlue.png"); }); create_frame_4_ = new MenuButton(engine, scene, MenuButton::RECTANGULAR); create_frame_4_->GetTransform()->SetParent( - entity_->GetFirstComponent<phx::Transform>(), false); + entity_->GetFirstComponent<phx::Transform>(), false); create_frame_4_->GetTransform()->SetLocalRotationEuler(glm::vec3(0, -90, 90)); - create_frame_4_->GetTransform()->SetLocalScale(glm::vec3(0.05f, 0.01f, 0.05f)); - create_frame_4_->GetTransform()->SetLocalTranslation(glm::vec3(0, -0.055f, -0.045f)); - create_frame_4_->SetImage(phx::ResourceUtils::LoadResourceFromFile<phx::Image>("laser/target/CheckerGreen.png")); + create_frame_4_->GetTransform()->SetLocalScale( + glm::vec3(0.05f, 0.01f, 0.05f)); + create_frame_4_->GetTransform()->SetLocalTranslation( + glm::vec3(0, -0.055f, -0.045f)); + create_frame_4_->SetImage( + phx::ResourceUtils::LoadResourceFromFile<phx::Image>( + "laser/target/CheckerGreen.png")); create_frame_4_->SetHoldable(false); - create_frame_4_->SetOnPress( - [this, object_manager](phx::Transform* t, glm::mat4) { - object_manager->CreateTarget(t->GetGlobalTranslation(), "CheckerGreen.png"); + create_frame_4_->SetOnPress([this, object_manager](phx::Transform* t, + glm::mat4) { + object_manager->CreateTarget(t->GetGlobalTranslation(), "CheckerGreen.png"); }); - create_lens_ = new MenuButton(engine, scene, MenuButton::ROUND); + create_lens_ = new MenuButton(engine, scene, MenuButton::LENS); create_lens_->GetTransform()->SetParent( entity_->GetFirstComponent<phx::Transform>(), false); create_lens_->GetTransform()->SetLocalRotationEuler(glm::vec3(0, -90, 90)); - create_lens_->GetTransform()->SetLocalScale(glm::vec3(0.043f, 0.01f, 0.102f)); - create_lens_->GetTransform()->SetLocalTranslation(glm::vec3(0, -0.025f, 0.075f)); - create_lens_->SetImage(phx::ResourceUtils::LoadResourceFromFile<phx::Image>("models/opticalBench/menu/lens.png")); + create_lens_->GetTransform()->SetLocalScale(glm::vec3(0.1f, 0.01f, 0.1f)); + create_lens_->GetTransform()->SetLocalTranslation( + glm::vec3(0, -0.025f, 0.075f)); create_lens_->SetHoldable(false); create_lens_->SetOnPress( [this, object_manager](phx::Transform* t, glm::mat4) { diff --git a/demos/optical_bench/src/test_pattern_frame.cpp b/demos/optical_bench/src/test_pattern_frame.cpp index ef1baa7461a414af59b49e90da7b8b1dd4347814..179ac9adc2dd9bd3e86fc661dc1f47cb5930c2f0 100644 --- a/demos/optical_bench/src/test_pattern_frame.cpp +++ b/demos/optical_bench/src/test_pattern_frame.cpp @@ -4,7 +4,6 @@ #include "phx/rendering/components/transform.hpp" #include "phx/resources/resource_utils.hpp" #include "phx/suppress_warnings.hpp" -#include "selection_mark_handler.hpp" #include "selector.hpp" #include "optix_context_manager.hpp" @@ -79,10 +78,6 @@ TestPatternFrame::TestPatternFrame(phx::Scene* scene, glm::vec3(size.x / 2.0f, size.y / 2.0f, size.z / 2.0f)); support_rod_ = new SupportRod(scene, selector); - - entity_->AddComponent<phx::SelectionMarkHandler>( - [this]() { support_rod_->SetMarked(true); }, - [this]() { support_rod_->SetMarked(false); }); } TestPatternFrame::~TestPatternFrame() { diff --git a/resources/models/opticalBench/controller_overlay/Controller_Buttons.mtl b/resources/models/opticalBench/controller_overlay/Controller_Buttons.mtl index 8d8051376a6822a62e84651551a5ecfa3fe44572..14b189a38168952db8a9bf41bb5606d823c86f13 100644 --- a/resources/models/opticalBench/controller_overlay/Controller_Buttons.mtl +++ b/resources/models/opticalBench/controller_overlay/Controller_Buttons.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c00107d0edbf4a1a27ac930c3bc3eea7619380592778dc5e1c2121803cb93452 +oid sha256:eaa5475663fe62d1a955ca5711fb7e60ba7443920d0608ffc9a83bf73d7ddfa9 size 854 diff --git a/resources/models/opticalBench/controller_overlay/Controller_Buttons.obj b/resources/models/opticalBench/controller_overlay/Controller_Buttons.obj index 423dc4a2b49c1ae22c2ecdc6e292df938669fb89..886aeed62f93a3108eca5c3fa3e729869c7e4b79 100644 --- a/resources/models/opticalBench/controller_overlay/Controller_Buttons.obj +++ b/resources/models/opticalBench/controller_overlay/Controller_Buttons.obj @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:59090fb8e67446b6f68bd1de0e7b21a6639f2a6a035117ca27f82552b5bb80e5 -size 71915 +oid sha256:72d4896570fecb5f2cfbcfecb44f4e38e5aa3ef4005f098ca00841edc179d8d3 +size 71770 diff --git a/resources/models/opticalBench/controller_overlay/Grip.png b/resources/models/opticalBench/controller_overlay/Grip.png index 3178c129b5ce98a7da8c01b1b26c43cc3b7a691e..ca25c0a23f43c37b74adc5892a4a2b66dffdec50 100644 --- a/resources/models/opticalBench/controller_overlay/Grip.png +++ b/resources/models/opticalBench/controller_overlay/Grip.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:76aa8aebe6b6d096b0c4996d8090f9cc65bae64f93cc263d1b0572336a6c0a02 -size 2283 +oid sha256:df38b86cd596b2e061c5e41ba956c0fc238634773fd254d66dada6d07c72b41e +size 190 diff --git a/resources/models/opticalBench/controller_overlay/Trackpad.png b/resources/models/opticalBench/controller_overlay/Trackpad.png index 48c9f65ad6ace5c3bbfd4ca1b54c258c439eff0f..4b34d2aa679929587e875ed11f013e19c8487315 100644 --- a/resources/models/opticalBench/controller_overlay/Trackpad.png +++ b/resources/models/opticalBench/controller_overlay/Trackpad.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:988abf00cc3a3a2a18776b75b6931b3986214cce28e03f7f1cb37bb10857c58a -size 4547 +oid sha256:11958ccef6a4910d09d0f3536c08a0d13e66c7649a686be8afd3f88d6f787db1 +size 141 diff --git a/resources/models/opticalBench/controller_overlay/Trigger.png b/resources/models/opticalBench/controller_overlay/Trigger.png index 509c1683ce7645992bf0c33acf30eb995d5a1432..4b34d2aa679929587e875ed11f013e19c8487315 100644 --- a/resources/models/opticalBench/controller_overlay/Trigger.png +++ b/resources/models/opticalBench/controller_overlay/Trigger.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ec8f758984ba58427ef40c18422207242352ad34915d4df91fd3cc2b86ffa44 -size 2398 +oid sha256:11958ccef6a4910d09d0f3536c08a0d13e66c7649a686be8afd3f88d6f787db1 +size 141 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Grip1.png b/resources/models/opticalBench/controller_overlay/menu_images/Grip1.png index 10b92aaa6a8fff098825e580f992ee2bb4ebecd7..e1910d80984cf9a945f3606880a993348371792e 100644 --- a/resources/models/opticalBench/controller_overlay/menu_images/Grip1.png +++ b/resources/models/opticalBench/controller_overlay/menu_images/Grip1.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9c7e92357d408ec48fe26d3197fe918fec6b73688e878378193c93cbe51cce30 -size 2554 +oid sha256:80a5b92b036588035b18b1405d9a7ceb47dbdd01b6b55a95722080583ad4bdcc +size 473 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Grip2.png b/resources/models/opticalBench/controller_overlay/menu_images/Grip2.png index db58e5bdb6997faeb67a72ed26f998e41da514dd..ee2a2b063e151148c57f5b6dd0f45910606c9a6a 100644 --- a/resources/models/opticalBench/controller_overlay/menu_images/Grip2.png +++ b/resources/models/opticalBench/controller_overlay/menu_images/Grip2.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:82ccfb0231d5fc4d2e3d0c7d8d2c6665c16c8a09fdaf508438e917079c5ff016 -size 2642 +oid sha256:d6c2af31cf8f54fe951bcd4f61768cee0466e65b61a88fe60ed102962cec4333 +size 484 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Grip3.png b/resources/models/opticalBench/controller_overlay/menu_images/Grip3.png index b6620e671cc14f3a70a9520414450c551512c6fb..b18365e40430b0eef768f925a468de35344d1009 100644 --- a/resources/models/opticalBench/controller_overlay/menu_images/Grip3.png +++ b/resources/models/opticalBench/controller_overlay/menu_images/Grip3.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:64f0adf5e543db0e1b7bd54a006da59b7465e15cbc9028974f70b73bdec134eb -size 2291 +oid sha256:939259c9f7aa1480a6e994318e9bc14917b4be34097051c0350f9bdd5a30789f +size 478 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select.png b/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select.png deleted file mode 100644 index c24a637ab9c56a4d92c477a39cebdc4304614a46..0000000000000000000000000000000000000000 --- a/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:90e1a0be70598d991b383a8399cf419d4ef1f6c140d454063084c7587b306166 -size 2430 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select_Left.png b/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select_Left.png new file mode 100644 index 0000000000000000000000000000000000000000..0c8b03e00a8fb07677cfd9b891ccd4642ccb46ac --- /dev/null +++ b/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select_Left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a735263921a7388049a885e427b3537002b19dda456a5c2b8b6f2954c157de4b +size 357 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select_Right.png b/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select_Right.png new file mode 100644 index 0000000000000000000000000000000000000000..1c6284e0f8323297afe4bfacf9e705b51412adda --- /dev/null +++ b/resources/models/opticalBench/controller_overlay/menu_images/Grip_Select_Right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d631b37467b04ae6e29062a6b556b3fb75529fa5450bbf5444b0bbf5ec3053c +size 387 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Trackpad_Rotate.png b/resources/models/opticalBench/controller_overlay/menu_images/Trackpad_Rotate.png index 3a933c9def0a8efae7078766e3e2b534ae04745d..6773475c7edc7e4d987d8a4784e762547b8857dc 100644 --- a/resources/models/opticalBench/controller_overlay/menu_images/Trackpad_Rotate.png +++ b/resources/models/opticalBench/controller_overlay/menu_images/Trackpad_Rotate.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:55227d1718bfa8b363443edeec576ff6540c9d552b985cec76e62e33b6ca6427 -size 38447 +oid sha256:5ba1892958508fa5dfa7e5cfd2acc900699bcbe22833097656d44a13a13f11bc +size 45043 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Deselect.png b/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Deselect.png new file mode 100644 index 0000000000000000000000000000000000000000..5cb2d7ce0effb9484a9bf90f6731abe177e09a84 --- /dev/null +++ b/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Deselect.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fbe3f7c695ce5cc787355ff41372822880118f1cb4d26b6feb03126fbb0299a +size 401 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grab.png b/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grab.png index e7395bc7f559265d0c72e6906bdbf47a7e84f936..99149d253e92a24b338aad89a4c6254e6530af88 100644 --- a/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grab.png +++ b/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grab.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:78b46ec7b6619b78af851376473b86fe0bef869a27c2741f22a66a2659c2bd0d -size 3585 +oid sha256:731e151f7bfc9c31114aeba0eba30777b7387ae324378d23d463122458f4774f +size 438 diff --git a/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grabbed.png b/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grabbed.png index f470b3ef054b1e4b28e2a7ebe1dda9dd89fcb076..3a6a047a8da7082e72bb92e885f76b2f6eb13edb 100644 --- a/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grabbed.png +++ b/resources/models/opticalBench/controller_overlay/menu_images/Trigger_Grabbed.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:cd613282eb6d96e017ecf61115e5a074e71020c42ec80891917b96a1261d24be -size 3649 +oid sha256:685e95e53554ff424b287e0f42014e9c1b9df6a62d223790d3d4a7e906ea0954 +size 449 diff --git a/resources/models/opticalBench/controller_overlay/untitled.blend b/resources/models/opticalBench/controller_overlay/untitled.blend index 84bc3918ff9f0f97fac915b65cbc23b4cf35d1b4..8c6a05b08aed208d695f59d6b512d4386652d83d 100644 Binary files a/resources/models/opticalBench/controller_overlay/untitled.blend and b/resources/models/opticalBench/controller_overlay/untitled.blend differ diff --git a/resources/models/opticalBench/controller_overlay/untitled.blend1 b/resources/models/opticalBench/controller_overlay/untitled.blend1 index 246bf64ec65e0e9368c27bb50f65e1f96e3b7ba4..db03e33f8bb8ed045166e7adc27ae4e5645077e1 100644 Binary files a/resources/models/opticalBench/controller_overlay/untitled.blend1 and b/resources/models/opticalBench/controller_overlay/untitled.blend1 differ diff --git a/resources/models/opticalBench/menu/Arrow_up.png b/resources/models/opticalBench/menu/Arrow_up.png index 667c5c0a00eea843d63e98612baa5d08dfb6f179..5df3a93d9879f6525a01d248724892c2aacff611 100644 --- a/resources/models/opticalBench/menu/Arrow_up.png +++ b/resources/models/opticalBench/menu/Arrow_up.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f6a9a832ecd999fe93f8936acbe3acd9358ea8cc0f287334bbfb6fb2761e85d8 -size 5151 +oid sha256:a400d53da5db2ca6eb332346751eaa1e3f899ed625ffd747c42edbf7bbae29d8 +size 2522 diff --git a/resources/models/opticalBench/menu/Button_Lens.mtl b/resources/models/opticalBench/menu/Button_Lens.mtl new file mode 100644 index 0000000000000000000000000000000000000000..68baca7ca08697a5a704c7e83eae2dc184fa4732 --- /dev/null +++ b/resources/models/opticalBench/menu/Button_Lens.mtl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22c457a5440feddc6784d034975c0302a83fbe54a86e798ed5462f367f6a194d +size 413 diff --git a/resources/models/opticalBench/menu/Button_Lens.obj b/resources/models/opticalBench/menu/Button_Lens.obj new file mode 100644 index 0000000000000000000000000000000000000000..c2c85fe7527ddc2491a698f09408daae8714c394 --- /dev/null +++ b/resources/models/opticalBench/menu/Button_Lens.obj @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f56643bfd1c330656f4d3413146c1ab7f41e97d9d7d9ba18ba16ce40b37aee1e +size 15964 diff --git a/resources/models/opticalBench/menu/Button_Rectangle.mtl b/resources/models/opticalBench/menu/Button_Rectangle.mtl index 31e5285151bf58d8917d447d319b88ce1e47df88..ca0edb2ffc027701abdef609412de5d7390134e8 100644 --- a/resources/models/opticalBench/menu/Button_Rectangle.mtl +++ b/resources/models/opticalBench/menu/Button_Rectangle.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:91277ec4ca4a6c38d8c34e97aa391da3d27c31bbe247a4ead01828ea7515bc96 +oid sha256:cc93a227cbc82478eabdd800b24c5922790af2f2052e39001a9d97a8c8532b1a size 434 diff --git a/resources/models/opticalBench/menu/Button_Round.mtl b/resources/models/opticalBench/menu/Button_Round.mtl index 31e5285151bf58d8917d447d319b88ce1e47df88..ca0edb2ffc027701abdef609412de5d7390134e8 100644 --- a/resources/models/opticalBench/menu/Button_Round.mtl +++ b/resources/models/opticalBench/menu/Button_Round.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:91277ec4ca4a6c38d8c34e97aa391da3d27c31bbe247a4ead01828ea7515bc96 +oid sha256:cc93a227cbc82478eabdd800b24c5922790af2f2052e39001a9d97a8c8532b1a size 434 diff --git a/resources/models/opticalBench/menu/Clear.png b/resources/models/opticalBench/menu/Clear.png new file mode 100644 index 0000000000000000000000000000000000000000..cff4c74689680cd4d5b882de3684f1345678a73c --- /dev/null +++ b/resources/models/opticalBench/menu/Clear.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2986f4a337799bb314f89fd5c38736cde2e72dd6227bdc725c3a8b0b402b88b +size 1167 diff --git a/resources/models/opticalBench/menu/Screen_Laser.png b/resources/models/opticalBench/menu/Screen_Laser.png index a6e5c7f8927d1fba01d703438ca1c1718826aee3..0a0b7469b4c4bb03de2b6f40b754a99bcf779a59 100644 --- a/resources/models/opticalBench/menu/Screen_Laser.png +++ b/resources/models/opticalBench/menu/Screen_Laser.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:9b97e7bc5499d80836c3e7e5571c4a21e8f4085af1f660bd0915507bf04dafe7 -size 201701 +oid sha256:d7b354fbf359040667ac066f2222f72855ab36722aafea46d799f4fb6f4d284e +size 46125 diff --git a/resources/models/opticalBench/menu/Screen_Lens.png b/resources/models/opticalBench/menu/Screen_Lens.png index 043504dfcd15d67c2a9c84690b0e9f5025c37242..4919332486b5a400765ce76aa22d98b7327434a8 100644 --- a/resources/models/opticalBench/menu/Screen_Lens.png +++ b/resources/models/opticalBench/menu/Screen_Lens.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:4c47b0b458f9ccca053d4165c9ecc2c4ce4fb7d5f97b75159b26a5fdeca0f946 -size 201464 +oid sha256:31d57ddb0243cb56ece90a59b5812735bdf00727fea8cb2f93ae8b5ee61cc19d +size 110758 diff --git a/resources/models/opticalBench/menu/Screen_Object.png b/resources/models/opticalBench/menu/Screen_Object.png index 08ae78606362e61790a37711c7346de54d72b7af..0f73fe60f9c3c1c7d77bfca73e36c5e26d46d94a 100644 --- a/resources/models/opticalBench/menu/Screen_Object.png +++ b/resources/models/opticalBench/menu/Screen_Object.png @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:f8793e64ed8f8b1d5cd1a7c58b8c6ab1ddc3cb7ecd065334c66f9c0ccf94e88d -size 202327 +oid sha256:6f8fbabdab7014f42e73a598d26f3029b0d9191e316eaedbf5ce10347f563425 +size 65585 diff --git a/resources/models/opticalBench/menu/Slider.mtl b/resources/models/opticalBench/menu/Slider.mtl index 1560be4b9f8a391e5394a3f4f021e0e01cd53cdc..7ba58ec6e11b7e11516ed5fc2c4e3980940f8e64 100644 --- a/resources/models/opticalBench/menu/Slider.mtl +++ b/resources/models/opticalBench/menu/Slider.mtl @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1a5a36130d36fe16579c679b6ef13326743a166550210ddcd9ed8b972174f08a +oid sha256:62e3566acc6f72ab13a518c96a5a20b3f9a156423859778395fe30109233d2ce size 230 diff --git a/resources/models/opticalBench/menu/Slider.obj b/resources/models/opticalBench/menu/Slider.obj index 86c48506961b6dc6bd83271394d9163e34cbeba6..943fb366f081b92c2c32ed273d29853325c806a2 100644 --- a/resources/models/opticalBench/menu/Slider.obj +++ b/resources/models/opticalBench/menu/Slider.obj @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:07a3fb06be2207e823481ccd95182d4481ca5d012bcf4c98f2abe90d5fb74739 -size 7324 +oid sha256:b5c494c6fb60e88922d985875da6960951111a192b09e519985053d3915bdbdd +size 8560 diff --git a/resources/models/opticalBench/menu/lens.png b/resources/models/opticalBench/menu/lens.png deleted file mode 100644 index 1e22b6980af058a5a84ec082ce80cefdbd3a53c3..0000000000000000000000000000000000000000 --- a/resources/models/opticalBench/menu/lens.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:6bd940aa3072db7b694f131e0bd8ac8c96f99d8e120b215ac17d9adb07c9043a -size 4151 diff --git a/resources/models/opticalBench/menu/menu.blend b/resources/models/opticalBench/menu/menu.blend index 250967e5db22f75173d3a5ff35cd992d4d14c200..4429f7c44744641a32734077d66a49fe2fffab30 100644 Binary files a/resources/models/opticalBench/menu/menu.blend and b/resources/models/opticalBench/menu/menu.blend differ diff --git a/resources/models/opticalBench/menu/menu.blend1 b/resources/models/opticalBench/menu/menu.blend1 index d17002b44cb62a12e36d85f7615e6b60f52179cd..4360389eee6e64f08b116421b3215e7df81d0dfb 100644 Binary files a/resources/models/opticalBench/menu/menu.blend1 and b/resources/models/opticalBench/menu/menu.blend1 differ