From 096039433554caf09542697f89d8d43f8a00959f Mon Sep 17 00:00:00 2001 From: matzman666 Date: Sun, 21 May 2017 14:24:24 +0200 Subject: [PATCH] Fixed Restart SteamVR functionality (May crash the Steam overlay when SteamVR Home is running when you restart. Therefore I advice that you close SteamVR Home before restarting). Completely disabled sounds to see whether this fixes crashes some people are still experiencing. Added "Enable Advanced Supersample Filtering" toggle. --- Readme.md | 3 +- bin/win64/res/qml/MyResources.qml | 12 ++++---- bin/win64/res/qml/SteamVRPage.qml | 16 ++++++++--- bin/win64/restartvrserver.bat | 3 +- docs/screenshots/SteamVRPage.png | Bin 40174 -> 45526 bytes src/overlaycontroller.h | 2 +- src/tabcontrollers/SteamVRTabController.cpp | 29 ++++++++++++++++++++ src/tabcontrollers/SteamVRTabController.h | 6 ++++ 8 files changed, 58 insertions(+), 13 deletions(-) diff --git a/Readme.md b/Readme.md index f626740..1e13870 100644 --- a/Readme.md +++ b/Readme.md @@ -62,10 +62,11 @@ Executing startdesktopmode.bat from the application folder shows a window on the - **Application Supersampling**: Supersampling setting for OpenVR applications/games. Application supersampling [now behaves linearly](https://steamcommunity.com/games/250820/announcements/detail/1256913672017664045) where 2.0 means twice the number of pixel. - **Compositor Render Target Multiplier**: Supersampling setting for the OpenVR compositor (Requires restart). Compositor supersampling still behaves the old way where 2.0 means four-times the number of pixel. +- **Enable Advanced Supersample Filtering**: Einable/disable image filtering on supersampled renderings. - **Allow Asynchronous Reprojection**: Enable/disable asynchronous reprojection. - **Allow Interleaved Reprojection**: Enable/disable interleaved reprojection. - **Force Reprojection**: Enable/disable forced reprojection. -- **Restart SteamVR**: Restart SteamVR. +- **Restart SteamVR**: Restart SteamVR (May crash the Steam overlay when SteamVR Home is running when you restart. Therefore I advice that you close SteamVR Home before restarting). ## - Chaperone Page: diff --git a/bin/win64/res/qml/MyResources.qml b/bin/win64/res/qml/MyResources.qml index f1e8e1c..2bc50e9 100644 --- a/bin/win64/res/qml/MyResources.qml +++ b/bin/win64/res/qml/MyResources.qml @@ -5,19 +5,19 @@ import matzman666.advsettings 1.0 QtObject { function playActivationSound() { - if (!OverlayController.soundDisabled()) { + /*if (!OverlayController.soundDisabled()) { activationSound.play() - } + }*/ } function playFocusChangedSound() { - if (!OverlayController.soundDisabled()) { + /*if (!OverlayController.soundDisabled()) { focusChangedSound.play() - } + }*/ } - property SoundEffect activationSound: SoundEffect { + /*property SoundEffect activationSound: SoundEffect { source: vrRuntimePath + "content/panorama/sounds/activation.wav" } property SoundEffect focusChangedSound: SoundEffect { source: vrRuntimePath + "content/panorama/sounds/focus_change.wav" - } + }*/ } diff --git a/bin/win64/res/qml/SteamVRPage.qml b/bin/win64/res/qml/SteamVRPage.qml index 33fe8e3..efe357f 100644 --- a/bin/win64/res/qml/SteamVRPage.qml +++ b/bin/win64/res/qml/SteamVRPage.qml @@ -40,7 +40,6 @@ MyStackViewPage { steamvrSupersamplingText.text = val.toFixed(1) } onValueChanged: { - console.debug("Supersampling Slider: valueChanged(", this.value, ")") SteamVRTabController.setSuperSampling(this.value.toFixed(1), false) } } @@ -66,7 +65,6 @@ MyStackViewPage { if (val < 0.1) { val = 0.1 } - console.debug("Supersampling TextField: valueChanged(", val, ")") var v = val.toFixed(1) if (v <= steamvrSupersamplingSlider.to) { steamvrSupersamplingSlider.value = v @@ -109,7 +107,6 @@ MyStackViewPage { steamvrCompositorSupersamplingText.text = val.toFixed(1) } onValueChanged: { - console.debug("Compositor Supersampling Slider: valueChanged(", this.value, ")") SteamVRTabController.setCompositorSuperSampling(this.value.toFixed(1), false) } } @@ -136,7 +133,6 @@ MyStackViewPage { if (val < 0.1) { val = 0.1 } - console.debug("Compositor Supersampling TextField: valueChanged(", val, ")") var v = val.toFixed(1) if (v <= steamvrCompositorSupersamplingSlider.to) { steamvrCompositorSupersamplingSlider.value = v @@ -149,6 +145,14 @@ MyStackViewPage { } } + MyToggleButton { + id: steamvrAllowSupersampleFilteringToggle + text: "Enable Advanced Supersample Filtering" + onCheckedChanged: { + SteamVRTabController.setAllowSupersampleFiltering(this.checked, false) + } + } + MyToggleButton { id: steamvrAllowAsyncReprojectionToggle text: "Allow Asynchronous Reprojection" @@ -217,6 +221,7 @@ MyStackViewPage { steamvrCompositorSupersamplingSlider.value = s2 } steamvrCompositorSupersamplingText.text = s2 + steamvrAllowSupersampleFilteringToggle.checked = SteamVRTabController.allowSupersampleFiltering steamvrAllowInterleavedReprojectionToggle.checked = SteamVRTabController.allowInterleavedReprojection steamvrAllowAsyncReprojectionToggle.checked = SteamVRTabController.allowAsyncReprojection steamvrForceReprojectionToggle.checked = SteamVRTabController.forceReprojection @@ -238,6 +243,9 @@ MyStackViewPage { } steamvrCompositorSupersamplingText.text = s2 } + onAllowSupersampleFilteringChanged: { + steamvrAllowSupersampleFilteringToggle.checked = SteamVRTabController.allowSupersampleFiltering + } onAllowInterleavedReprojectionChanged: { steamvrAllowInterleavedReprojectionToggle.checked = SteamVRTabController.allowInterleavedReprojection } diff --git a/bin/win64/restartvrserver.bat b/bin/win64/restartvrserver.bat index b31de20..332a1e6 100644 --- a/bin/win64/restartvrserver.bat +++ b/bin/win64/restartvrserver.bat @@ -20,4 +20,5 @@ taskkill /im vrdashboard.exe /f >nul 2>nul taskkill /im vrserver.exe /f >nul 2>nul REM Start vrmonitor.exe -start "" "%steamVRPath%\tools\bin\win32\vrmonitor.exe" +REM start "" "%steamVRPath%\bin\win32\vrmonitor.exe" +start "" "%steamVRPath%\bin\win32\vrstartup.exe" diff --git a/docs/screenshots/SteamVRPage.png b/docs/screenshots/SteamVRPage.png index 71413298132a419c3fe5e7bec88b50dd615aa914..ebdedf677d97ec0d070aacdb29ead9b7ab1d2793 100644 GIT binary patch literal 45526 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%0AkF}A?M@n`bX@2k2)D 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%0ASE1gcP@rqZ21S(Hx+ZUIGI~r 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 z>GB)j0hRgGetSettingsErrorNameFromEnum(vrSettingsError); } setForceReprojection(fr); + auto sf = vr::VRSettings()->GetBool(vr::k_pch_SteamVR_Section, vrsettings_steamvr_allowSupersampleFiltering, &vrSettingsError); + if (vrSettingsError != vr::VRSettingsError_None) { + LOG(WARNING) << "Could not read \"" << vrsettings_steamvr_allowSupersampleFiltering << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError); + } + setAllowSupersampleFiltering(sf); settingsUpdateCounter = 0; } else { settingsUpdateCounter++; @@ -164,6 +169,25 @@ void SteamVRTabController::setForceReprojection(bool value, bool notify) { } +bool SteamVRTabController::allowSupersampleFiltering() const { + return m_allowSupersampleFiltering; +} + + +void SteamVRTabController::setAllowSupersampleFiltering(bool value, bool notify) { + if (m_allowSupersampleFiltering != value) { + m_allowSupersampleFiltering = value; + vr::VRSettings()->SetBool(vr::k_pch_SteamVR_Section, vrsettings_steamvr_allowSupersampleFiltering, m_allowSupersampleFiltering); + vr::VRSettings()->Sync(); + if (notify) { + emit allowSupersampleFilteringChanged(m_allowSupersampleFiltering); + } + } +} + + + + void SteamVRTabController::reset() { vr::EVRSettingsError vrSettingsError; @@ -193,6 +217,11 @@ void SteamVRTabController::reset() { LOG(WARNING) << "Could not remove \"" << vr::k_pch_SteamVR_ForceReprojection_Bool << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError); } + vr::VRSettings()->RemoveKeyInSection(vr::k_pch_SteamVR_Section, vrsettings_steamvr_allowSupersampleFiltering, &vrSettingsError); + if (vrSettingsError != vr::VRSettingsError_None) { + LOG(WARNING) << "Could not remove \"" << vrsettings_steamvr_allowSupersampleFiltering << "\" setting: " << vr::VRSettings()->GetSettingsErrorNameFromEnum(vrSettingsError); + } + vr::VRSettings()->Sync(); settingsUpdateCounter = 999; // Easiest way to get default values } diff --git a/src/tabcontrollers/SteamVRTabController.h b/src/tabcontrollers/SteamVRTabController.h index 054b68a..1803c56 100644 --- a/src/tabcontrollers/SteamVRTabController.h +++ b/src/tabcontrollers/SteamVRTabController.h @@ -8,6 +8,7 @@ //static const char* vrsettings_steamvr_allowInterleavedReprojection = "allowInterleavedReprojection"; static const char* vrsettings_compositor_category = "compositor"; static const char* vrsettings_steamvr_supersampleScale = "supersampleScale"; +static const char* vrsettings_steamvr_allowSupersampleFiltering = "allowSupersampleFiltering"; class QQuickWindow; @@ -25,6 +26,7 @@ class SteamVRTabController : public QObject { Q_PROPERTY(bool allowInterleavedReprojection READ allowInterleavedReprojection WRITE setAllowInterleavedReprojection NOTIFY allowInterleavedReprojectionChanged) Q_PROPERTY(bool allowAsyncReprojection READ allowAsyncReprojection WRITE setAllowAsyncReprojection NOTIFY allowAsyncReprojectionChanged) Q_PROPERTY(bool forceReprojection READ forceReprojection WRITE setForceReprojection NOTIFY forceReprojectionChanged) + Q_PROPERTY(bool allowSupersampleFiltering READ allowSupersampleFiltering WRITE setAllowSupersampleFiltering NOTIFY allowSupersampleFilteringChanged) private: OverlayController* parent; @@ -35,6 +37,7 @@ private: bool m_allowInterleavedReprojection = true; bool m_allowAsyncReprojection = true; bool m_forceReprojection = false; + bool m_allowSupersampleFiltering = true; unsigned settingsUpdateCounter = 0; @@ -49,6 +52,7 @@ public: bool allowInterleavedReprojection() const; bool allowAsyncReprojection() const; bool forceReprojection() const; + bool allowSupersampleFiltering() const; public slots: void setSuperSampling(float value, bool notify = true); @@ -56,6 +60,7 @@ public slots: void setAllowInterleavedReprojection(bool value, bool notify = true); void setAllowAsyncReprojection(bool value, bool notify = true); void setForceReprojection(bool value, bool notify = true); + void setAllowSupersampleFiltering(bool value, bool notify = true); void reset(); void restartSteamVR(); @@ -66,6 +71,7 @@ signals: void allowInterleavedReprojectionChanged(bool value); void allowAsyncReprojectionChanged(bool value); void forceReprojectionChanged(bool value); + void allowSupersampleFilteringChanged(bool value); }; } // namespace advsettings