* add delay if interface not found
* adjust initialization behavior
* pushed for debugging reasons for concerned parties
* comment out simple recenter
* remove old style motion, some minor optimizations
* optimize default case check
* optimized default condition
* change manifest install behavior to trigger on desktop mode as well
* add desktop mode binding launch
* add tracker overlay option to utils
* commit to check status
* attempt to fix native LH issues with chaperone when exiting
* add desktop mode toggle and some cleanup
* remove adjust chaperone
* remove clang format from ci, increment version, cleanup
* update circle ci
* fix conversion warning
* add F13-19 to keyboard parser
* add additional logging around failure to initialize
* add unsaved changes
* update version 5.8.1
* fix some collisions in enum declaration
* add controller powers on steamvr, and no HMD to steamvr tab, increment version
* slightly alter drag movement, fix qml issue
* code cleanup
* fix logspam/attempt to delete non existant overlays
* increment version 5.8.3
* update openvr 1.26.7
* ignore chaperone play area error, as it should not effect chaperone, and it frequently occurs with some meta to pcvr configurations
* replace old seated origin call with new reset zero pose call
* change zero offsets to new command
* adjust camera settings to new version of openvr 1.27
* fix save error
* increment version 5.7.4
* Option to fade out chaperone when HMD goes below a configured height
Useful for setups in which you have a seat just outside your VR space,
or like to sit in the middle of your space for any amount of time. Will
fade out the boundaries to 0% opacity over 5 seconds, 5 seconds after
you sit down. Standing back up to the configured height will make them
pop back in immediately.
Can be found under Chaperone -> Additional Settings.
* Update format.sh to require clang-format v10
* Use fade distance instead of opacity, opacity inconsistently applied
* Bugfixes (#624)
* stop crashing on HMD Init Errors, as well as bypass force quit on all steamvr Init Errors
* add qtc clang to gitignore
* add app volume adjustment
* adjust app volume placement in menu
* fix type error
* Revert 1.26.3 chaperone adjust changes
* fix setting bug increment version
---------
Co-authored-by: Chelsea Jaggi <feilen1000@gmail.com>
* fix chaperone move behavior for 1.26.x of open/steamvr fix a ui error with a warning on old app and external chaperone
---------
Co-authored-by: Chelsea Jaggi <feilen1000@gmail.com>
* Option to fade out chaperone when HMD goes below a configured height
Useful for setups in which you have a seat just outside your VR space,
or like to sit in the middle of your space for any amount of time. Will
fade out the boundaries to 0% opacity over 5 seconds, 5 seconds after
you sit down. Standing back up to the configured height will make them
pop back in immediately.
Can be found under Chaperone -> Additional Settings.
* Update format.sh to require clang-format v10
* Use fade distance instead of opacity, opacity inconsistently applied
* Bugfixes (#624)
* stop crashing on HMD Init Errors, as well as bypass force quit on all steamvr Init Errors
* add qtc clang to gitignore
* add app volume adjustment
* adjust app volume placement in menu
* fix type error
* update version string, prevent us from exiting when interface reported bad
---------
Co-authored-by: Chelsea Jaggi <feilen1000@gmail.com>
* Option to fade out chaperone when HMD goes below a configured height
Useful for setups in which you have a seat just outside your VR space,
or like to sit in the middle of your space for any amount of time. Will
fade out the boundaries to 0% opacity over 5 seconds, 5 seconds after
you sit down. Standing back up to the configured height will make them
pop back in immediately.
Can be found under Chaperone -> Additional Settings.
* Update format.sh to require clang-format v10
* Use fade distance instead of opacity, opacity inconsistently applied
* Bugfixes (#624)
* stop crashing on HMD Init Errors, as well as bypass force quit on all steamvr Init Errors
* add qtc clang to gitignore
* add app volume adjustment
* adjust app volume placement in menu
* fix type error
* increment version
* fix version number
---------
Co-authored-by: ykeara <ykeara1@gmail.com>
* add nlhomann json header
* add get scene app fn
* add get current binding and related logic
* add save binding file to settings folder
* apply binding fn added fixed uid bug
* add button logic to QML, add enable Bind Setting
* add finding logic for all custom bind
* fix minor qml issues
* fix get controllername bug, fix bug with save bind
* fix regex issue
* change webrequest for selectconfig
* change to properly urlify path to send
* fix race condition web requests
* change steamvr tab qml formatting
* change color scheme
* change colors of icons to text color
* change bind qml better for better ux
* add possible workaround for space drag issues
* add deact color to pushbutton
* increment version
* adjust button size in movecenter
* move nlhomann json
* fix PKGBUILD to include missing dependency (#606) (#613)
It turns out qt5-websockets needs to be included for a successful build.
Co-authored-by: James R <71466513+ColdIce1605@users.noreply.github.com>
* fix warning
* improved logging messages around perapp bindings
* improve getsceneappID logging
* add HMD based controller Finding
* improve logging controller name
* change logging around initial chaperone calibration
* increment version
* improve logging/error handling around sceneappid failures
* added fallback for getting scene app by pid
* update version string
* update documentation
Co-authored-by: James R <71466513+ColdIce1605@users.noreply.github.com>
* add Select Dongle Pairing, fix clipping on long SN names (quest)
* remove test log, add ws log, add pair protection non steamvr
* add missing install commands for new qt modules
* remove bad package
* add auto apply chaperone option, remove old seated/uncal/openxr fixes in favor of always on
* adjust battery overlay for tundras
* fix tundra tracker bat indicator positioning, remove offset page restrictions from non-standing universe, make pairing more responsive and display brief instructions
* add Drag Multiplier
* update documentation
* change version to release
* update readme
* fix format issues readme
* update readme with setting description
* change uid to prevent collision
* changed rounding for grav fling to 2 decimals to be consistand with other values on drag page
* Revert "Add dedicated image for CircleCI builds"
This reverts commit 44a5d3eed0.
With how little we use the Docker hub features it does not make sense to
have external dependencies on it.
* Add `qt512websockets` to CI build
This is necessary for Ykeara's feature branch.
* Crash Recovery Defaults to Off, add option to use space drag w/ uncalibrated playspace
* increment version 5.3.3
* Feat/apply offsets binding (#576)
* add apply offsets steamvr input
* add new binding to Readme
Co-authored-by: TheMrGong <gongora656@gmail.com>
* increment version 5.4.0
* added LH Console Interface class, WIP TX/RX list via lh console
* switch over to property based dongle information
* add ovr system wrapper
* add use of parameter to avoid warning as error
* openXR fix, and Change Display State of Chaperone Disabled
* update text
* format files
* clang 9.0.0 format
* add documentation update
* remove windows header include
* remove filesystem header
* fix uncal motion switching issue
Co-authored-by: TheMrGong <gongora656@gmail.com>
Compiling C++ on various different platforms with as many out of tree
dependencies as we have is volatile at best.
In order to prevent a third party warning from ruining the build for
people who don't care about third party warnings, we remove
warnings-as-errors by default.
They are still enabled by default on CI.
This essentially just bakes in all the dependencies and other third
party tools that we need, preventing them from being downloaded on every
new CI run.
TravisCI does not have non-enterprise support for custom images without
a lot of hassle.
* temporarily disabled adjust chaperone
* added experimental check to prevent rotation drift
* adjusted ss to 2 digits precision
* updated rotation model to be based on relative position and not drift
* fixed force precision error with supersampling
* added Error for turning too fast
* removed error impossible to execute
* fixed and cleaned up some potential failure points
* added inversion check
* re-worded warning
* added adjustchaperone2 defaulted to off to replace adjust chaperone
* moved adjust chaperone to settings removed from offsets tab
* moved adjust chaperone to settings removed from offsets tab
* enabled clipping for settings page no longer scrolls outside of its area
* updated strings for release
Previous way of controlling when controllers were run was split among
the different controllers, meaning that third parties would require
knowledge of internal state of controllers in order to be on the same
update schedule as them.
This refactor moves the logic into a seperate class.
Additionally, it also stops the use of the `adjustUpdateRate` function
on all tab controllers, since it broke the prime-number-ability of
less collisions.
The old OpenVR overlays did not function for unknown reasons, and it was
not possible to get them to work.
With this a white overlay with ALARM ACTIVATED will be shown for 3 seconds.
It's not pretty, but it effectively communicates that an alarm has been
activated.
This fixes
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/417
* added two new keyboard press actions
* added todos to overlay controller for new actions
* added settings for keyboard press and default to f10
* added logic, fixed default value
* added action alias
* fixed center marker rotation count
* updated version strings
* fixed Trigger Condition
* removed literal limitation (character input)
* updated version string
* fixed white space issues
* add native chaperone option
* refactored overlaywrapper error handling
* added reset all settings
* added reset all settings option
* clarified driver bounds language
* fixed naming schema of turn settings
* fixed qml issue
* marked errors in settings
* fixed rotation of center marker and cleaned up
* ci test
* removed debugging code
* fixed comment
* fixed rotation.... made messy
* fixed crash when centermarker new was on at launch
* added settings to scroll view
* fixed some initialization issues w/ center marker and some race conditions
* updated Documentation to be more correct/concise about openGL rendering Information issue 457
* changed default behaviour of chaperone bounds to be un-checked to be consistant w/ other settings (default is unchecked)
* cleaned up code around centermarker overlay
* removed unused variables, changed scope of some existing
* code naming cleanup
* more rename
* updated Version strings for 5.1.1 release
* updated string to be more concise
* Bump version string to 5.0.1
* ACTUALLY bump version string
* really really fixed version strings
* changed some defaults, and adjusted speed slider slightly, made text a little more intuitive
* see previous
* fixed issue with disabled seated recenter button
Co-authored-by: ykeara <ykeara1@gmail.com>
It is unknown if gcc uses the O3 optimization levels passed to the
compilation of individual cpp files, or if it needs O3 passed to the
linker as well.
The hash of the final binaries are different, thus O3 is passed to the
linker.
Travis clang does not have the LLVMgold plugin installed.
Disabling LTO is easier than installing the plugin since the CI doesn't
create any artifacts anyway.
Qmake attempts to invoke the linker with the default `g++` binary even
when we changed the binary. This will compile error when using LTO.
For clang:
```
/usr/bin/ld.gold: error: /usr/lib/llvm-3.8/bin/../lib/LLVMgold.so: could
not load plugin library: /usr/lib/llvm-3.8/bin/../lib/LLVMgold.so:
cannot open shared object file: No such file or directory
```
For GCC:
```
lto1: fatal error: bytecode stream generated with LTO version 6.0
instead of the expected 4.1
```
Initial implementation of Auto-Turn
Auto-turn leverages Space Turn automatically whenever you reach a configured distance from your chaperone boundary. Turn direction is in order of precedence:
1. Away from a corner where you're already touching one wall. This is to avoid being turned to face a wall, which we pretty much never want. If 'use corner angle' is enabled, it'll turn the angle of the corner, otherwise it'll turn the angle of your headset to the wall you encountered.
2. In whichever direction will start you unwinding your cord. If your rotations is greater than 'cord detangling rotations' and your angle to the wall is less than 'min detangling angle' it'll turn you such that the thing you're walking towards is directly along a wall, in the direction which will begin unwinding your cord.
3. In the closest angle to the wall. This too will put whatever you're walking towards directly along a wall, so you can walk the maximum distance to it.
- If Smooth turn is checked, it'll turn at a constant (configurable) rate until the world is aligned with the new angle, otherwise it'll snap to the new direction instantly.
- Activation distance is the distance from your chaperone at which auto-turn starts, and deactivation distance is the minimum distance (+ the activation distance) at which it'll be able to be activated again, to avoid turning twice at once.
Redirected walking tries to gently guide you away from your playspace boundaries by tweaking the world's angle at smaller increments than your brain is capable of noticing. While most playspaces won't be big enough to allow this to give you a true 'infinite walk' experience, it can give the perception of your playspace being ever so slightly bigger by making you walk in a slight arc in real life while walking forward in VR.
- Redirected walking is independent from Auto-turn and can be activated on its own. At both the 'slight' and 'imperceptable' radii, the turning speed is incredibly minimal. When walking along one wall of your chaperone to another, you should notice the far corner of your playspace (relative to the world) drifting ever so slightly away from you. In normal circumstances at the lowest settings this shouldn't be noticable.
Co-authored-by: feilen <feilen1000@gmail.com>
* Initial implementation of Infinite Walk
* Code cleanup and abstraction, use nearest corner instead of nearest wall to determine turn direction
* Run clang-format
* Turn relative to the last wall if we run into adjacent walls, otherwise turn at easiest angle
* Limit maximum turns (just refuse to turn for now), only turn on shared corners if going the same direction
* Improve same-corner
* get rid of LastDirectionLeft
* WIP: cord untangling hint
* Try to automatically untangle cord, don't rotate if we encounter a wall behind us
* Incorrect offset for walls
* optimize if hmd inactive
* Cleanup/clarify angles
* (probably?) solve rare segfault
* Adjust the defaults and fix a bug with blocking reverse turns
* Implement smooth turn, fix a bug with shared-corners that would cause it to turn the wrong way
* actually really fix shared corner bug
vect[i + 1 % vect.size()] was somehow evaluating to vect[i + (1 %
vect.size())]
* Move configurables for autoturn to .h to make clearer what's configurable
* WIP: true redirected walking
* First pass optimization/cleanup
* Second pass cleanup/optimize
* Missing clang-format
* Somewhat ugly: Optionally turn the exact angle of the corner when using shared corner turns
* added rotation tab controller in progress
* cleaned up chaperone controller/ finished settings/rotationtab
* did first 4 settings qml, and main qml setup
* initial working build, not all settings UI done
* merging master into redirected walking. (#387)
* Update OVR to 1.10.30 (#379)
* updated to ovr 1.10.30
* fixed updated showoverlaykeyboard call
* fixed keyboard location
* Updated Manifest (#380)
* updated to ovr 1.10.30
* fixed updated showoverlaykeyboard call
* fixed keyboard location
* removed un-necessary matrix, updated app key and manifest
* fixed formatting
* Fix push to mute icon not being used when PTM enabled
* added touch default bindings (#385)
travis CI down/broken?
Co-authored-by: Vasily <vautkin@teknik.io>
* added action, and additional settings
* fixed various bugs added turn speed and mode
* fixed conversion error for turn speed
* added redirected walking options
* formatting
* formatting fixing
* removed old comments
* changed logs to debug and some wording changes
* changed UI layout
* added space turn to rotation page
* added icon, fixed autoturn to autoTurn, fixed conversion to be in qml vs set
* Update src/res/qml/RootPage.qml
yep XD
Co-Authored-By: Kung-vr <38249782+Kung-vr@users.noreply.github.com>
* reverted build changes
* removed un-needed app image build commands
* Cleanup some functions, avoid an extra chaperone check.
* Make redirected walking and autoturn independently enable-able
Co-authored-by: Feilen <feilen1000@gmail.com>
Co-authored-by: Vasily <vautkin@teknik.io>
Co-authored-by: Kung-vr <38249782+Kung-vr@users.noreply.github.com>