Commit Graph

147 Commits

Author SHA1 Message Date
3f5b871666 Merge pull request #112893 from dsnopek/openxr-profiling
OpenXR: Add profiling macro for process, `xrWaitFrame()` and acquiring swapchain
2025-11-17 19:36:25 -06:00
01a5ba4b9d OpenXR: Add profiling macro for process, xrWaitFrame() and acquiring swapchain 2025-11-17 16:39:16 -06:00
8adea5454e OpenXR: Add OpenXRAPIExtension::update_main_swapchain_size() 2025-11-17 21:58:06 +00:00
c5aae722ee OpenXR: Add support for frame synthesis 2025-11-13 21:18:31 +11:00
093d191909 Make OpenXRCompositionLayer and its children safe for multithreaded rendering 2025-10-06 10:51:20 -05:00
7ca521eda1 Merge pull request #109533 from dsnopek/openxr-api-prevent-updating-extension-lists
OpenXR: Prevent adding/removing extension wrappers after session start
2025-09-30 18:35:18 -05:00
4f66d53068 Merge pull request #109532 from dsnopek/openxr-api-environment-blend-mode-thread-safe
OpenXR: Safely set environment blend mode when rendering on a separate thread
2025-09-30 18:35:17 -05: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
f9c76d026d OpenXR: Fix errors reported by XrApiLayer_core_validation 2025-08-25 15:54:54 -05:00
13a643d78a OpenXR: Safely set environment blend mode when rendering on a separate thread 2025-08-22 08:11:04 -05:00
4a24de208f OpenXR: Prevent adding/removing extension wrappers after session start 2025-08-22 08:04:03 -05:00
2687b199c1 OpenXR: Work around bug with Meta runtime on 1.0.49 2025-07-22 09:19:35 -05:00
c7d2ea4f68 Merge pull request #107388 from BastiaanOlij/openxr_render_models_ext
OpenXR: Add support for render models extension
2025-06-20 08:38:57 -05:00
b65b367a6f OpenXR: Adding support for the render model extension 2025-06-19 19:14:49 +10:00
df06aa8392 OpenXR: Add access to session state and change interaction profile update. 2025-06-18 17:37:18 +10:00
0fd0feb772 Minor rendering and XR changes to allow Meta enivornment depth API to work entirely from GDExtension 2025-05-27 13:06:31 -05:00
2ffd5a3913 Merge pull request #104738 from YYF233333/cleanup_rid_owner
Use `LocalVector` in `RID_Owner::get_owned_list`
2025-04-22 10:44:25 -05:00
1a70a06a43 Change RID_Owner::get_owned_list. 2025-04-21 01:04:27 +08: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
79f5a4d9fe OpenXR: Use the XR_FB_foveation_vulkan extension to get the density map for VRS 2025-03-31 07:21:58 -05:00
3b90bb56ad Merge pull request #89782 from KoBeWi/stdArrayList
Use initializer list in Arrays
2025-03-28 17:29:40 +01:00
75881f8322 Use initializer list in Arrays 2025-03-26 18:38:15 +01:00
3f27351f2b OpenXR: Support alternative reference spaces from extensions
Co-authored-by: Fredia Huya-Kouadio <fhuyakou@gmail.com>
2025-03-24 11:33:30 -05:00
9d3c950b5d OpenXR: Clean-up OpenXRExtensionWrapper by removing multiple inheritance and deprecating OpenXRExtensionWrapperExtension 2025-03-20 07:19:55 -05:00
ea62170dac Core: Add constexpr constructors/operators to math structs
• Begin integrating `constexpr` on math tests; use `static_assert` where appropriate
2025-03-17 12:15:31 -05:00
97ee05e9b7 Rename version defines to GODOT_VERSION_* to match GDExtension godot-cpp 2025-03-12 11:11:38 -07:00
d9125ebebe Merge pull request #101293 from Ivorforce/string-to-pointer-conversion
Remove implicit conversions from `String`, `Char16String` and `CharString` to data pointers.
2025-03-07 15:12:12 -06:00
fd622afb1d OpenXR: Emulated alpha blend mode should override the real blend mode 2025-02-26 17:35:03 -06:00
512abc38b2 Remove implicit conversions from String, Char16String and CharString to data pointers. Make conversions to StrRange implicit to aid transition. 2025-01-17 17:31:58 +01:00
c242cef627 Use vectors for OpenXRAPI memory management 2025-01-13 16:10:43 -06:00
3014eec40d Merge pull request #99407 from devloglogan/rec-resolution
Allow using custom `Rect2i` for rendering with OpenXR
2025-01-10 23:05:46 +01:00
e7f6b7ea0b Allow using custom Rect2i for rendering with OpenXR 2025-01-09 09:46:15 -06:00
33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
d51fae25a7 Merge pull request #98872 from BastiaanOlij/openxr_khr_metal_enable
OpenXR: Add Metal support
2024-12-16 12:09:47 -06:00
bfc66f0608 Merge pull request #100282 from devloglogan/motion-vectors-openxr
Add renderer motion vectors API for use with OpenXR
2024-12-12 16:13:36 -06:00
0a61ebdcea OpenXR: Add support for binding modifiers 2024-12-12 09:46:19 +11:00
3deb5884d7 Renderer agnostic motion vector rendering/OpenXR changes 2024-12-10 15:59:17 -06:00
08ced813a9 OpenXR: Add Metal support 2024-12-10 11:41:59 +11:00
3de62b8b1b OpenXR: Fix pose recenter signal to be omitted properly 2024-11-13 14:20:06 +11:00
bb5f390fb9 Style: Apply clang-tidy fixes (superficial)
• `modernize-use-bool-literals`, `modernize-use-nullptr`, and `readability-braces-around-statements`
2024-11-04 12:11:14 -06:00
0d350e7108 Set clang-format RemoveSemicolon rule to true
- Set clang-format `Standard` rule to `c++20`
2024-10-25 13:49:43 -04:00
daa4704c44 openxr: Correct set the Depth swapchain name
Introduced in 08ffa5d89e.
2024-09-21 10:00:08 +10:00
30a63396e5 Fix launching XR apps from the Android editor 2024-09-11 14:31:54 -05:00
9dc0543da7 Improve support for XR projects 2024-09-06 00:35:50 -07:00
08ffa5d89e Add support for the debug utils extension in OpenXR 2024-08-27 12:07:01 +10:00
11dd1f52ae Fix crash when calling OpenXRAPI::get_hand_tracker() and hand-tracking is disabled 2024-08-22 13:03:05 -05:00
d9ab2c3195 OpenXR: Add support for visibility mask 2024-08-20 10:47:17 +10:00