Commit graph

5950 commits

Author SHA1 Message Date
Jakob Bornecrantz f586a5ae6a st/gui: Add gui_widget_native_images 2024-01-04 16:23:28 +00:00
Jakob Bornecrantz 92f5b0c1a6 u/var: Add u_native_images_debug 2024-01-04 16:04:40 +00:00
Jakob Bornecrantz 3e76d43c30 u/native_images_debug: Add helper struct to debug xrt_image_native content 2024-01-04 16:04:40 +00:00
Jakob Bornecrantz b743efe0bb a/vk: Return flag for XRT_SWAPCHAIN_USAGE_UNORDERED_ACCESS 2024-01-04 16:04:40 +00:00
Jakob Bornecrantz dbd6504beb c/main: Improve swapchain creation 2024-01-04 15:49:55 +00:00
Jakob Bornecrantz b3dc8ca17e c/main: Use vk_enumerate_swapchain_images helper 2024-01-04 15:49:55 +00:00
Jakob Bornecrantz 07be73afbc a/vk: Tidy surface info function 2024-01-04 15:49:55 +00:00
Jakob Bornecrantz ca43f81322 a/vk: Add vk_enumerate_swapchain_images 2024-01-04 15:49:55 +00:00
Jakob Bornecrantz 9a7056fafe a/vk: Add enumerators for two surface properties 2024-01-04 15:49:55 +00:00
Jakob Bornecrantz f7356d7d7b d/sample: Improve helper message in update_inputs [NFC] 2024-01-04 12:47:49 +00:00
Jakob Bornecrantz 9149352c55 d/all: Standardize use of get_view_poses helper 2024-01-04 12:47:49 +00:00
Jakob Bornecrantz 1254e5041c d/all: Use u_device_noop_update_inputs helper 2024-01-04 12:47:49 +00:00
Jakob Bornecrantz 45f1a2d230 u/device: Improve comment on u_device_get_view_poses 2024-01-04 12:47:49 +00:00
Jakob Bornecrantz 5d49486a8b u/device: Add default, no-op and not implemented function helpers 2024-01-04 12:47:49 +00:00
Jakob Bornecrantz c24bb53dbf xrt: Add XRT_ERROR_DEVICE_FUNCTION_NOT_IMPLEMENTED error 2024-01-04 12:47:49 +00:00
Jakob Bornecrantz e051549668 c/util: Refactor how arguments are given 2024-01-04 11:39:39 +00:00
Jakob Bornecrantz df69c9da50 c/main: Tidy and make dispatch code more uniform 2024-01-04 11:39:39 +00:00
Jakob Bornecrantz 83297c9ce5 c/main: Add enum to select FoV source 2024-01-04 11:39:35 +00:00
Niharika Challapalli 428c511924 u/space_overseer: Make it possible set root as unbounded 2024-01-03 20:43:15 +00:00
Niharika Challapalli 613d08ebbc xrt: Document using unbounded pose 2024-01-03 20:43:15 +00:00
Jakob Bornecrantz 18d21fab70 t/libmonado: Update Python example
* Use new device properties.
* Remove device ID it's deprecated because it's not stable.
2024-01-02 23:10:09 +00:00
Jakob Bornecrantz 00f68ea8c4 t/libmonado: Add property enum and getters for devices 2024-01-02 23:10:09 +00:00
Jakob Bornecrantz 1f60853d6e t/libmonado: Tidy mnd_root_get_device_from_role [NFC]
Tidy both documentation and code.
2024-01-02 23:10:09 +00:00
Jakob Bornecrantz a462afb767 c/render: Remove old code from removed layers 2024-01-02 22:35:29 +00:00
Niharika Challapalli 6588c345ae st/oxr: Fix typo 2024-01-02 22:00:00 +00:00
Niharika Challapalli fb01dce94a ipc: Fix typo 2024-01-02 21:57:14 +00:00
Jakob Bornecrantz 38b7f28205 d/simulated: Support reference space usage printing 2024-01-02 21:34:29 +00:00
Jakob Bornecrantz b30f41bd2d u/space_overseer: Notify the device about reference space usage 2024-01-02 21:34:29 +00:00
Jakob Bornecrantz b7e7aa5d4c xrt: Add xrt_device::ref_space_usage function 2024-01-02 21:34:29 +00:00
Jakob Bornecrantz 6a1788c941 a/vk: Pass create mutable format bit if usage flag is set 2024-01-02 21:31:23 +00:00
Jakob Bornecrantz d2f5103db7 a/vk: Improve format list handling
This fixes scope error on struct and combines the format list on Android.
2024-01-02 21:31:23 +00:00
Jakob Bornecrantz a6ec2c1aa8 a/vk: Helper function static [NFC] 2024-01-02 21:31:06 +00:00
Jakob Bornecrantz f644be460d ipc: Make service a little bit more chatty
Set default logging level to INFO.
2024-01-02 12:19:43 +00:00
Jakob Bornecrantz 94a619bf1b ipc: Print end-user information on Linux
Including how to gathering logs on Linux, and that the service has started.
2024-01-02 12:19:43 +00:00
Jakob Bornecrantz 774c3177c7 ipc: Log shutdown return code with IPC log level 2024-01-02 12:19:43 +00:00
Jakob Bornecrantz 7c5a04c7d0 ipc: Some comments [NFC] 2024-01-02 12:19:43 +00:00
Jakob Bornecrantz 34e9080b8c t/cli: Add info command for problem reporting 2024-01-02 12:18:06 +00:00
Jakob Bornecrantz 301a6e1720 xrt: Make it possible to control where dump goes 2024-01-02 12:18:06 +00:00
Jakob Bornecrantz 32ce9f342f xrt: Make it possible to get builders from prober 2024-01-02 12:18:06 +00:00
plyshka 2ac8587675 st/steamvr_drv: Fill HMD properties for games and apps to recognize it correctly 2023-12-31 18:30:37 +00:00
jialz e51ecede4f st/oxr: Add extension XR_FB_composition_layer_alpha_blend 2023-12-26 12:36:58 +00:00
Jakob Bornecrantz 6bdfb1556c st/oxr: Unify FB extension define names 2023-12-26 12:34:38 +00:00
Jakob Bornecrantz c123c10a05 st/oxr: Mix tidy [NFC] 2023-12-26 12:22:52 +00:00
AP\shuaxia 0a6e3dfd49 st/oxr: Add extension XR_FB_composition_layer_settings 2023-12-26 11:15:02 +00:00
Jakob Bornecrantz c6b14de7f8 ipc: Re-order process handle functions [NFC] 2023-12-25 10:46:38 +00:00
Jakob Bornecrantz fc356393c2 ipc: Re-order init functions [NFC] 2023-12-25 10:46:33 +00:00
Jakob Bornecrantz 6a21775761 ipc: Tidy debug gui init and error path 2023-12-23 16:30:28 +00:00
Jakob Bornecrantz d1d89cf8e5 ipc: Don't call teardown if mutex fails to be created 2023-12-23 16:26:59 +00:00
Jakob Bornecrantz 9e691de583 ipc: Pass in log_level to init function 2023-12-23 16:25:01 +00:00
Jakob Bornecrantz c7b63a9786 ipc: Use correct log define error message 2023-12-23 16:20:17 +00:00
Jakob Bornecrantz 019343f3fc ipc: Print more client info 2023-12-23 16:19:07 +00:00
Jakob Bornecrantz 37938dc3af ipc: Silence warning [NFC] 2023-12-23 16:04:30 +00:00
Jakob Bornecrantz b38aece060 u/pp: Add xrt_reference_space_type printing 2023-12-21 21:51:00 +00:00
Jakob Bornecrantz 6a4d8530a6 u/pp: Tidy and add more enums 2023-12-21 21:50:52 +00:00
Jakob Bornecrantz 5d31fa7fe1 xrt: Move xrt_reference_space_type to xrt_defines.h 2023-12-21 21:50:45 +00:00
quic_yaommo 0bf275da3f xrt: Set runtime descriptions from CMake 2023-12-21 12:33:26 +00:00
Rylie Pavlik cd384f1f01 a/util: Document lack of thread safety in the bare HistoryBuffer class 2023-12-20 10:44:13 +00:00
Rylie Pavlik 93a1d58820 a/math: Mention thread safety of m_relation_history 2023-12-20 10:44:13 +00:00
Hui Xu d113f83f53 st/oxr: Support XR_FB_composition_layer_image_layout 2023-12-20 10:38:31 +00:00
Rylie Pavlik 960e723394 xrt: Fix outdated name/email address 2023-12-18 14:29:02 -06:00
yuloliu 8919463008 a/vk: Use the defines to manually unref android buffers
The import does not consume them

