* Add checks for seated improve shutdown state
Seated mode chaperone update is still broken. Normal standing mode space motion needs testing on WMR and Rift
* Fix updating chaperone on room setup completion
* Implement seated universe recenter/offsets/motion
Addresses #145
* Add Option "Allow External App Chaperone Edits"
This option is added to the settings tab. It allows external apps to modify the chaperone but only if the current offset is 0,0,0 and rotation is 0. The option is disabled by default.
The implementation is simple 3D vector scaling and addition. The
HmdMatrix34_t consists of a 3x3 rotation matrix and a 3D vector for
position.
The overlay position is only updated whenever a new overlay is changed
because we need the old overlay position in order to modify it. The
openvr call to get the position is only updated whenever you open the
menu.
A new page was created due to lack of space on the utilities page.
* Test removal of HideWorkingSetPreview for issue #133
* Update WorkingSetPreview on apply reset data for issue #133
* fixed bug to apply floor fix offsets properly
* updated version to 3.0.1
* format
* Prevent space offsets effect on fix floor measurement
* Reorder chaperone commit timing on reset
This is an attempt to smooth apparent ~0.1sec lag on first movement after using a reset.
* Fix space fix tab (todo: reimplement undo button)
* Improve reset function and velocity timing
* fixed PTT checkbox error
* Rewrite of chaperone adjust. Make drift impossible
* Formatting
* fixed mic mute on exit
* format
* Clean up interactions with new chaperone adjust
* Remove commented code
* Implement height toggle action and ui
There are still many elements remaining from the old input system.
These have not been removed due to time constraints. They should
be removed as part of a general clean up process.
The PTT profile buttons have been replaced with a text telling users
to use the SteamVR bindings interface. This is for people who don't
read changelogs.
All images have been moved to the /img/ folder in order to fully
separate qml from images. The .qrc file allows qml to use the images by
appending the qrc:/ prefix before the abstract path to the image.
Note that the .qrc file is also check at compile time, which further
enhances the confidence the lack of errors.
Some of the images are not used in the QML, but instead directly passed
through to the OpenVR API. These have not been added to the .qrc file.
The QRC file is a platform independant way of referring to resource
files. It allows the program to access resources in an abstract way
instead of the direct file path.
This is the first step towards moving all files to the new system.
Elements work like they've always done, this just moves the commonly
used components away from the global namespace.
The qmldir file still does something, although at this point it is
unknown exactly how it's used and whether or not it could be changed to
simplify imports across the block.
The popups have been moved inside the scope of the ProfileButtons. Since
the popups open based on the location of their parents, they are
currently opening underneath where they used to open.
Since the profiles and ptt settings do not work anyway, this is seen as
acceptable.
The PttControllerConfigDialog was not used by anything else, hence it
makes sense to move it into a more limited scope.
The PttControllerConfigDialog file itself is only used by AudioPage and
AccessibilityPage. Since the AccessibilityPage is going to be removed
the PttControllerConfigDialog should be moved into the audio_page
folder.
The PTT controls were grouped in a ColumnLayout with the microphone
device and volume controls. Grouping the microphone controls together
mirrors what is done with the mirror device controls.
The mirror selector is a sub part of the volume slider. This could be
changed in the future to have the slider be a top level component that
contains both selector and slider.
For now the way to go is to have the mirror device and audio device
selectors as different components instead of trying to inherit from a
single component and filling in the necessary function calls.
This is because some function calls are nested inside other components
and would be very messy. Perhaps in future commits the selectors will
inherit from a single parent.
Setting the default audio profile has also been moved into the separate
dialog box. This should not change anything and no bugs were found in
testing, however I have no idea how objects in QML/C++ are initialized
or if our current codebase is created with this in mind.
Valve's official terminology are "Room Setup" and "Tracking Universe". Changed our usage of "Playspace" to "Room" for clarity with the upcoming Room-Turn feature and existing Room-Drag feature when compared to nomenclature for other tools that exits out there.
Also slight clean up in readability of movecentertab's action functions.