-
-
Notifications
You must be signed in to change notification settings - Fork 453
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds new features for Mixed VR setups (ALVR clients as FBT kits e.g.) #650
Conversation
* Adds support for optionally making the ALVR HMD as a tracking reference class which disables all the video encoding/streaming in the openvr driver and only recieves pose inputs from HMD & controller. This also allows other HMDs do be used with ALVR as the main steamvr HMD. This can be used for the purposes of using ALVR controllers for FBT, use alternative controllers with other HMDs, or debug purposes. * Adds 2 new controller profiles and support for Vive tracker emulation.
Merging from master
Merging from main to FBTNoHMD
* Adds support for making a virtual vive tracker proxy that mirror's the position and orientation of the ALVR headset. This can be used to make the HMD as a hip tracker or just a general tracked object for supporting games/devices (this setting only makes sense in conjugation with TrackingRefOnly properties which changes the openvr device class). * Adds new controller property to override a particular controller profile (or used defined) tracking system name to make the current ALVR headset. This would used in situation where a user has enabled vive tracker controller profile and would like calibrate against real lighthouse setup with openvr space calibrator. * Changes the "TrackingOnlyRef" property to be only visible when advance settings is enabled.
merging from master
merging from master
merging from main
merging from main
Support bundled ffmpeg libraries in Linux build (alvr-org#649)
merging from main
Adds new features to support the ability to use ALVR's client headset & controllers (Quest 1, 2, etc) with other PC VR headsets for the purposes of using them as emulated vive trackers for full body tracking, to use ALVR controllers with other headsets, or for debugging purposes, specific features added are: - New Vive Tracker controller emulation mode profile, treats ALVR controllers as vive trackers in SteamVR. Controller Input is still supported when the tracker role is set to handed/held-in-hand. Hand-tracking is still supported with these profiles hence the extra no-pinch option. - New advance headset option _"Tracking Reference Only"_, disables all server side video encoding/streaming and makes the ALVR HMD tracked device class _vr::TrackedDeviceClass_TrackingReference_. Server only recieves pose data from an ALVR client (and still streams audio if the option is still enabled). - New advance headset option _"Vive Tracker Proxy"_, when enabled makes the ALVR openvr driver spawn a virtual hip vive tracker that uses the pose of the ALVR HMD. This can be used to make the ALVR headset client a hip tracker for FBT, tracker roles can be changed. - New advance controller option _"Use Headset Tracking_ System", tells the ALVR openvr driver to override the selected controller emulation mode profile's "tracking system name" with the selected emulated headset. This can be used in the case where the vive tracker controller profile is selected and a user wants to do space calibration against another lightouse based tracking system. - Changes the advance controller option "Controller Type" into individual left and right types, all the existing controller profiles will set the same value for both but for vive tracker profile will set these to use the vive tracker left/right foot profiles, users can change this to use different defaults (and still able to change their role within SteamVR). Known Issues: Sometimes while changing back & forth with these specific properties and ALVR server restarts, SteamVR fails to initialize indefinitely until the user reboots their PC.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for your work! I don't have time to go through a full review now but I can point out something that should be fixed. The english translations should not be put in non english files, the dashboard already falls back to english when the keys are not found for a particular language. Two CI checks failed, you should run cargo fmt
and then fix some syntax errors for the Linux build.
Fixing rust formatting errors
* Fixes C++ compiler errors for linux builds. * Removes/cleans up untranslated settings.
Merging from FBTNoHMD to main
I have quickly tested this branch on Linux port and I don't see any regression. If you have nothing else to add, i'm OK to merge |
Yeah nothing else to add for this, thanks. |
Adds new features to support the ability to use ALVR's client headset & controllers (Quest 1, 2, etc) with other PC VR headsets for the purposes of using them as emulated vive trackers for full body tracking, to use ALVR controllers with other headsets, or for debugging purposes, specific features added are:
Known Issues:
Sometimes while changing back & forth with these specific properties and ALVR server restarts, SteamVR fails to initialize indefinitely until the user reboots their PC.