-
-
Notifications
You must be signed in to change notification settings - Fork 54
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
OpenXR-input branch #1286
Draft
JulianGro
wants to merge
32
commits into
overte-org:master
Choose a base branch
from
JulianGro:openxr-input
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
OpenXR-input branch #1286
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
The build demands it but it's missing. Copy from upstream vcpkg repo. Fixes the following error: ``` Computing installation plan... error: while looking for jsoncpp:x64-linux: overte-files/vcpkg/cfe0a2a0/ports/jsoncpp: error: jsoncpp does not exist ```
Copy from vcpkg repository. Add OpenXR to hifi-client-deps.
Add OpenXrDisplayPlugin and OpenXrInputPlugin. Add controller bindings for the Valve Index controller.
Don't present frame more than once in OpenXrDisplayPlugin.
* Add thumbstick click and touch. * Add face and trigger touch. Use left primary / secondary instead of face button names.
This makes the Y thumbstick axis work.
Enabling it globally causes issue with WebRTC. Co-authored-by: Lubosz Sarnecki <[email protected]>
When enabling C++20 the lerp function seems to be redefined on GCC (not on MSVC), don't redefine it using a CMake definition.
Add missing includes on Windows. Include GLX only on Linux. Move openxr_platform.h include to OpenXrContext.h. To make this possible, certain names from GLX/X11 need to be undefined in order to be now includable in OpenXrInput.h. Add Overte e.V. copyright. Co-authored-by: Lubosz Sarnecki <[email protected]>
This aught to be replaced with a proper set of XR input profiles, at the moment this is *just* enough to get hardcoded button inputs working with the existing Vive controller config.
This still isn't ideal and it uses the Vive controller settings, but this should work on most controllers thanks to OpenXR's built-in action remapping and standardised button names.
Replaces the raw controller button inputs with named OpenXR actions. There's a lot of engine components that expect raw controller inputs like the VR teleport script. Those will have to be refactored later, but for now this works well enough and is perfectly usable. A small issue I've hit is the LY input working for the teleport script, but not for smooth locomotion. I've hacked around this by having the "walk" action bound both to LX/LY and to the Translate actions. It's a bit janky for teleports, but it's functional. TODO: Feedback on intuitive bindings for other controller types besides just the HTC Vive controllers.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I just want the CI to build this so I can try this on Windows.