Commit graph

7290 commits

Author SHA1 Message Date
Christoph Haag bb2008ebf2 st/oxr: Add KHR_maintenance1
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 2371d68bbe a/bindings: Add meta/touch_controller_* profiles
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag b101db3705 a/bindings,xrt: Add Touch Plus controller
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 73686b340b a/bindings,xrt: Add touch pro controller
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag ab2e89affd a/bindings,xrt: Add FB_touch_controller_proximity
Adding virtual profiles is a bit of a hack that we may want to unify in the
future.

It also adds some redundant verification for paths like
"/user/hand/left/input/trigger"

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag d0a6fc2c3c a/bindings,xrt: Add vive focus 3 profile
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 397295274e a/bindings,xrt: Add vive cosmos controller profile
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag f2e1fdb26c a/bindings,xrt: Add pico neo3, 4, g3 controllers
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag cfd3a709ae a/bindings: Add curl, slide, proximity to schema
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 9eaa4d4921 a/bindings: Mark odyssey controller as promoted in 1.1
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 74111e68fd a/bindings: Mark magic leap 2 profile as promoted in 1.1
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag cf9ccb6993 a/bindings: Mark hp mr profile as promoted in 1.1
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 0f07f5fc0e a/bindings: add grip_surface virtual profile
Aliasing XRT_INPUT_GENERIC_GRIP_SURFACE_POSE to XRT_INPUT_GENERIC_PALM_POSE
would be complicated because it is implemented as an enum.
Therefore, just reuse XRT_INPUT_GENERIC_PALM_POSE for now.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag bbe33da56e st/oxr: Enable core local floor space in OpenXR 1.1
v2: st/oxr: Handle local floor in OpenXR 1.1 when extension is not available

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag eaf747eca2 u/space_overseer: skip actually locating spaces in themselves
It is always going to be identity. Keep calculating the offsets though.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 5ba58a5711 xrt,st/oxr,u/space_overseer: Implement advanced xrLocateSpaces
v2:

xrt: Allow NULL space in locate_spaces

For action spaces, an xrt_space is found if
get_xrt_space -> get_xrt_space_action -> oxr_action_get_pose_input
finds an active input. If no input is active, the xrt_space will be NULL.

ipc: Check allocation of space_ids for locate_spaces

st/oxr: Fix memory leak in xrLocateSpaces with invalid spaces

v3: ipc: Return error when locate_spaces allocation fails

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 0bd463c2af st/oxr: Add naive xrLocateSpaces[KHR,]
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag bff72f6c23 st/oxr: Add OXR_VERIFY_API_VERSION_AT_LEAST verification macro
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag ae7facbdc7 st/oxr: Add ENTRY_IF_VERSION_AT_LEAST to negotiate
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag cdbf4ef26a a/bindings: Generate code to verify paths for promoted core paths
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 7cf457d894 st/oxr,a/bindings: Move more verification logic to generated bindings
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag a35d7bd255 a/bindings: Remove XR_ prefix from extension names
They are removed in the generator script anyway.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 0a6209f153 a/binding: Link oxr-interfaces
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag a9d55c1cc8 st/oxr: Add oxr-interfaces INTERFACE for oxr st include path
Add vulkan and external-renderdoc to oxr-interfaces, needed on windows.

Also add compile definitions to oxr-interfaces

This is necessary for OXR_EXTENSION_SUPPORT_GENERATE to generate the same
list of extensions when including oxr_objects.h.

(e.g. XR_USE_OPENGL will not be set, causing struct oxr_extension_status
to not have a KHR_opengl_enable menmber.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 747665f2b0 ext/openxr: Update to OpenXR 1.1 headers
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag a2fae359e1 st/oxr: Debug print applicationInfo.apiVersion
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag b47eaaa266 st/oxr: Record OpenXR major.minor version on oxr_instance
This is needed to differentiate e.g. OpenXR 1.1 functionality from
OpenXR 1.0.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Christoph Haag 5ffe3c89a4 st/oxr: Fix applicationInfo apiVersion version check
st/oxr: Add OXR_IGNORE_OPENXR_VERSION debug var

This enables applications to run that require an OpenXR version that monado
does not support.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2194>
2024-05-28 22:09:13 +00:00
Jan Schmidt edb418aa1a d/ohmd: Reject WMR and Rift S drivers 2024-05-27 22:28:26 +00:00
Simon Zeni 1e5cfb399a doc: document !2168 2024-05-24 19:37:50 +00:00
Simon Zeni d752ca70a1 cmake: enable CMP0083 2024-05-24 19:37:50 +00:00
Rylie Pavlik 01d4d45fab doc: Document !2208 2024-05-24 12:40:28 -05:00
Rylie Pavlik f5804e473a t/oxr_android: Remove unused resource. 2024-05-24 12:37:19 -05:00
Rylie Pavlik 4ef23ea747 t/oxr_android: Update Android logos
Also adjust branding so the out-of-process build looks more official,
since we cannot assert some privacy details when running in process.
2024-05-24 12:37:19 -05:00
Rylie Pavlik da1e9d284f cmake: Disable noisy warnings.
Wish I could just do this only for braces in initialization, but
the tools available are too coarse-grained.
2024-05-24 12:37:19 -05:00
Rylie Pavlik 3d0b984faf gradle: Improve build 2024-05-24 12:37:19 -05:00
Korcan Hussein 378b2aa9f3 doc: Document !2219 2024-05-22 17:46:02 +01:00
Korcan Hussein bc6783c0a9 d/android: Set both orientation and position valid/tracked flags
hello_xr, unity and possibly other apps check the view pose flags
for both pos & orientation flags to be valid otherwise they invoke
`xrEndFrame` with no layers set.
2024-05-22 17:45:54 +01:00
Yuxuan Shui fbe5716471 doc: Document !2149 2024-05-22 13:48:25 +00:00
Yuxuan Shui 7e7e23df7a d/steamvr_lh: Allow overriding steamvr path with environment variable
To support use case such as:

* Non-standard steamvr install path.
* Using older steamvr versions to workaround breakage.
* Using steamvr driver with local modifications.
2024-05-22 13:48:25 +00:00
Korcan Hussein b562e3d35d doc: Document !2216 2024-05-22 11:40:36 +01:00
Korcan Hussein 06eebfb06f c/util: Fixes crash bug when zero layers are committed
Fixes crash in `render_gfx_end_target` with non-compute pipeline path
on android (possibly any platform) when zero layers are committed.
2024-05-22 11:40:36 +01:00
Simon Zeni 3e1ee24dfd doc: document !2170 2024-05-21 22:39:32 +00:00
Simon Zeni f17bb81620 cmake: add VERSION and SOVERSION properties to monado shared library 2024-05-21 22:39:32 +00:00
Meng Jiao 0f713282da doc: Document !2214 2024-05-21 16:07:46 +00:00
Meng Jiao 48f63f7f60 comp: Fix vk_deinit_mutex asserts when vk_create_device fails. 2024-05-21 16:07:46 +00:00
Korcan Hussein 129f8ff1b6 doc: Document !2218 2024-05-21 15:43:25 +01:00
Korcan Hussein ecb0ae2254 st/oxr: XR_HTC_facial_tracking state-tracker clean-up
Moves the XR_HTC_facial_tracking state-tracker implementation
out of oxr_api_session.c into dedicated files, following
api/monado conventions.
2024-05-21 15:43:19 +01:00
Christoph Haag 360eeb535d doc: Document !2215 2024-05-21 14:20:11 +00:00
Christoph Haag 2e6315b115 st/oxr: Fix warning for missing xdev space case handling 2024-05-21 14:20:11 +00:00