Co-authored-by: Rylie Pavlik <rylie.pavlik@collabora.com>
2023-12-18 14:24:03 -06:00
Rylie Pavlik c763a1cb86 xrt: Add XRT_GRAPHICS_BUFFER_HANDLE_CONSUMED_BY_VULKAN_IMPORT and friends 2023-12-18 14:23:54 -06:00
Jakob Bornecrantz 699bdf1b11 u/pacing: Fix logic error for selecting min frame period 2023-12-18 10:26:11 +00:00
Jakob Bornecrantz edd77ede44 st/oxr: Missed changes from swapchain format list
These where missed in the swapchain format list changes.
2023-12-17 19:37:56 +00:00
Jakob Bornecrantz 02d0a22aea st/oxr: Use correct define to test for extension support 2023-12-15 23:28:19 +00:00
Weijie Wang fa85b5e98a st/oxr: Add extension XR_KHR_composition_layer_color_scale_bias 2023-12-15 23:11:53 +00:00
Shawn Wallace 24b13de593 d/qwerty: Fix input timestamps 2023-12-15 22:33:59 +00:00
Jakob Bornecrantz ba79c268b1 u/space_overseer: Use broadcast event sink for reference space changes
Generates xrt_session_event_reference_space_change_pending events.
2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 9a22d029a4 u/builder: Pass in broadcast to legacy space overseer helper 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 223b212ba3 d/remote: Take broadcast event sink to create devices 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 6f60116fa9 t/sdl_test: Move system init earlier 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 7dd45db8ea st/oxr: Support XrEventDataReferenceSpaceChangePending events 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 21f7ce976e xrt: Pass down broadcast sink to prober and builder when creating system 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 7017e5ed2d xrt: Add reference space change pending event 2023-12-14 16:22:09 +00:00
Jakob Bornecrantz 467ed130de ipc: Fix headless sessions 2023-12-14 14:33:48 +00:00
BabbleBones 4eac541d96 t/common: Implement SteamVR builder 2023-12-14 14:23:40 +00:00
BabbleBones 8b441bdb4a u/pacing: Add env var to use minimal frame period instead of calculated 2023-12-13 19:59:15 +00:00
Jakob Bornecrantz 17b81e34d7 st/oxr: Guard XR_EXTX_overlay events code 2023-12-12 21:39:47 +00:00
Jakob Bornecrantz 69ab1f486c st/oxr: Tidy events code [NFC] 2023-12-12 21:39:46 +00:00
Jakob Bornecrantz 88f83d0992 st/oxr: Reset action cache fully when doing bindings
If the devices changes actions where left bound when they shouldn't be.
2023-12-12 18:55:50 +00:00
Jakob Bornecrantz d751468785 st/oxr: Transition headless session to FOCUSED on begin session 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz be4e0df9c4 st/oxr: Improve bindings logging a little bit 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz 274b06cba3 st/oxr: Tidy oxr_input_combine_input function and call to function [NFC] 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz 291d0163b6 st/oxr: Refactor input type to string into header [NFC] 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz 6b8728a95b u/system: Fix hand-tracking devices not being assigned in helper 2023-12-11 16:16:34 +00:00
Jakob Bornecrantz bb1af47607 xrt: Change compositor events to be session events
The xrt_compositor_pull_events functions of the native compositors
where never called by the multi client module (aka multi compositor).
2023-12-10 17:05:55 +00:00
Jakob Bornecrantz 113278c68d xrt: Refactor native compositor creation 2023-12-10 17:01:51 +00:00
Jakob Bornecrantz 7806993e1f xrt: Return xrt_system when creating system 2023-12-10 17:01:51 +00:00
Jakob Bornecrantz 5d64b1d447 ipc: Refactor native compositor creation 2023-12-10 17:01:50 +00:00
Jakob Bornecrantz dd9a425202 ipc: Add support for xrt_system and xrt_session 2023-12-10 17:01:50 +00:00
Jakob Bornecrantz f0dbb46cd9 u/[session|system]: Add default and optional implementation for system and session 2023-12-10 17:01:50 +00:00
Jakob Bornecrantz 76c630d2bd xrt: Add xrt_system and xrt_session 2023-12-10 15:43:00 +00:00
Jakob Bornecrantz d7b3b1b827 xrt: Add IPC compositor not created result 2023-12-09 10:11:47 +00:00
Jakob Bornecrantz 0a5d9f47f2 xrt: Add compositor not available error 2023-12-09 10:11:47 +00:00
Jakob Bornecrantz bf5107125a t/sdl_test: Even more documentation 2023-12-08 18:57:25 +00:00
Jakob Bornecrantz 9b69099a65 c/multi: Even more documentation 2023-12-08 18:50:13 +00:00
Rylie Pavlik bd4312d019 t/sdl_test: Improve docs for sdl_compositor 2023-12-08 12:49:14 -06:00
Rylie Pavlik 5f99ce41e4 c/util: Improve docs for comp_base 2023-12-08 12:49:03 -06:00
Rylie Pavlik 52d17583db c/null: Improve docs for comp_null 2023-12-08 12:48:35 -06:00
Rylie Pavlik e85faec8d5 c/main: Improve docs for comp_compositor 2023-12-08 12:48:15 -06:00
Rylie Pavlik 8d393ad3fa c/multi: Improve docs/markup of multi_compositor.
This makes the xrt_compositor inheritance diagram in Doxygen complete.
2023-12-08 11:43:49 -06:00
Jakob Bornecrantz d97d7d75c7 st/oxr: Handle XR_REFERENCE_SPACE_TYPE_LOCALIZATION_MAP_ML 2023-12-08 12:11:49 +00:00
Jakob Bornecrantz 142969b509 u/misc: Only free memory if there was an allocation error 2023-12-08 12:11:49 +00:00
0y8w1x 66e8db5d5a d/ulv5: Add UltraLeap v5 driver 2023-12-05 16:07:32 +00:00
utzcoz 0428ce4b0f s/oxr: Add explicit casting for PFNEGLGETPROCADDRESSPROC
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-12-05 15:41:34 +00:00
utzcoz f09adc105f ext/openxr: Bump OpenXR headers to 1.0.32
1. Download and unzip from
   https://github.com/KhronosGroup/OpenXR-SDK/releases/tag/release-1.0.32.
