diff --git a/build_scripts/compile_version_string.txt b/build_scripts/compile_version_string.txt index fe014ab8..787aff9c 100644 --- a/build_scripts/compile_version_string.txt +++ b/build_scripts/compile_version_string.txt @@ -1 +1 @@ -5.7.1-release \ No newline at end of file +5.7.2-release \ No newline at end of file diff --git a/src/res/qml/SettingsPage.qml b/src/res/qml/SettingsPage.qml index 121958f1..888274e7 100644 --- a/src/res/qml/SettingsPage.qml +++ b/src/res/qml/SettingsPage.qml @@ -110,6 +110,21 @@ MyStackViewPage { seatedOldExternalWarning.visible = MoveCenterTabController.allowExternalEdits && checked } } + RowLayout{ + + MyText { + id: seatedOldExternalWarning + wrapMode: Text.WordWrap + font.pointSize: 20 + color: "#FFA500" + text: "WARNING: 'Allow External App Chaperone Edits' + 'Old-Style Motion' + 'Enable Motion Features When in Seated Mode' active together may cause space center misalignment. Load the «Autosaved Profile» in the 'Chaperone' tab to fix." + horizontalAlignment: Text.AlignHCenter + Layout.leftMargin: 20 + Layout.rightMargin: 20 + Layout.preferredWidth: 900 + //Layout.fillWidth: true + } + } MyToggleButton { id: universeCenteredRotationToggle @@ -198,6 +213,13 @@ MyStackViewPage { OverlayController.setExclusiveInputEnabled(this.checked, true) } } + MyToggleButton { + id: spaceAdjustChaperoneToggle + text: "Adjust Chaperone" + onCheckedChanged: { + MoveCenterTabController.adjustChaperone = this.checked + } + } RowLayout { Layout.fillWidth: true @@ -286,20 +308,6 @@ MyStackViewPage { Layout.fillWidth: true } } - RowLayout{ - - MyText { - id: seatedOldExternalWarning - wrapMode: Text.WordWrap - font.pointSize: 20 - color: "#FFA500" - text: "WARNING: 'Allow External App Chaperone Edits' + 'Old-Style Motion' + 'Enable Motion Features When in Seated Mode' active together may cause space center misalignment. Load the «Autosaved Profile» in the 'Chaperone' tab to fix." - horizontalAlignment: Text.AlignHCenter - Layout.leftMargin: 20 - Layout.rightMargin: 20 - Layout.fillWidth: true - } - } RowLayout{ Item { Layout.fillWidth: true @@ -358,6 +366,7 @@ MyStackViewPage { oculusSdkToggleButton.checked = SettingsTabController.oculusSdkToggle exclusiveInputToggleButton.checked = OverlayController.exclusiveInputEnabled autoApplyChaperoneToggleButton.checked = OverlayController.autoApplyChaperoneEnabled + spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone seatedOldExternalWarning.visible = MoveCenterTabController.allowExternalEdits && MoveCenterTabController.oldStyleMotion @@ -391,6 +400,9 @@ MyStackViewPage { onUniverseCenteredRotationChanged: { universeCenteredRotationToggle.checked = MoveCenterTabController.universeCenteredRotation } + onAdjustChaperoneChanged:{ + spaceAdjustChaperoneToggle.checked = MoveCenterTabController.adjustChaperone + } } Connections { diff --git a/src/settings/internal/settings_controller.h b/src/settings/internal/settings_controller.h index a26b4945..33037dbb 100644 --- a/src/settings/internal/settings_controller.h +++ b/src/settings/internal/settings_controller.h @@ -285,6 +285,10 @@ class SettingsController SettingCategory::Playspace, QtInfo{ "enableUncalMotion" }, false }, + BoolSettingValue{ BoolSetting::PLAYSPACE_adjustChaperone3, + SettingCategory::Playspace, + QtInfo{ "adjustChaperone3" }, + true }, BoolSettingValue{ BoolSetting::APPLICATION_disableVersionCheck, SettingCategory::Application, diff --git a/src/settings/settings.h b/src/settings/settings.h index 71645909..56b3de54 100644 --- a/src/settings/settings.h +++ b/src/settings/settings.h @@ -24,6 +24,7 @@ enum class BoolSetting PLAYSPACE_simpleRecenter, PLAYSPACE_adjustChaperone2, PLAYSPACE_enableUncalMotion, + PLAYSPACE_adjustChaperone3, APPLICATION_disableVersionCheck, APPLICATION_previousShutdownSafe, diff --git a/src/tabcontrollers/MoveCenterTabController.cpp b/src/tabcontrollers/MoveCenterTabController.cpp index f1380d4b..5e936b92 100644 --- a/src/tabcontrollers/MoveCenterTabController.cpp +++ b/src/tabcontrollers/MoveCenterTabController.cpp @@ -457,12 +457,12 @@ void MoveCenterTabController::setFrictionPercent( int value, bool notify ) bool MoveCenterTabController::adjustChaperone() const { return settings::getSetting( - settings::BoolSetting::PLAYSPACE_adjustChaperone2 ); + settings::BoolSetting::PLAYSPACE_adjustChaperone3 ); } void MoveCenterTabController::setAdjustChaperone( bool value, bool notify ) { - settings::setSetting( settings::BoolSetting::PLAYSPACE_adjustChaperone2, + settings::setSetting( settings::BoolSetting::PLAYSPACE_adjustChaperone3, value ); if ( notify ) @@ -2767,9 +2767,14 @@ void MoveCenterTabController::updateSpace( bool forceUpdate ) // As of SVR 1.13.1 The Chaperone will follow Universe Center NOT raw // Center as such this should be off by defualt. + // As of SVR 1.26.3 The chaperone seems to Have reverted back to pre 1.13.1 + // behavior + // as of SVR 1.26.3 instead of 2x offset we have 1x offset and universe + // centerS if ( adjustChaperone() ) { + // outputLogPoses(); // make a copy of our bounds and // reorient relative to new universe center @@ -2798,21 +2803,22 @@ void MoveCenterTabController::updateSpace( bool forceUpdate ) // original origin updatedBounds[quad].vCorners[corner].v[0] -= offsetUniverseCenter.m[0][3] - - offsetUniverseCenter.m[0][3]; - //- m_universeCenterForReset.m[0][3]; - // but don't touch y=0 values to keep floor corners rooted - // down + // - offsetUniverseCenter.m[0][3]; + - m_universeCenterForReset.m[0][3]; + // but don't touch y=0 values to keep floor corners + // rooted down + if ( updatedBounds[quad].vCorners[corner].v[1] != 0 ) { updatedBounds[quad].vCorners[corner].v[1] -= offsetUniverseCenter.m[1][3] - - offsetUniverseCenter.m[1][3]; - //- m_universeCenterForReset.m[1][3]; + //- offsetUniverseCenter.m[1][3]; + - m_universeCenterForReset.m[1][3]; } updatedBounds[quad].vCorners[corner].v[2] -= offsetUniverseCenter.m[2][3] - - offsetUniverseCenter.m[2][3]; - //- m_universeCenterForReset.m[2][3]; + // - offsetUniverseCenter.m[2][3]; + - m_universeCenterForReset.m[2][3]; // rotate by universe center's yaw rotateFloatCoordinates(