Commit Graph

56 Commits

Author SHA1 Message Date
Thaddeus Crews e380a41752 Style: Add class_db.h includes explicitly 2026-02-26 15:50:28 -06: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
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
kobewi f7b9703cbd Use actual class names in resource type hints 2026-01-29 21:07:56 +01:00
Mrfanta-stick 70727f46fd Fix OpenXR build failure when GLTF module is disabled
Wrap OpenXR render model classes with MODULE_GLTF_ENABLED guards since
they depend on the GLTF module. Include modules_enabled.gen.h
unconditionally to ensure proper module detection across all build
configurations.
2025-12-12 14:01:06 +01:00
David Snopek ca0eb5da24 OpenXR: Fix resizing viewports used by OpenXRCompositionLayer 2025-10-30 17:40:52 -05:00
David Snopek 093d191909 Make OpenXRCompositionLayer and its children safe for multithreaded rendering 2025-10-06 10:51:20 -05:00
Thaddeus Crews 788745e5b8 Merge pull request #108644 from bnjmntmm/secure-android-surface
Use of `XrSwapchainCreateFlags` for `OpenXRCompositionLayer`
2025-10-06 09:06:45 -05:00
Aaron Franke 3d1c9fd5de Move server files into their subfolders 2025-09-30 19:39:39 -07:00
Aaron Franke c3e6002c6e Use const ref parameters in the OpenXR module 2025-09-28 08:10:03 -07:00
Mauricio Narvaez ca798bf94d Add missing layer provider setup when setting Surface after visibility 2025-08-16 07:55:15 -07:00
timmno12 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
Bastiaan Olij b65b367a6f OpenXR: Adding support for the render model extension 2025-06-19 19:14:49 +10:00
LuoZhihao 8ba4656ea3 Compile out editor-only logic within validate_property in games 2025-06-12 12:54:19 +08:00
RedMser 143db328e7 Fix cases where _get returned true erroneously 2025-04-25 19:06:09 +02:00
Thaddeus Crews 94282d88f9 Core: Use Math namespace for constants 2025-04-10 16:29:30 -05:00
Mauricio Narvaez 15b9c15517 Ensure the composition layer is registered when the layer viewport is updated. 2025-03-26 14:39:40 -07:00
Mauricio Narvaez 18fd37d4a8 Enable composition layer fallback in non-editor desktop player 2025-03-21 21:51:25 -07:00
devloglogan 251ae9c138 Implement OpenXR FB swapchain update extensions 2025-03-12 09:49:17 -05:00
Thaddeus Crews 324512e11c Style: Replace header guards with #pragma once 2025-03-07 17:33:47 -06:00
Michael Alexsander aea559b39a Allow to compile the engine without XR support 2025-02-25 17:07:21 -03:00
Thaddeus Crews d12eeefcf4 Merge pull request #100763 from dsnopek/openxr-composition-layers-hole-punch-visibility
OpenXR: Fix hiding/showing composition layers using hole punching
2024-12-30 08:58:57 -06:00
Yufeng Ying 33817b186f Remove unused header in drivers and modules.
Co-authored-by: Thaddeus Crews <repiteo@outlook.com>
2024-12-24 00:40:47 +08:00
David Snopek d9ad5d1cd4 OpenXR: Fix hiding/showing composition layers using hole punching 2024-12-23 08:01:19 -06:00
David Snopek 20d8bddd38 OpenXR: Fix crash with composition layers in non-dev builds 2024-12-16 08:44:49 -06:00
Lukas Tenbrink b5c31ebb41 Add contains_char() for single-character 'contains' calls. 2024-12-06 20:23:35 +01:00
David Snopek e2386de505 Fix bug with OpenXR composition layers added after OpenXR is running 2024-10-23 15:34:05 -05:00
Thaddeus Crews 9f9ee0c813 SCons: Add unobtrusive type hints in SCons files 2024-09-25 09:34:35 -05:00
David Snopek 3afa26834a OpenXR: Support composition layers based on Android surfaces 2024-09-11 21:15:22 -05:00
Bastiaan Olij d9ab2c3195 OpenXR: Add support for visibility mask 2024-08-20 10:47:17 +10:00
devloglogan 6a8f2f00ac Apply reference frame transform to OpenXRCompositionLayer nodes 2024-05-29 07:52:54 -05:00
devloglogan 3d7b712c86 Allow OpenXRCompositionLayer property layer_viewport to be assigned to nullptr 2024-05-21 07:52:40 -05:00
David Snopek a8a7110b90 Fix layer_viewport getting cleared on OpenXRCompositionLayer in editor 2024-05-09 14:05:20 -05:00
David Snopek de654d9846 OpenXR: Fix composition layers not having correct play space 2024-05-07 20:49:46 -05:00
David Snopek 666bf60e36 OpenXR: Allow composition layers to enable hole punching 2024-05-07 10:02:32 -05:00
David Snopek dfca388d75 Revert OpenXRHand to its pre-SkeletonModifier3D state 2024-04-16 10:36:43 -05:00
Rémi Verschelde ad1993455a Merge pull request #90286 from dsnopek/openxr-composition-layers-intersects-ray
Add `intersects_ray()` method to `OpenXRCompositionLayer`
2024-04-08 11:21:18 +02:00
Rémi Verschelde 59cfa0ef75 Merge pull request #90237 from dsnopek/openxr-composition-layers-extension-properties
Allow OpenXR extensions to add properties to the OpenXRCompositionLayer node
2024-04-08 11:21:05 +02:00
David Snopek 025f2b8e7c Add intersects_ray() method to OpenXRCompositionLayer 2024-04-06 08:37:30 -05:00
David Snopek fddf6dc651 Allow OpenXR extensions to add properties to the OpenXRCompositionLayer node 2024-04-05 07:18:32 -05:00
Silc Lizard (Tokage) Renew 04dd299cba Skeleton3D: Add SkeletonModifier / Deprecate Override / Separate PB 2024-04-05 01:28:26 +09:00
David Snopek 0f2b804059 Add support for OpenXR composition layers
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-04-04 09:20:23 -05:00
Bastiaan Olij 82a36cf31b Cleanup of OpenXR module scons config 2024-01-25 23:28:13 +11:00
Malcolm Nixon c316eee929 Add bone update option to OpenXRHand to allow preserving original hand scale.
This is useful if the hand model is not weighted to support re-scaling to the users hands; or the hand is scaled to non-human sizes.
2024-01-15 23:55:13 -05:00
Malcolm Nixon 5b8b2a4e70 Add ability to drive full-body avatars using OpenXRHand
This PR allows the OpenXRHand to drive:
- OpenXR rigged hand skeletons located under the OpenXRHand node
- Godot Humanoid rigged hand skeletons located under the OpenXRHand node
- OpenXR rigged avatar skeletons located separately in the scene-tree
- Godot Humanoid avatar skeletons located separately in the scene-tree
2024-01-07 12:08:54 -05:00
Bastiaan Olij c60ef33175 OpenXR Fix small hand tracking issues 2023-10-04 13:18:31 +11:00
Rémi Verschelde 0b9ffdfc02 Merge pull request #81414 from akien-mga/codestyle-get-back-in-das-Auto
Codestyle: Don't use auto where not warranted
2023-09-07 16:33:17 +02:00
Rémi Verschelde 11518665b7 Codestyle: Don't use auto where not warranted
We allow using auto for lambdas or complex macros where a return type
may change based on the parameters. But where the type is clear, we
should be explicit.

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2023-09-07 16:15:18 +02:00