2. Copy all header files in include directory to
   src/external/openxr_includes/openxr.

Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-12-05 15:41:34 +00:00
Jakob Bornecrantz 0ee84ea4a8 t/common: Use new u_builder helper 2023-12-05 12:55:42 +00:00
Jakob Bornecrantz dbcf753b1e t/common: Tidy builders a bit [NFC] 2023-12-05 12:55:42 +00:00
Jakob Bornecrantz 972c929333 u/builder: Add new u_builder helper
This does some of the heavy lifting when it comes to managing the system
devices and the space overseer. The same code was replicated in basically
all of the builders, this lets us avoid that.
2023-12-05 12:55:42 +00:00
Ryan Pavlik 1d09587bac t/oxr: Clean up docs 2023-12-04 22:27:09 +00:00
Ryan Pavlik debd15f6da t/oxr_android: Clean up gradle 2023-12-04 22:27:09 +00:00
Ryan Pavlik 4cb14719a9 d/sample: Implement missing APIs 2023-12-04 22:27:09 +00:00
Rylie Pavlik 617a704b29 xrt: Fix comment typo 2023-12-04 11:54:01 -06:00
Rylie Pavlik 9c7851f076 xrt: Fix typos, clarify docs 2023-12-04 11:53:32 -06:00
Jakob Bornecrantz 79a2f3f3d6 d/remote: Tidy [NFC] 2023-12-01 18:51:01 +00:00
utzcoz 7485975bfb d/remote: Use socket_close for destroy
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-12-02 02:12:43 +08:00
Charlton Rodda 1b93431173 d/remote: Fix socket closing on Windows 2023-12-01 15:31:18 +00:00
Christoph Haag e2a6f0501e st/oxr: Fix swapchain format list assert 2023-12-01 14:34:31 +00:00
Jakob Bornecrantz d380414731 t/libmonado: Support recentering of local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz d43334120c t/ctl: Support recentering of local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz dfbe48a188 ipc: Add support for recentering local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz a3a9782272 u/space_overseer: Implement recentering for supported setups 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz b77d460d59 u/space_overseer: Improve comment [NFC] 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz 74b6d263e9 u/pp: Add new error message to print 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz 9b5cfadc64 xrt: Add function to request recentering of local spaces 2023-11-28 12:43:37 +00:00
Jakob Bornecrantz 8c1ee42fee a/tracking: Change destructor to be private 2023-11-27 19:49:24 +00:00
Jakob Bornecrantz e9d8e0db21 a/tracking: Tidy and document FrameMat [NFC] 2023-11-27 19:49:24 +00:00
Jakob Bornecrantz 9070894455 ipc: Verify length of received commands on Windows
Co-authored-by: Simon Zeni <simon.zeni@collabora.com>
2023-11-26 14:03:52 +00:00
Simon Zeni 81246de70a ipc: Read only the exact size of the ipc_command in client_loop on Linux 2023-11-26 13:45:21 +00:00
Simon Zeni 9b6eeb0bba ipc: Add ipc_command_size function to prototype generation 2023-11-26 13:45:21 +00:00
Christoph Haag e5060d166b st/oxr: Fix build with XR_FB_display_refresh_rate disabled 2023-11-24 16:03:09 +01:00
Christoph Haag c58f06f94c ipc: Fix type warning 2023-11-24 16:03:09 +01:00
Jakob Bornecrantz c197ba999f st/oxr: Add support for reference space usage 2023-11-21 21:37:06 +00:00
Jakob Bornecrantz a0a0f7cfa6 ipc: Add support for reference space usage 2023-11-21 21:37:06 +00:00
Jakob Bornecrantz 5a789ff623 u/space_overseer: Add support for reference space usage 2023-11-21 21:37:06 +00:00
Jakob Bornecrantz d80036fd0e xrt: Add reference space usage information 2023-11-20 22:05:34 +00:00
Jakob Bornecrantz 4fe85a0acc xrt: Add LOCAL_FLOOR and UNBOUNDED generic space poses 2023-11-20 22:05:34 +00:00
Jakob Bornecrantz fffdfa1c4b xrt: Refactor reference functions to be clearer 2023-11-20 22:02:06 +00:00
Jakob Bornecrantz 11ae300946 xrt: Tidy and improve docs in xrt_defines.h [NFC] 2023-11-20 22:02:06 +00:00
Jakob Bornecrantz a6d840b0b1 c/util: Fix leaks of image views in swapchain
This fixes a regression I introduced in !1417.
2023-11-20 21:55:11 +00:00
Jakob Bornecrantz add64c1531 c/util: Improve error paths in swapchain creation 2023-11-20 21:55:11 +00:00
Jakob Bornecrantz c6a4f62e6c c/util: Tidy comp_swapchain.c [NFC] 2023-11-20 21:55:11 +00:00
Jakob Bornecrantz 9ac135edce ipc: Share per client thread shutdown code [NFC]
The two paths was already identical, so just make it one.
2023-11-20 21:40:14 +00:00
Jakob Bornecrantz adc3fe879d c/main: Guard VkQueue access when calling vkQueuePresentKHR
The VkQueue in vkQueuePresentKHR is externally synchronized, so we need
to take the queue_mutex when we call that function.

