Commit Graph
7693 Commits
Author SHA1 Message Date
Jakob Bornecrantz 7dfe32c7a8 u/var: Add read-only i64 nanosecond to u_var
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2491>
2025-06-26 17:33:56 +00:00
Jakob Bornecrantz 3994a3c80c a/bindings: Add C++ guards in header
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2491>
2025-06-26 17:33:56 +00:00
Jakob Bornecrantz 7e8ded86e3 scripts: Group OpenXR extensions more clearly
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2491>
2025-06-26 17:33:56 +00:00
Jakob Bornecrantz 7f677af453 scripts: Sort OpenXR extensions
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2491>
2025-06-26 17:33:56 +00:00
Beyley Cardellio ced199efad st/prober: Add serial number to system devices log
This is a "nice to have" when initially getting serial numbers wired up in a driver.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2500>
2025-06-26 11:53:33 +00:00
Jakob Bornecrantz 93d76364dd c/util: Refactor comp_render view adding functions and struct
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2502>
2025-06-26 12:23:34 +01:00
4bde82b85b c/util: Add format parameters to scratch image functions
Co-authored-by: Andrei Aristarkhov <aaristarkhov@nvidia.com>
Co-authored-by: Jakob Bornecrantz <tbornecrantz@nvidia.com>
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2502>
2025-06-26 12:17:25 +01:00
Beyley Cardellio 311a1fa5db d/wmr: Add more binding profiles to WMR controllers
- OG WMR -> Vive wand
- Odyssey -> OG WMR
- Odyssey -> Vive

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2496>
2025-06-25 15:03:11 +00:00
Nyabsi 146ee8c2f2 d/steamvr_lh: Fix haptic pulse being set to 1 Hz when XR_FREQUENCY_UNSPECIFIED is used
The steamvr_lh driver haptic pulse was being set to 1 Hz when the haptic frequency sent from a OpenXR client was set to XR_FREQUENCY_UNSPECIFIED (0.0f), which is far too weak for games such as Beat Saber that rely completely on haptic feedback as core mechanism, now the code is adjusted to set the frequency to 200 Hz when it's 0 which is comparable to what SteamVR sets on its OpenXR runtime.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2449>
2025-06-25 13:52:03 +00:00
Beyley Cardellio 2e8edcda48 doc: Document !2487
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2487>
2025-06-25 13:42:01 +00:00
Beyley Cardellio b19915e7d4 a/bindings: Remove extensions of Xbox controller interaction profile
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2487>
2025-06-25 13:42:01 +00:00
Beyley Cardellio c5726d59e8 a/bindings: Add MNDX_oculus_remote extension
This adds an extension for the Oculus Rift Remote, a small 9 button, 0dof remote that shipped with early Oculus Rift CV1 units.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2487>
2025-06-25 13:42:01 +00:00
Korcan Hussein 006ab6877b external/openxr_includes: Update OpenXR headers to 1.1.49
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2501>
2025-06-25 11:23:42 +01:00
Simon Zeni 970e3c1a0a a/util: fallback to XDG_CACHE_HOME then ~/.cache in u_file_get_runtime_dir
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2465>
2025-06-25 09:58:03 +00:00
Simon Zeni a5221e1e05 a/util: return int type for function returning the return value of snprintf
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2465>
2025-06-25 09:58:03 +00:00
AnnoyingRains 2bde9fe01c d/vive: Return NULL instead of false
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2485>
2025-06-23 15:08:29 +00:00
Beyley Cardellio 96a74e411c d/psmv: Implement battery status function
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2494>
2025-06-21 00:01:04 -07:00
Simon Zeni d8b6b2bb27 st/oxr: handle xrt_device_set_output returned result
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 16:50:23 -04:00
Simon Zeni aa5b75cd3e xrt: adapt driver to new set_output api change
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 16:50:23 -04:00
Simon Zeni 24e3ca2cd2 u/logging: add U_LOG_XDEV_UNSUPPORTED_OUTPUT
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 10:01:20 -04:00
Simon Zeni cd278d8fab u/pp: add u_pp_xrt_output_name function
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 10:00:58 -04:00
Simon Zeni 87ea32d0c6 xrt: introduce XRT_ERROR_OUTPUT_REQUEST_FAILURE
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 09:55:56 -04:00
Simon Zeni cfada06c74 xrt: introduce XRT_ERROR_OUTPUT_UNSUPPORTED
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 09:14:21 -04:00
Simon Zeni 2123140f99 ipc: return xrt_device_set_output result in server handler
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 09:14:21 -04:00
Simon Zeni af558eb7a7 xrt: xrt_device_set_output return xrt_result_t
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2360>
2025-06-20 09:14:19 -04:00
Jakob Bornecrantz 8a7fc65f09 doc: Document !2490
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2490>
2025-06-19 15:05:18 +01:00
Andrei Aristarkhov 3ce3f71740 c/main: Allow configurable final_layout in comp renderer render pass
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2490>
2025-06-19 15:05:18 +01:00
Andrei Aristarkhov adfa1a2b10 c/main: Remove windowing system integration requirements
With the introduction of the debug comp_target the main compositor
can now run without any windowing system integration.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2490>
2025-06-19 15:05:18 +01:00
Jakob Bornecrantz 724e2b0f71 c/main: Add comp_target_debug_image
This change lets you run the main compositor without any output,
since this uses the debug image these can be inspected with the debug
gui or other code using the u_var system.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2490>
2025-06-19 15:05:18 +01:00
Jakob Bornecrantz 662c4e7fdd c/main: Handle signal semaphore being null
This is needed for targets that doesn't have semaphores,
like the debug image target introduced in the next commit.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2490>
2025-06-19 14:54:00 +01:00
Sapphire c6da71957d d/steamvr_lh: catch errors when reading libraryfolders.vdf
Prevents abort when libraryfolders.vdf doesn't exist.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2489>
2025-06-18 15:04:22 +00:00
Beyley Cardellio 4dbb5881fa doc: Document !2486
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2486>
2025-06-18 14:14:29 +00:00
Beyley Cardellio 3797d46f8a st/oxr: Check to see if a dpad path is actually for emulation before assuming it is
This caused issues when implementing an OpenXR interaction profile which natively contained dpad paths.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2486>
2025-06-18 14:14:29 +00:00
Beyley Cardellio 40fcca9baf a/util: Add logic to allow filling gamepad roles
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2486>
2025-06-18 14:14:29 +00:00
Beyley Cardellio fdfcc2e41a c/main: Move A2B10G10R10 format to top, and add 16-bit float format.
10bit colour is the native format of the PSVR2. I'm not sure which should go first since on
displays which natively support float formats you would likely want that to come first.
However, since no other HMDs support 10bit colour or floating point formats to my knowledge,
this is fine for now.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2488>
2025-06-17 14:14:44 +00:00
Beyley Cardellio d56ce58a96 doc: Document !2428
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:19 -07:00
Beyley Cardellio 7a348cf5ca d/ohmd: Prepare for superceeding the OpenHMD Rift DK2 driver
Downstream, the new Rift driver has complete 6dof support, and fully superceeds OpenHMD in terms of features and usability. This commit is to remind me to re-add this block of code in once the rest of the bits are upstreamed.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:19 -07:00
Beyley Thomas 89e88f9a86 d/rift: Various tracking fixes
Handle remote clock wraparounds, dont drop samples, and tweak IMU fusion
settings.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:19 -07:00
Beyley Thomas 6490046d7e d/rift: Rendering fixes + driver cleanup
Switches off simple device setup.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:19 -07:00
Beyley Thomas 7c743fdb2d d/rift: Add env var to override ICD
DK2 has a fixed IAD way off from my own IOD (and the IAD is the default ICD),
so this env var lets me bring the ICD closer to my actual IOD.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:19 -07:00
Beyley Thomas f812b2d7b2 d/rift: Remote timestamps, gravity correction, monotonic samples
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:19 -07:00
Beyley Thomas 1250f8a9ff d/rift: Fix distortion and render parameters
This appears to be fully correct on DK2 now. There are still some fixes
to this code required for CV1 (which is slightly off-center, and there's
a bug in this code making that not work correctly),
but those will be upstreamed at a later point, since it isn't relevant
to DK2 specifically, and would be hard to cherry-pick.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:47:18 -07:00
Beyley Thomas 0714e012eb d/rift: Basic 3dof
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:46:56 -07:00
Beyley Thomas 2fcc266230 d/rift: Basic lens distortion
Needs work, use Util_Render_Stereo::DistortionMeshMakeVertex in LibOVR as a reference.

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:46:56 -07:00
Beyley Thomas 1e8e205b4a d/rift: Add basic Rift DK2 driver
Only handles very basic init and display

Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2428>
2025-06-16 16:46:55 -07:00
Simon Zeni d2ec236e3b comp: handle xrt_device_get_view_poses returned result
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2365>
2025-06-09 11:37:37 -04:00
Simon Zeni 4a73c218b4 st/oxr: handle xrt_device_get_view_poses returned result
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2365>
2025-06-09 11:37:37 -04:00
Simon Zeni bb9bcee2a3 xrt: adapt driver to new get_view_poses api change
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2365>
2025-06-09 11:37:35 -04:00
Simon Zeni ad8cfaa90a ipc: return xrt_device_get_view_poses result in server handler
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2365>
2025-06-09 11:32:35 -04:00
Simon Zeni b494e170c3 xrt: xrt_device_get_view_poses return xrt_result_t
Part-of: <https://gitlab.freedesktop.org/monado/monado/-/merge_requests/2365>
2025-06-09 11:32:35 -04:00