Introduce 'View ratchetting', cleanup/improve vestibular motion (#510)

* vestibular motion cleanup

* Fix environment jumping when autoturn is enabled

* Restrict vestibular motion to forward movement

* Revert "vestibular motion cleanup"

This reverts commit 3d6b293ad2d6a0df41756c67f7e80c4b2be8b6fd.

* Experimental: dynamic redirection. very subtle effect

* formatting...

* swap centidegrees for millidegrees

* Experimental: introduce view ratchetting

* more cleanup

* Revert "Experimental: dynamic redirection. very subtle effect"

This reverts commit d6c8e5cdedf1b11013f25340c2e9be64ec1359b8.

* vestibular motion cleanup

* view ratchetting settings

* cleanup and formatting

* Resolve drift, improve accuracy of vestibular motion/autoturn

* updated UI first pass

* UI first pass

* Hide Unset Errors After encountering one

* fix synch issue add ratchet box

* moved view ratchet ui to own file

* minor format changes to fit

* fixed REALLY 3% minimum

* fixed vestib motion default

Co-authored-by: ykeara <ykeara1@gmail.com>
This commit is contained in:
Chelsea Jaggi
2020-09-08 14:19:50 -07:00
committed by GitHub
co-authored by ykeara
parent 4fb026958e
commit 12344a86bc
13 changed files with 305 additions and 59 deletions
+16
View File
@@ -2,15 +2,31 @@
namespace ovr_settings_wrapper
{
// cludgey solution, long term solution we should apply defaults that make sense
// (most likely false)
bool unsetSettingErrorEnabled = true;
SettingsError handleErrors( std::string settingsKey,
vr::EVRSettingsError error,
std::string customErrorMsg )
{
if ( error != vr::VRSettingsError_None )
{
if ( !unsetSettingErrorEnabled
&& error
== vr::EVRSettingsError::
VRSettingsError_UnsetSettingHasNoDefault )
{
return SettingsError::UndefinedError;
}
LOG( ERROR ) << "Could not access \"" << settingsKey << "\" setting: "
<< vr::VRSettings()->GetSettingsErrorNameFromEnum( error )
<< " " << customErrorMsg;
if ( error
== vr::EVRSettingsError::VRSettingsError_UnsetSettingHasNoDefault )
{
unsetSettingErrorEnabled = false;
}
return SettingsError::UndefinedError;
}