Commit Graph

591 Commits

Author SHA1 Message Date
Thaddeus Crews 39bf77ddd1 OpenXR: Limit Windows includes to COM interface 2026-02-27 15:43:38 -06:00
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06:00
Rémi Verschelde e3b60a1530 Move RenderingMethod::RenderInfo to RenderingServerTypes
Also move RS::scaling_3d_mode_type to RenderingServerEnums.
2026-02-25 20:17:28 +01:00
Rémi Verschelde f0a448540e Misc dependency improvements for files depending on rendering_server.h
On my machine, this reduces incremental compilation time after an edit of
`rendering_server.h` by 3s.
2026-02-25 20:17:27 +01:00
Rémi Verschelde a3cb56dd38 Decouple RenderingServer from XR/OpenXR headers
Move BlitToScreen to RenderingServerTypes.
2026-02-25 20:17:23 +01:00
Rémi Verschelde f5a290ac46 Move RenderingServer enums to a dedicated RenderingServerEnums (RSE) namespace
A number of headers in the codebase included `rendering_server.h` just for
some enum definitions. This means that any change to `rendering_server.h` or
one of its dependencies would trigger a massive incremental rebuild.

With this change, we decouple a number of classes from `rendering_server.h`,
greatly speeding up incremental rebuilds for that area.

