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
Korcan Hussein
60ae73f571
ipc: Add support for dynamic device roles
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz
5a38cbc4f0
st/prober: Add support for new dynamic device roles
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz
f6b1cc140d
t/cli: Add support for new dynamic device roles
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz
9331c8bb0a
t/common: Add support for new dynamic device roles
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz
2c49c0f9a7
t/sdl_test: Add support for new dynamic device roles
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz
dcdf270d13
d/remote: Add support for new dynamic device roles
...
Currently static.
2023-10-24 09:24:49 +00:00
Jakob Bornecrantz
ccf6a4c8e3
u/system_helpers: Add static system device helper
...
As compared to one that can handle dynamic devices.
2023-10-24 09:24:49 +00:00
Nico Marniok
2718f0506e
xrt: Add dynamic roles to xrt_system_devices
...
Doesn't fully remove the old way yet.
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
Jakob Bornecrantz
d266b8d65a
c/util: Add cylinder and equirect2 in graphics layer squasher
...
Co-authored-by: Simon Zeni <simon.zeni@collabora.com>
Co-authored-by: Charlton Rodda <charlton.rodda@collabora.com>
2023-10-23 22:20:41 +01:00
Jakob Bornecrantz
669e37220c
c/util: Add to_tangent for view state
2023-10-23 22:20:41 +01:00
Simon Zeni
0d0addca82
c/util: Add calc_mv_inv_full function
...
Co-authored-by: Charlton Rodda <charlton.rodda@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-10-23 22:20:41 +01:00
Simon Zeni
38f1b35ac0
c/util: Compute eye and world inverse view matrix
...
Co-authored-by: Charlton Rodda <charlton.rodda@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-10-23 22:20:41 +01:00
Jakob Bornecrantz
2c2cacc8f1
c/util: Add mathinclude
2023-10-23 22:20:41 +01:00
Jakob Bornecrantz
3b174b0dab
c/render: Add cylinder and equirect2 shaders
...
Co-authored-by: Simon Zeni <simon.zeni@collabora.com>
Co-authored-by: Charlton Rodda <charlton.rodda@collabora.com>
2023-10-23 22:20:41 +01:00
Jakob Bornecrantz
505a54bf8f
c/render: Make UBO one shared layout available to fragment shader as well
2023-10-23 21:56:58 +01:00
Charlton Rodda
f4980d35ea
c/render: Fix typos [NFC]
2023-10-23 21:56:58 +01:00
Gabriele Boccone
ce90c0a1c7
t/common: Fix creation on no driver available
...
Only say we can create a system if we have a driver in legacy builder.
2023-10-23 19:52:19 +01:00
Gabriele Boccone
b500272c0b
st/prober: Quit without crashing if no driver is available
2023-10-23 19:51:44 +01:00
Zhongwang Zhang
85fcbfaefe
c/client: Make vulkan log configurable
2023-10-20 14:18:30 +01:00
Christoph Haag
ef47498137
ipc: Fix session deactivation negative array index access
...
It is possible for s->global_state.active_client_index to be -1 when
update_server_state_locked is called:
ipc_server_activate_session is only called from
ipc_handle_compositor_predict_frame, which is only called from
ipc_compositor_wait_frame.
So it is possible to deactivate a session that was never activated.
2023-10-19 15:37:01 +02:00
Jakob Bornecrantz
eee17ee2ff
u/builders: Refactor space overseer creation helper
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
e805209fcd
d/opengloves: Refactor creation
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
8b30819b35
t/common: Refactor WinMR builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
0a8fa312d6
t/common: Refactor SimulaVR builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
201ea799ac
t/common: Refactor Simulated builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
fb8c941257
t/common: Refactor Rift-S builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
09c75b6aaf
t/common: Refactor RGB builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
841fc7c644
t/common: Refactor QWERTY builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
d9329d1c7c
t/common: Refactor Nreal Air builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
9a27a32b9c
t/common: Refactor North Star builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
1d8bfc7532
t/common: Refactor Lighthouse builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
d2ceb81070
t/common: Refactor Legacy builder [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
e58926662f
t/common: Don't destroy frame context on failure
...
This is handled later in the builder.
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
0b9a8ea860
t/common: Return error message proper failure in legacy builder
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
08ec4e0259
u/system_helpers: Refactor hand-tracker helper getters
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
464a95abed
u/system_helpers: Tidy functions [NFC]
2023-10-19 11:28:22 +01:00
Jakob Bornecrantz
3184941c09
d/rs: Fix warnings [NFC]
2023-10-18 17:30:00 +01:00
Jakob Bornecrantz
f5021dcf5a
d/nreal_air: Silence warning [NFC]
2023-10-18 17:30:00 +01:00
Jakob Bornecrantz
8110fceb39
d/nreal_air: Tidy [NFC]
2023-10-18 17:28:24 +01:00
Jiali Zhang
8f70291cad
c/client: Expose size limit for swapchains
2023-10-18 15:20:26 +01:00
Jiali Zhang
900c43a6e2
st/oxr: Verify max swapchain size
2023-10-18 15:14:21 +01:00