Found this with the [latest validation layers][1] and the OpenXR CTS test
Swapchains. This has probably been a longstanding bug in Monado as that
particular code is fairly old.

[1]: https://github.com/KhronosGroup/Vulkan-ValidationLayers/pull/6631
2023-11-20 18:09:53 +00:00
Jakob Bornecrantz c3157335ef c/main: A few more uses of VK_CHK helpers [NFC] 2023-11-20 18:03:10 +00:00
Jakob Bornecrantz c7ec85cfd2 a/vk: Improve vk_print_result 2023-11-20 18:03:10 +00:00
Zhongwang Zhang ccb9f957bf st/oxr: Complete implementation of extension [XR_FB_display_refresh_rate] 2023-11-20 16:58:31 +00:00
Zhongwang Zhang 74df016dbf ipc: Implement display refresh rate functions 2023-11-20 16:58:31 +00:00
Zhongwang Zhang df07128590 c/multi: Implement display refresh rate functions 2023-11-20 16:58:31 +00:00
Zhongwang Zhang a9017c8501 c/main: Implement display refresh rates function stubs 2023-11-20 16:58:31 +00:00
Zhongwang Zhang 195efff9ba xrt: Add new API in xrt_compositor and xrt_multi_compositor_control interfaces 2023-11-20 16:58:31 +00:00
Zhongwang Zhang f84bef916f xrt: Add hz suffix, follow code style and add limit to refresh rate array 2023-11-20 16:58:23 +00:00
Simon Zeni 8f6603d019 st/oxr: Implement XR_KHR_vulkan_swapchain_format_list 2023-11-20 09:40:20 -05:00
Jakob Bornecrantz 24ecd455ea st/oxr: Track graphics extension used to create session 2023-11-20 09:40:20 -05:00
Simon Zeni fb023e001a a/vk: Use formats list from xrt_swapchain_create_info in create_image 2023-11-20 09:40:20 -05:00
Simon Zeni 2571ef8d57 xrt: Add formats list to xrt_swapchain_create_info 2023-11-18 12:30:58 +00:00
Simon Zeni b727aa9df7 xrt: Use uint32_t instead of int64_t for swapchain format 2023-11-18 12:30:58 +00:00
Simon Zeni afb12a4c5d xrt: Fix graphics includes in xrt_openxr_includes 2023-11-18 12:30:54 +00:00
Rylie Pavlik 8f380925b8 c/main: Handle return value 2023-11-17 11:19:37 -06:00
Rylie Pavlik 3ebac955a6 c/main: More propagate errors 2023-11-17 11:19:37 -06:00
Rylie Pavlik a23cefd968 c/main: Fix duplicate include [NFC] 2023-11-17 11:19:37 -06:00
Rylie Pavlik b3d4ee2186 c/util: Propagate some Vulkan errors 2023-11-17 11:19:37 -06:00
Rylie Pavlik 9e5c0d72e1 c/util: Make sure to zero array_size
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-11-17 11:19:37 -06:00
Jakob Bornecrantz 580ff4ceb8 c/util: Re-order functions in comp_swapchain.c [NFC] 2023-11-17 11:19:37 -06:00
Jakob Bornecrantz ab3c7e99ff c/util: Use vk_mini_helpers for image destruction 2023-11-17 11:19:37 -06:00
Rylie Pavlik bafdd8ddbc a/vk: Improve documentation for vulkan error handlers 2023-11-17 11:19:37 -06:00
Jakob Bornecrantz d28e647744 st/oxr: Make debug utils forcible
And don't always turn it on for XR_KHR_vulkan_enable, as it would
result in crashes on old Vulkan drivers (like those on Pixel 3).
2023-11-17 16:39:55 +00:00
Simon Zeni 0fe8737ec5 cmake: Fix build with SDL2 on Alpine Linux
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
Co-authored-by: Rylie Pavlik <rylie.pavlik@collabora.com>
2023-11-16 14:06:54 +00:00
Jakob Bornecrantz 7e8d35a1a8 st/oxr: Use function helper [NFC] 2023-11-16 00:17:39 +00:00
Jakob Bornecrantz 3060690cbe d/ohmd: Tidy includes [NFC] 2023-11-16 00:17:39 +00:00
Jakob Bornecrantz 37e46a9083 d/ohmd: Fix warnings [NFC] 2023-11-16 00:17:39 +00:00
Jakob Bornecrantz 28315ecdc4 d/vive: Follow common naming of update_inputs [NFC] 2023-11-16 00:17:39 +00:00
Jakob Bornecrantz b02645980b d/wmr: Follow common naming of update_inputs [NFC] 2023-11-16 00:17:39 +00:00
Jakob Bornecrantz c8bb2009f2 xrt: Tidy xrt_device [NFC] 2023-11-16 00:17:39 +00:00
Rylie Pavlik 9a4bc4d9c7 monado: Adding IWYU pragmas 2023-11-15 12:37:07 -06:00
Rylie Pavlik 0ac6fdae94 scripts: Add include-what-you-use (iwyu) related scripts and configs 2023-11-15 12:37:07 -06:00
Rylie Pavlik e4be3cbd96 c/util: Fix doxygen warning 2023-11-15 11:11:22 -06:00
Rylie Pavlik 99e2e005f8 c/render: Fix doxygen warning 2023-11-15 11:11:22 -06:00
Rylie Pavlik ac69a14782 build: Suppress warnings from external headers 2023-11-15 11:11:22 -06:00
Rylie Pavlik 4671d1adb2 a/vive: Fix doxygen warning 2023-11-15 11:11:22 -06:00
Rylie Pavlik 0fab8c23b4 c/client: Fix doxygen warnings 2023-11-15 11:11:22 -06:00
Rylie Pavlik 4ef986aab0 st/oxr: Fix doxygen warning 2023-11-15 11:11:22 -06:00
utzcoz 4c1fd41641 gradle: Migrate gradle's buildToolsVersion to property one
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz 33602482a2 xrt/android: Migrate deprecated flavorDimensions gradle API
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz 1e82e8e5f0 xrt/android: Move extractNativeLibs to build script for openxr_android
It's recommended by Android Studio when upgrading AGP.

Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz 2561475fc4 xrt/android: Enable buildFeature aidl for ipc/android
It's recommended when upgrading AGP with Android Studio.

Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz 30ebd2fe1b xrt/android: Apply Java code format by latest google-java-format
Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
utzcoz 7d61a6f892 xrt/android: Bump google-java-format to 1.18.1
Use the latest google-java-format to support JDK17 for AGP 8.x.