On my machine, this reduces incremental compilation time after an edit of
`rendering_server.h` by 60s (from 2m57s).
2026-02-25 19:43:03 +01:00
Thaddeus Crews 44675a7002 Merge pull request #116529 from eritschlSC/opengl_es_defines
OpenXR: Use Android-independent OpenGL ES compile time checks
2026-02-25 09:27:36 -06:00
Erik Ritschl 9dfa168dc0 OpenXR: Use Android-independent OpenGL ES compile time checks
Godot currently guards several OpenGL ES code paths by checking for
ANDROID_ENABLED. This commit changes them to the more specific
XR_USE_GRAPHICS_API_OPENGL_ES (which is always defined when
ANDROID_ENABLED is defined), making it possible to create custom
non-Android based engine builds using OpenGL ES.
2026-02-20 10:10:39 +01:00
Erik Ritschl ebe5e9e294 OpenXR: Fix OpenGL ES driver checks
The OpenXROpenGLExtension class handles both OpenGL and OpenGL ES
but currently there is no code path to activate the extension when
the "opengl3_es" rendering driver is requested explicitly. A similar
issue exists in OpenXRFBUpdateSwapchainExtension. With this commit
both strings are checked.
2026-02-19 13:14:49 +01:00
Thaddeus Crews 2ae60b4108 Merge pull request #116207 from eritschlSC/projection_layer_extension
OpenXR: Add support for projection layer extensions
2026-02-18 17:28:22 -06:00
Thaddeus Crews d7392aff02 Merge pull request #116244 from eritschlSC/expose-view-config
OpenXR: Expose view information to GDExtension API
2026-02-17 14:04:01 -06:00
David Snopek 3f5c5d969f OpenXR: Fix OpenGL initialization with Monado on X11 2026-02-13 11:58:27 -06:00
Erik Ritschl 3bd8f3ccb6 OpenXR: Expose view information to GDExtension API
View count and XrViewConfigurationType are relevant for various core
OpenXR functions and extensions. This commit makes them accessible
via the GDExtension API.
2026-02-13 10:32:09 +01:00
Erik Ritschl 5d5eb20a91 OpenXR: Add support for projection layer extensions
This commit adds the necessary hooks for OpenXRExtensionWrapper
classes to populate the next chain of the XrCompositionLayerProjection
structure.
2026-02-12 15:48:37 +01:00
Skyth 8fbf2f1e14 Reduce includes to rendering device.
Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2026-02-10 16:58:50 +03:00
Thaddeus Crews 8557916777 Merge pull request #115935 from Repiteo/style/inc-to-h
Style: Convert `*.gen.inc` to `*.gen.h` for ninja
2026-02-06 08:17:55 -06:00
Thaddeus Crews 1877e84ca0 Merge pull request #115605 from dsnopek/openxr-hand-interaction-better-defaults
OpenXR: Better action map defaults for hand interaction profile
2026-02-06 08:17:42 -06:00
Thaddeus Crews 7dae5da198 Style: Convert *.gen.inc to *.gen.h 2026-02-05 19:47:56 -06:00
Lukas Tenbrink c5df0cb82b Don't right-align escaped newlines, e.g. for #define. This has previously led to long diffs in the commit history. 2026-02-04 19:31:28 +01:00
Rémi Verschelde 5b75d2539b Merge pull request #115639 from Ivorforce/gdvirtual-includes
Minimize includes from `gdvirtual.gen.inc` / `script_instance.h`, to improve compile time
2026-02-02 10:10:34 +01:00
Rémi Verschelde 63c78e684b Merge pull request #114165 from KoBeWi/static
Use actual class names in resource type hints
2026-02-02 10:10:24 +01:00
Rémi Verschelde c9eb8499ca Merge pull request #113096 from stillmant/enable-headlocking-and-individual-eye-rendering-for-composition-layers
Expose eye visibility controls for composition layers and set XrSpace based on parent type
2026-01-31 22:50:27 +01:00
stillmant 77ecf91008 Expose XrSpace selection and eye visibility controls for composition layers 2026-01-30 21:32:17 -08:00
Lukas Tenbrink f3c7d1d2bf Minimize includes from gdvirtual.gen.inc / script_instance.h, to improve compile time. 2026-01-30 17:47:13 +01:00
Thaddeus Crews e36d624a30 Merge pull request #115607 from Ivorforce/sunless-sky
Remove `sky.h` include from `environment.h`, to speed up compile time.
2026-01-30 09:32:14 -06:00
Thaddeus Crews 970565aafc Merge pull request #115603 from dsnopek/openxr-frame-synthesis-dont-register-projection-views-unless-enabled
OpenXR: Don't add frame synthesis as projection views extension unless enabled
2026-01-30 09:32:11 -06:00
Lukas Tenbrink 1d840aae3a Remove sky.h include from environment.h, to speed up compile time. 2026-01-30 00:05:55 +01:00
David Snopek 9c82d5d8fc OpenXR: Don't add frame synthethesis as projection views extension unless enabled 2026-01-29 16:20:52 -06:00
David Snopek deb2e64ef5 OpenXR: Better action map defaults for hand interaction profile 2026-01-29 15:51:37 -06:00
David Snopek 9c11e25198 Don't expose the OpenXRUserPresenceExtension singleton 2026-01-29 15:00:37 -06:00
kobewi f7b9703cbd Use actual class names in resource type hints 2026-01-29 21:07:56 +01:00
Thaddeus Crews 5ad8b27d8d Merge pull request #115190 from ashwinvbs/xr_ext_user_presence
Implement support for `XR_EXT_user_presence` extension
2026-01-28 17:58:26 -06:00
Thaddeus Crews 623bbb3414 Merge pull request #115254 from BastiaanOlij/openxr_depth_warning
OpenXR: Inability to find depth format now gives a warning
2026-01-28 17:58:03 -06:00
Ashwin Balasubramaniyan a182e18211 Implement support for XR_EXT_user_presence extension 2026-01-28 21:39:43 +00:00
Thaddeus Crews ed0ae97d98 Merge pull request #114922 from DarioSamo/android-platform-gl3-fallback-fix
Fix fallback to OpenGL3 from Vulkan initialization on Android.
2026-01-27 09:04:14 -06:00
Bastiaan Olij 19bad637ce OpenXR: unable to find depth format now gives a warning 2026-01-26 19:50:11 +11:00
Fredia Huya-Kouadio 7bebe1b1b1 Fix XR build regression reported in https://github.com/GodotVR/godot_openxr_vendors/issues/429 2026-01-19 19:09:33 -08:00
Bastiaan Olij 998c876f36 OpenXR: Allow setting a specific version of OpenXR to initialize. 2026-01-19 20:41:37 +11:00
Dario 542f8ddf22 Fix fallback to OpenGL3 from Vulkan initialization on Android. 2026-01-14 23:55:21 -03:00
Bastiaan Olij 34a0ab7de4 OpenXR: change profile name for Valve Frame Controller 2026-01-15 07:52:29 +11:00
Bryce Hutchings 14b6ca17fe Fix 'depth_views' dropped from 'next' chain 2026-01-09 12:51:01 -08:00
Rémi Verschelde 9009a6636c Merge pull request #114366 from KoBeWi/uh
Add EditorDock's own DockSlot enum
2026-01-07 01:41:50 +01:00
Ashwin Balasubramaniyan b987c430d7 Reword OpenXR initialization failure alert message
Changes account for the following
1. OpenXR initialization can fail if a required extension is unsupported.
2. Logs contain more detailed info regarding failure.
3. Add additional newlines to separate message into 4 sections
   Error encountered
   Editor specific hint to developer
   WMR specific hint
   Consequence
2026-01-06 03:57:20 +00:00
kobewi 9f96d2199d Add EditorDock's own DockSlot enum 2026-01-02 13:16:23 +01:00
passivestar 3393740d42 Improve the look of inner tabs in modern theme 2025-12-30 06:05:12 +04:00
Rémi Verschelde ec06048f6e Merge pull request #114181 from BastiaanOlij/fix_openxr_visibility_nomask
OpenXR: Don't create a visibility mask mesh without data
2025-12-21 10:41:17 +01:00
Bastiaan Olij 12764858d3 OpenXR: When visibility mask extension does not return a mask, don't create a mesh 2025-12-19 16:02:34 +11:00
kobewi 61254acd98 Translate error names when displayed in dialogs 2025-12-18 23:48:52 +01:00
David Snopek 1e4de4ed31 OpenXR: Remove version hack to workaround Meta aim pose issue that is now fixed 2025-12-17 20:23:07 -06:00
Rémi Verschelde 67c579bcef Merge pull request #113713 from Mrfanta-stick/fix-openxr-gltf-dependency
Fix OpenXR build failure when glTF module is disabled
2025-12-12 17:13:05 +01:00