Jakob Bornecrantz
66a9131dd9
st/oxr: Guard against xsysc being NULL
2023-05-18 12:22:57 +01:00
Jakob Bornecrantz
d79678aeec
st/oxr: Always create the system compositor
...
Some apps will enable headless and vulkan, then use Vulkan.
2023-05-18 12:22:57 +01:00
Jakob Bornecrantz
5e19ae6a5b
st/oxr: Refactor wait frame function to avoid setting state before we should
...
We would leak frame_id and active_wait_frames increment that would cause bad
states where we hadn't fully waited but would allow xrBeginFrame to complete.
Also improve error handling so that on error conditions the semaphore is
properly decremented and the application can call xrWaitFrame again.
This was caused by unreal doing something like this:
* xrBeginFrame <-- Error
* xrWaitFrame
* xrBeginFrame
* xrEndFrame
* Called at the same time:
* xrWaitFrame
* xrBeginFrame <-- Would get state from non-completed xrWaitFrame
2023-05-03 16:18:10 +01:00
Jakob Bornecrantz
cb6201f297
st/oxr: Set extensions earlier
2023-05-01 14:03:41 +01:00
Jakob Bornecrantz
ce5669aabb
st/oxr: Handle LOCAL_FLOOR enums
2023-05-01 14:03:41 +01:00
Jakob Bornecrantz
05792ff150
st/oxr: Refactor OXR_NO_PRINTING env vars
2023-04-18 22:28:53 +01:00
Jakob Bornecrantz
fa0b3ad73c
st/oxr: Refactor logging functions and use OutputDebugStringA on Windows
...
The OXR logging functions are not called during normal opperation so it's okay
to always copy into a full buffer.
2023-04-18 22:28:53 +01:00
Jakob Bornecrantz
45fe1d6ed0
st/oxr: Refactor swapchains to use explicit transitions
2023-04-18 14:31:55 +01:00
Jakob Bornecrantz
6415480f1c
st/oxr: Tidy includes [NFC]
2023-04-18 14:21:10 +01:00
Jakob Bornecrantz
b49cd74114
st/oxr: Rename and document common swapchain creation function [NFC]
2023-04-18 14:21:10 +01:00
Jakob Bornecrantz
9055b9d2ec
st/oxr: Remove unneeded prefixes on functions [NFC]
2023-04-18 14:21:10 +01:00
Jakob Bornecrantz
52f790289d
st/oxr: Swapchain destroy was the same for all APIs
2023-04-18 14:21:10 +01:00
Jakob Bornecrantz
a56caf762e
st/oxr: Refactor swapchain functions a bit
2023-04-18 14:21:10 +01:00
Jakob Bornecrantz
50838f5801
xrt: Introduce xrt_layer_frame_data
2023-04-04 13:38:21 +01:00
Jakob Bornecrantz
a2081db38a
st/oxr: Fix typo in OXR_CHECK_XRET define usages [NFC]
...
Fix typo that I introduced in !1727 (95512594a0
).
2023-04-01 16:32:03 +01:00
Jarvis Huang
95512594a0
st/oxr: Convert session IPC error to XR_ERROR_SESSION_LOST
...
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-04-01 15:44:32 +01:00
Jakob Bornecrantz
c006ac138f
st/oxr: Add helper for xrt_result_t checking
2023-04-01 15:44:32 +01:00
Jarvis Huang
c560ff5592
st/oxr: xrPollEvent should not return XR_SESSION_LOSS_PENDING
2023-04-01 14:43:40 +01:00
Jarvis Huang
7cd1d4886f
st/oxr: Support session lost error in session related APIs
2023-04-01 14:43:40 +01:00
Jarvis Huang
f9d83c8b1f
st/oxr: Handle XR_SESSION_STATE_LOSS_PENDING
2023-04-01 14:43:40 +01:00
Jakob Bornecrantz
92f7e36083
st/oxr: Validate view array types
2023-03-28 19:30:57 +01:00
Jakob Bornecrantz
7c024b3994
st/oxr: Use xrt_space
2023-03-10 00:03:46 +00:00
Jakob Bornecrantz
c70bc60084
xrt: Also create a space overseer when creating system devices
2023-03-10 00:03:46 +00:00
Moshi Turner
7485afbeaa
xrt: Refactor oxr_sdl2_hack to u_debug_gui
...
And OXR_DEBUG_GUI to XRT_DEBUG_GUI
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-03-06 16:39:52 -06:00
Jakob Bornecrantz
3ab34071be
st/oxr: Extract space type conversions
2023-03-03 21:38:54 +00:00
Jakob Bornecrantz
a980392b9e
st/oxr: Refactor out conversion helper to own header
2023-03-03 21:38:54 +00:00
Jakob Bornecrantz
b15ac35e76
st/oxr: Refactor some things into oxr_defines.h
2023-03-03 21:38:54 +00:00
Jakob Bornecrantz
d84a679eb9
u/builders: Move setup tracking origin function here
2023-03-03 21:38:54 +00:00
Ryan Pavlik
fd77b84938
st/oxr: Suppress clang-tidy removing a forward declaration.
2023-03-03 01:05:14 +00:00
Ryan Pavlik
124c9ecf3f
st/oxr: Suppress a warning.
...
It looks more serious than it actually is, this is normal usage.
2023-03-03 01:05:14 +00:00
Ryan Pavlik
cff131da36
st/oxr: Fix bitwise operation on signed int warnings.
2023-03-03 01:05:14 +00:00
Ryan Pavlik
172a5baf23
st/oxr: Add missing calling convention macros for entry points.
...
Fixes 32-bit Windows build.
2023-03-02 13:48:25 -06:00
Ryan Pavlik
66a303f809
st/oxr: Internal docs
2023-03-01 17:08:39 +00:00
Jakob Bornecrantz
a86cb86c80
st/oxr: Remove unused out_xdev argument
2023-02-28 21:27:53 +00:00
Jarvis Huang
5380b6c149
st/oxr: Use xrt_device_is_form_factor_available
2023-02-22 23:52:21 +00:00
Ryan Pavlik
999c67975a
st/oxr: Fix inconsistent naming related to subaction paths
2023-02-06 17:58:00 -06:00
Ryan Pavlik
b2e65ed08c
st/oxr: Add some const correctness
2023-02-06 17:58:00 -06:00
Ryan Pavlik
573cbb12ee
st/oxr: Fix typo
2023-02-06 17:58:00 -06:00
Jakob Bornecrantz
c21a8ef0cc
st/oxr: Add controller extensions
...
Extensions enabled:
* XR_EXT_hp_mixed_reality_controller
* XR_EXT_samsung_odyssey_controller
* XR_ML_ml2_controller_interaction
2023-01-24 22:40:53 +00:00
SJakab
e4a40a6e4e
st/oxr: Skip oxr_session_end if connected to Unreal 4.
2023-01-24 11:42:46 +00:00
Jakob Bornecrantz
69238be306
ext/openxr: Update XR_MNDX_force_feedback_curl
2022-11-26 14:26:58 +00:00
Ryan Pavlik
724b2288f9
st/oxr: can not -> cannot
2022-11-09 14:48:17 -06:00
Mateo de Mayo
9d6c29397f
misc: Fix multiple compile warnings in gcc and clang
2022-11-03 20:08:52 +00:00
Jakob Bornecrantz
04ab47ef3b
st/oxr: Use xrt limits for number of swapchain images max
2022-11-03 17:43:06 +00:00
Jakob Bornecrantz
01d195808d
st/oxr: Use snprintf to safely write strings to app
2022-10-31 12:12:35 +00:00
Boris-Chengbiao Zhou
cd2f204414
st/oxr: Check if user has already enabled timeline semaphores
...
We aren't allowed to add a second struct of the same type to the pNext
chain during Vulkan device creation.
2022-10-28 23:19:50 +02:00
Bailey Morgan
67c47fbcb3
st/oxr: Change result code for invalid OpenGL context to match spec
2022-10-25 18:18:15 +00:00
Christoph Haag
7dd0a6e473
st/oxr: Disable XR_KHR_convert_timespec_time on windows
...
This avoids a current CTS issue.
2022-10-20 12:33:02 +02:00
Jakob Bornecrantz
da571275c2
st/oxr: Fix enum comparison warning
2022-09-28 22:56:01 +00:00
Daniel Willmott
0bed585018
st/oxr: Add force feedback extension implementation
2022-09-19 22:08:28 +00:00