Signed-off-by: utzcoz <utzcoz@outlook.com>
2023-11-15 10:06:20 -06:00
Jakob Bornecrantz 33498dc6b2 st/oxr: Make misc extensions a build time option 2023-11-15 13:16:50 +00:00
Jakob Bornecrantz b7299ead15 st/oxr: Make interaction profiles a build time option 2023-11-15 13:16:50 +00:00
Jakob Bornecrantz 179c10c399 st/oxr: Properly guard misc extensions with ifdefs 2023-11-15 13:16:50 +00:00
Jakob Bornecrantz 60df8b60ba st/oxr: Properly guard interaction extensions access with ifdefs 2023-11-15 13:16:50 +00:00
Jakob Bornecrantz d71082b5e1 st/oxr: Properly check all extension interaction profiles 2023-11-15 13:16:50 +00:00
Simon Zeni 818e519f50 xrt: make get_visibility_mask return xrt_return_t 2023-11-15 12:51:04 +00:00
Christoph Haag 7cd151484e st/oxr: Add forgotten newline to quirks output [NFC] 2023-11-15 12:38:59 +00:00
Jakob Bornecrantz 6e8a40112b st/oxr: Handle view index for visibility mask 2023-11-15 12:03:06 +00:00
Jakob Bornecrantz 9a09d7956d xrt: Add view_index to visibility mask getter
And add helper caller function.
2023-11-15 12:02:08 +00:00
Jakob Bornecrantz 6123deaa75 u/mask: Scale output to FoV of the view 2023-11-15 12:02:08 +00:00
Jakob Bornecrantz 0064d16f47 u/mask: Tidy function 2023-11-15 12:02:08 +00:00
Jakob Bornecrantz 8bdc2f1edf ipc: Fix visibility mask leak 2023-11-15 12:02:08 +00:00
Zhongwang Zhang bb6e8eb9f8 st/oxr: Handle the XR_SESSION_NOT_FOCUSED case for XRInput 2023-11-15 11:47:32 +00:00
Jakob Bornecrantz 88cf637e95 ipc: Check return of ipc_call_space_create_semantic_ids 2023-11-14 20:27:15 +00:00
Jakob Bornecrantz 7c96a23325 ipc: Tidy ipc_generated_protocol.h generator function 2023-11-14 19:38:05 +00:00
Jakob Bornecrantz 195d45d960 ipc: Protect ipc_generated_protocol.h with cpp header guard 2023-11-14 19:24:13 +00:00
Simon Zeni 96be7675ed st/oxr: Implement XR_KHR_visibility_mask 2023-11-14 17:02:24 +00:00
Simon Zeni c1ce722d6d st/oxr: Add view index verify helper 2023-11-14 17:02:24 +00:00
Simon Zeni 5656f86c47 ipc: Add get_visibility_mask 2023-11-14 17:02:24 +00:00
Simon Zeni 1ec26ded40 u/mask: Introduce u_visibility_mask 2023-11-14 17:02:24 +00:00
Jakob Bornecrantz 69afb62742 xrt: Add visibility mask interface 2023-11-14 10:49:46 -05:00
Jakob Bornecrantz 2d79fb1a3f st/oxr: Enable XR_MSFT_unbounded_reference_space 2023-11-14 12:51:28 +00:00
Jakob Bornecrantz 72a68cf54b st/oxr: Enable XR_EXT_local_floor 2023-11-14 12:51:28 +00:00
Jakob Bornecrantz 0c2f1e83e0 st/oxr: Expose unbounded if extension enabled and space is supported 2023-11-14 12:51:28 +00:00
Jakob Bornecrantz c2c74b8b85 st/oxr: Expose local_floor if extension enabled and space is supported 2023-11-14 12:51:28 +00:00
Jakob Bornecrantz 2fbe588f66 st/oxr: Validate XrReferenceSpaceType in common code
Also deal with the different types of error code returns that the CTS expects.
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz 6cb275803c st/oxr: Make reference space type support per system
Let's systems support different sets of references spaces.
2023-11-14 12:51:28 +00:00
Jakob Bornecrantz 1b80d7182e ipc: Add support for local_floor 2023-11-14 12:43:58 +00:00
Jakob Bornecrantz f11c1fa699 u/space: Add support for local_floor 2023-11-14 12:43:58 +00:00
Jakob Bornecrantz c5b800b324 d/remote: Add support for local_floor 2023-11-14 12:43:58 +00:00
Jakob Bornecrantz 050db98b7d xrt: Add local_floor to xrt_space_overseer
Used to implement XR_EXT_local_floor.
2023-11-14 12:43:58 +00:00
Jakob Bornecrantz 83b77285bd ipc: Use check helpers in other client code as well 2023-11-14 01:20:51 +00:00
Jakob Bornecrantz bfaf615d4f ipc: Replace IPC_CHK_CALL macro with other helper 2023-11-14 01:20:51 +00:00
Jakob Bornecrantz 8d61577081 ipc: Add xrt check return helpers 2023-11-14 01:20:51 +00:00
Jakob Bornecrantz 440b1f2660 ipc: Add ipc_print_result helper 2023-11-14 01:20:51 +00:00
Jakob Bornecrantz 3de7bab023 c/util: Fix synchronisation errors with scratch images on gfx path 2023-11-13 23:09:43 +00:00
Christoph Haag 7efd580a70 st/oxr: CTS fix: return XR_SUCCESS for no action sets synced 2023-11-13 17:11:57 +00:00
Weijie Wang 86c3e217cc c/main,a/android,external: Add argument to specify display mode id for surface creation 2023-11-13 16:09:11 +00:00
Jakob Bornecrantz 4a8400538c ipc: Use message channel's log_level in client 2023-11-13 12:47:12 +00:00
Jakob Bornecrantz 2d7041c797 ipc: Move ipc_message_channel functions to own files
What actually happened:

  copy src/xrt/ipc/shared/{ipc_utils.h => ipc_message_channel.h} (95%)
  rename src/xrt/ipc/shared/{ipc_utils_unix.c => ipc_message_channel_unix.c} (99%)
  rename src/xrt/ipc/shared/{ipc_utils_windows.cpp => ipc_message_channel_windows.cpp} (99%)
  rewrite src/xrt/ipc/shared/ipc_utils.h (94%)
