Commit Graph

203 Commits

Author SHA1 Message Date
1cb4ada316 Merge pull request #112994 from dsnopek/openxr-meta-foveation-eye-tracked-on-meta
OpenXR: Fix Vulkan validation errors and get `XR_META_foveation_eye_tracked` working on Meta Quest devices
2025-11-27 09:55:45 +01:00
fce47ac456 OpenXR: Fix Vulkan validation errors and get XR_META_foveation_eye_tracked working on Meta Quest devices 2025-11-26 05:02:22 -06:00
c0bc43d1de Add OpenXR 1.1 support 2025-11-26 10:35:37 +11:00
2edc43df8e Merge pull request #78598 from BastiaanOlij/resolve_depth_buffer_mobile
Resolve depth buffer in mobile renderer when required
2025-11-20 11:10:48 -06:00
d30ec9aef0 Merge pull request #112888 from dhoverb/meta_foveation_eye_tracked
Implement XR_META_foveation_eye_tracked
2025-11-18 14:00:47 -06:00
53e1ea184a Implement XR_META_foveation_eye_tracked 2025-11-18 14:58:11 +00:00
665238e0fb Implement XR_KHR_android_thread_settings 2025-11-17 22:15:03 +00:00
21ffbecfa9 Resolve depth buffer in pass if supported by driver 2025-11-17 17:29:38 +11:00
c5aae722ee OpenXR: Add support for frame synthesis 2025-11-13 21:18:31 +11:00
ca0eb5da24 OpenXR: Fix resizing viewports used by OpenXRCompositionLayer 2025-10-30 17:40:52 -05:00
6ae1caecaf Merge pull request #109431 from dsnopek/openxr-composition-layer-safe-multithreaded-rendering
Make `OpenXRCompositionLayer` and its children safe for multithreaded rendering
2025-10-17 09:07:44 -05:00
e33e069508 initialize XrRenderModelPropertiesEXT 2025-10-09 18:45:13 +02:00
e437cfa280 Merge pull request #111307 from BastiaanOlij/openxr_persistence_layout_issue
Fix small code layout issue in persistence scope initialisation
2025-10-06 14:34:09 -05:00
093d191909 Make OpenXRCompositionLayer and its children safe for multithreaded rendering 2025-10-06 10:51:20 -05:00
788745e5b8 Merge pull request #108644 from bnjmntmm/secure-android-surface
Use of `XrSwapchainCreateFlags` for `OpenXRCompositionLayer`
2025-10-06 09:06:45 -05:00
e2a8e93005 Fix small code layout issue in persistence scope initialisation 2025-10-06 13:07:33 +11:00
3d1c9fd5de Move server files into their subfolders 2025-09-30 19:39:39 -07:00
9fbf5808a0 Rename server "free" functions to "free_rid" to match exposed API 2025-09-30 16:52:25 -07:00
54e8c8eecc Merge pull request #110948 from aaronfranke/const-ref-param-openxr
Use const ref parameters in the OpenXR module
2025-09-30 11:19:11 -05:00
c3e6002c6e Use const ref parameters in the OpenXR module 2025-09-28 08:10:03 -07:00
eeac57075c OpenXR: Implement spatial entities extension 2025-09-27 12:23:33 +10:00
e49e73e160 Merge pull request #110868 from brycehutchings/openxr_late_destruction_crash_fix
Fix late destruction access violation with OpenXRAPIExtension object
2025-09-25 14:57:11 -05:00
cd198f7517 Remove static lifetime object to avoid late destruction 2025-09-25 10:11:08 -07:00
58ecb8ade5 Fix D3D12 using the wrong clip space projection matrix. Remove error-prone/unnecessary graphicsApi parameter. 2025-09-23 16:58:39 -07:00
34609db10b Merge pull request #109969 from dsnopek/openxr-validation-errors
OpenXR: Fix errors reported by `XrApiLayer_core_validation`
2025-09-19 20:54:28 -05:00
597c5d413f Merge pull request #109611 from devloglogan/hand-tracking-microgestures
Add XR_META_hand_tracking_microgestures action paths
2025-09-19 20:54:25 -05:00
f9c76d026d OpenXR: Fix errors reported by XrApiLayer_core_validation 2025-08-25 15:54:54 -05:00
ccceb2ac60 OpenXR: Fix default action map entry for Vive Focus 3 2025-08-22 16:28:25 +10:00
b432e108d5 Merge pull request #109791 from Talkashie/master
Typo cleanup pass
2025-08-21 18:39:37 -05:00
bc7e68dfd1 Typos 2025-08-19 18:32:59 -05:00
7be711ecb7 OpenXR: Use GLTFDocument function to get supported extension names 2025-08-15 12:58:53 -07:00
1a864595cf Add XR_META_hand_tracking_microgestures actions 2025-08-15 10:37:29 -05:00
ecfb96239c Add swapchain create flags support to OpenXR layers
- Introduced SwapchainCreateFlags enum to control swapchain creation (NORMAL, STATIC, PROTECTED) in OpenXR composition layers.
- Allows creation of static layers (never change after creation) and protected layers (for DRM-protected content).
- Changed internal logic from enum to bool for simplicity; users now select "protected" or not.
- Added support for protected content in viewport-based layers.
- Refactored naming, documentation, and improved reusability.
- Minor cleanup: removed unused variable and added missing space.
2025-07-28 16:48:33 +02:00
0620eb126a xr: Add missing paths to /user/vive_tracker_htcx
Add 4 missing paths for wrist and ankle to XR_HTCX_vive_tracker_interaction.
These are already available in OpenXR 1.0, rev. 3 of the extension.
https://registry.khronos.org/OpenXR/specs/1.0/html/xrspec.html#XR_HTCX_vive_tracker_interaction
2025-07-10 23:47:51 -07:00
b65b367a6f OpenXR: Adding support for the render model extension 2025-06-19 19:14:49 +10:00
088ef7b6f6 Merge pull request #100283 from devloglogan/vk-motion-vectors
Implement motion vectors in mobile renderer
2025-06-05 13:10:20 +02:00
fd220081c1 OpenXR: Add controller interaction profile for Pico 4 Ultra 2025-06-01 06:05:30 -05:00
3b70fbdc3c Implement motion vectors in mobile renderer 2025-05-30 13:09:54 -05:00
4cb8a0c77e Add resize_initialized and resize_uninitialized to Vector. These functions serve as replacements for resize, to make sure the caller understands whether elements need to be initialized 'by hand' after the call. 2025-05-26 18:35:41 +02:00
16659e37c1 OpenXR Futures: Add return value support 2025-05-26 14:54:25 +10:00
6ae50cad17 RenderingDevice: introduce parameter 'mipmaps' for texture_create_from_extension() 2025-05-07 15:15:55 +03:00
f8f350a32a Add GLOBAL_GET cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-04-30 15:08:50 +01:00
3947cbe3b2 Merge pull request #104386 from Repiteo/core/cpp-math
Core: Replace C math headers with C++ equivalents
2025-04-27 19:21:22 -05:00
1ca93726c7 OpenXR: Fix building foveation extension without Vulkan 2025-04-24 08:58:17 -05:00
e3c215fc13 Add support for Direct3D 12 OpenXR backend.
This change adds support for running XR projects built with the `d3d12`
rendering backend. The XR backend hooks into the setup for the D3D12
render context in order to use the desired device and command queue for
submission to OpenXR. The XR backend takes care of importing the D3D12
swapchain images into the render context.

As part of this process, three issues are addressed:
- Ensuring that resource state transitions are only done on textures
  that require them.
- Enabling view instancing in the PSOs for multiview render passes.
- Addressing a bug in the D3D12 runtime where PSO creation may fail
  when front face detection is used.

Please refer to #86283 for additional discussions on the implementation
details.
2025-04-19 20:39:33 -07:00
98aced4e65 Merge pull request #99768 from dsnopek/openxr-vulkan-foveated-rendering
OpenXR: Use the `XR_FB_foveation_vulkan` extension to get the density map for VRS
2025-04-17 09:14:23 -05:00
ad40939b6f Core: Replace C math headers with C++ equivalents
- Minor restructuring to ensure `math_funcs.h` is the central point for math functions
2025-04-16 15:49:02 -05:00
b28e95c8b0 Request the XR_KHR_LOADER_INIT_EXTENSION_NAME extension 2025-04-15 17:51:57 -07:00
0d267e7b1e Core: Add dedicated BitField template 2025-04-11 11:53:26 -05:00
94282d88f9 Core: Use Math namespace for constants 2025-04-10 16:29:30 -05:00