The current interface is almost exclusively in written English.
This makes usage of the program more difficult for people who can't
distinguish English words, or remember specific VR/English technical
terminology.
Adding small icons to main menu items will make it easier for the
aforementioned groups to use the application.
This also adds the ability for buttons in general to have a custom icon,
if necessary.
* changed color overlay to use gain values instead of overlay
* moved SS/Motion smoothing, and filter to video tab
* began refactor of steamVR qml page
* added misc toggles to steamvr tab
* added imu fallback and DND, and some qml formatting
* added Camera Settings to SteamVR page
* changed formatting to minimize height
* added video profiles cleaned up steamvr controller
* delta comparison change
* added profiles for video
* fixed display bug in colorgroupbox and removed frivoulous saves
* removed commented code
* added custom keybind buttons
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.
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.
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.
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.
The QML at the moment is a giant mess. Moving pages into individual
folders and properly abstracting the sub components of the pages will
allow for much easier development and better error messages.
Additionally it will prevent polluting the global namespace. Really, all
the reasons for avoiding globally available values and using
abstractions in regular programming also come into play here.
Compare old and new pose via a relative quaternion rather than relative yaw, then calculate the resulting yaw-difference from the quaternion in one go.