2023-11-13 12:47:12 +00:00
Jakob Bornecrantz 850e57a002 ipc: Move non-channel functions to utils [NFC] 2023-11-13 12:47:12 +00:00
Jakob Bornecrantz 5dfdab9e80 ipc: Split UNIX and Windows utils implementations more 2023-11-13 12:47:12 +00:00
Jakob Bornecrantz 5e92df460d ipc: Tidy Windows utils file [NFC] 2023-11-13 12:47:12 +00:00
Jakob Bornecrantz f0c2167fb8 ipc: Tidy UNIX utils files [NFC] 2023-11-13 12:47:12 +00:00
Jakob Bornecrantz a339d7adf4 ipc: Remove unused function [NFC] 2023-11-13 12:47:12 +00:00
Michael Graham 255b62e892 d/wmr: Add Dell Visor support to WMR driver 2023-11-13 11:56:13 +00:00
Jakob Bornecrantz cec787ba0f ipc: Add variable number of views get function 2023-11-09 18:37:47 +00:00
Jakob Bornecrantz 7251417569 ipc: Add functions to lock/unlock the client connection 2023-11-09 17:56:27 +00:00
Jakob Bornecrantz e576424995 ipc: Add ability to do variable length calls 2023-11-09 17:56:27 +00:00
Jakob Bornecrantz 6d990ba480 ipc: Refactor proto generation a little bit 2023-11-09 17:49:35 +00:00
Zhongwang Zhang d6168fdbb4 st/oxr: Add KHR_vulkan_enable rdc capture support 2023-11-09 13:45:48 +00:00
Zhongwang Zhang e328c42121 st/oxr: RenderDoc support on Vulkan/GLES client sides and Android platform
Makes it so RenderDoc can be captured by the button in UI.
2023-11-09 13:45:48 +00:00
Zhongwang Zhang b1aedcf1d5 st/oxr: Enable VK_EXT_debug_utils extension for client side on the platform that support it 2023-11-09 13:45:48 +00:00
Zhongwang Zhang aadb9517f3 st/oxr: Enable RenderDoc compiling on Android 2023-11-09 13:45:48 +00:00
Zhongwang Zhang f93d08c7f5 c/client: Add renderdoc_enabled implementation for VK and EGL
Currently only used on Android platforms.
2023-11-09 13:45:48 +00:00
Zhongwang Zhang 23595274ee c/client: Allow passing down debug_utils_enabled flag 2023-11-09 13:45:48 +00:00
Zhongwang Zhang 3dde1f2d27 a/vk: Enable VK_EXT_debug_utils to be enabled in given 2023-11-09 13:45:48 +00:00
Zhongwang Zhang 51690cf20e a/vk: Add RenderDoc helpers
Adds helper for inserting frame delimiter.
2023-11-09 13:45:48 +00:00
Zhongwang Zhang 017e2b2f29 xrt: Enable passing down renderdoc status 2023-11-09 13:45:43 +00:00
Zhongwang Zhang 0f257e1bed xrt: Enable passing down VK_EXT_debug_utils enabled status 2023-11-09 13:45:23 +00:00
Jarvis Huang 9e913b5a31 c/main: Support creating surface with title on Android 2023-11-08 17:51:29 +00:00
Jarvis Huang 4f90666b75 external: Update android-jni-wrap 2023-11-08 17:51:24 +00:00
Jakob Bornecrantz 60bbded2e2 ipc: Remove left over static roles 2023-11-07 22:57:44 +00:00
Jakob Bornecrantz f1d275708d libmonado: Fix dynamic roles 2023-11-07 22:57:44 +00:00
Jakob Bornecrantz 14d94d8d9a t/common: Fix North Star builder
Closes #296
2023-11-07 22:51:27 +00:00
Ryan Pavlik 51fa07cfd6 xrt: Better documentation for revised system devices/roles interface 2023-11-07 22:36:58 +00:00
Weijie Wang fdfe2fc459 ipc: Increase the duration of the starting timeout 2023-11-06 15:40:23 +00:00
Jakob Bornecrantz 5da1086d26 a/vk: Name VkInstance once we have the needed VkDevice
Note this is currently disabled due to bugs in Vulkan Loader / Mesa.
2023-11-06 12:59:09 +00:00
Jakob Bornecrantz e84d47400e a/vk: Disable naming of VkDescriptorSet objects
Mesa RADV leaks the names on descriptor pools we use reset on.
2023-11-06 12:59:07 +00:00
Jakob Bornecrantz e7bb70909f a/vk: Disable naming of VkSurfaceKHR objects
Causes crashes and asserts on Ubuntu 22.04 Mesa.
2023-11-06 12:58:22 +00:00
Jakob Bornecrantz 3f0d95d71f a/vk: Disable naming of VkInstance objects
Mesa as of this patch doesn't currectly support setting debug names on
VkInstance. And the Vulkan loader had a bug before 1.3.261 that would cause
crashes if trying to set the name on VkInstance.

faeb94c2df
2023-11-06 12:56:55 +00:00
Jakob Bornecrantz 2aa00dbf8f a/vk: Add VK_NAME_OBJ_DISABLED helper 2023-11-04 17:03:02 +00:00
Jakob Bornecrantz bb87f54730 a/vk: Make VK_NAME_OBJECT type safe 2023-11-04 17:02:56 +00:00
Jakob Bornecrantz e84ad85fc2 a/vk: Add object type to string helper 2023-11-04 15:04:26 +00:00
Jakob Bornecrantz 5b9e70f3a8 c/render: Fix named objects 2023-11-03 21:23:35 +00:00
Jakob Bornecrantz 70548ee0e9 t/common: Refactor lighthouse builder to use vive_builder helper 2023-11-03 19:14:43 +00:00
Jakob Bornecrantz be1b4ba5a6 a/vive: Add builder helper 2023-11-03 19:14:43 +00:00
Jakob Bornecrantz 332b32b71f ipc: Refactor and tidy client connection
Also move git hash check as early as possible.
2023-11-03 18:18:31 +00:00
Jakob Bornecrantz bfffb0c5c4 ipc: Constify client connection argument 2023-11-03 18:18:31 +00:00
Simon Zeni e67f9d7e52 a/vk: Name Vulkan objects 2023-11-03 16:26:56 +00:00
Simon Zeni 7cba92e933 c/util: Name Vulkan objects 2023-11-03 16:26:56 +00:00
Simon Zeni 2a513c14fe c/render: Name Vulkan objects 2023-11-03 16:26:56 +00:00
Simon Zeni 38be815f6d c/client: Name Vulkan objects 2023-11-03 16:26:56 +00:00
Simon Zeni c75db60478 c/main: Name Vulkan objects 2023-11-03 16:26:56 +00:00
Jakob Bornecrantz b90c397997 c/main: Tidy window surface creation code 2023-11-03 16:04:36 +00:00
Simon Zeni 4a1ff65856 a/vk: Remove VK_EXT_debug_marker 2023-11-03 16:04:36 +00:00
Simon Zeni c7dc483b9a a/vk: Use VK_EXT_debug_utils to name objects 2023-11-03 16:04:36 +00:00
Jakob Bornecrantz 91d4e399c8 a/vk: Add VK_EXT_debug_utils 2023-11-03 16:04:36 +00:00
Mateo de Mayo 347ae3ce22 t/slam: Use locks for CSV writers
Fixes a race condition that produced weirdly written csv files.
2023-11-02 21:34:05 +00:00
Mateo de Mayo 28b097338b t/slam: Add CSVWriter class 2023-11-02 21:34:05 +00:00
Jakob Bornecrantz 05d04b3ea0 ipc: Fix compile on musl 2023-11-02 15:06:02 +00:00
Hui Xu 7c6b0d1e98 ipc: Add macro TEMP_FAILURE_RETRY
- to ignore the signal -4 (ENTR)
2023-11-02 14:25:21 +00:00
Jarvis Huang 2e41280ae9 st/oxr: Route log output to Android logcat 2023-10-31 19:31:26 +00:00
Simon Zeni 9b288a6a1a c/[util/shader]: Implement cylinder layer for compute renderer 2023-10-28 19:50:58 +01:00
Simon Zeni 31cde143a1 c/[util/shaders]: Implement equirect2 layer for compute render 2023-10-28 19:47:51 +01:00
Simon Zeni ec26005952 c/shaders: Use fma in compute shader 2023-10-28 19:47:51 +01:00
Simon Zeni c4251cb907 c/util: Replace is_view_index_visible helper by is_layer_view_visible 2023-10-28 19:47:51 +01:00
BabbleBones 3aa2386950 d/steamvr_lh: handle unknown role hints 2023-10-25 23:27:30 -04:00
BabbleBones d5eeb65af9 d/steamvr_lh: clean up logs and clean up unused tracker inputs 2023-10-25 23:27:30 -04:00
BabbleBones 940a0290ea d/steamvr_lh: fix vive wand early hand enumeration 2023-10-25 23:27:30 -04:00
Jakob Bornecrantz 2f586030be t/common: Fix Rift-S builder 2023-10-25 14:34:55 +01:00
Jakob Bornecrantz cbf26357d1 c/client: Add helpers to unwrap native swapchains and compositors 2023-10-24 14:07:43 +00:00
Jakob Bornecrantz d0617c04d5 c/render: Remove old layer render shaders 2023-10-24 12:33:05 +00:00
Jakob Bornecrantz 2245811d1e c/main: Remove layer renderer 2023-10-24 12:33:05 +00:00
Jakob Bornecrantz 3293def0cb c/main: Remove layer renderer integration in renderer 2023-10-24 12:33:05 +00:00
Jakob Bornecrantz 958d62fcab c/main: Remove old graphics dispatch helpers 2023-10-24 12:33:05 +00:00
Jakob Bornecrantz 3dcd555a6f c/main: Use new comp_render helpers to render frame 2023-10-24 12:33:05 +00:00
Jakob Bornecrantz c5f4f0ab7a xrt: Remove old roles
Also remove all fallbacks helpers now.
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz 1d476d4e32 st/oxr: Update role debug printing 2023-10-24 09:24:49 +00:00
Nico Marniok 5e48d22ecd st/oxr: Add input device hot-switch support
Co-authored-by: Korcan Hussein <korcan.hussein@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-10-24 09:24:49 +00:00
Korcan Hussein f60ffe5af7 st/oxr: Clone profiles to session on action sets attachment.
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-10-24 09:24:49 +00:00
Korcan Hussein d033955678 st/steamvr_drv: Add support for new dynamic device roles 2023-10-24 09:24:49 +00:00