David Snopek
3d2cbb216e
OpenXR: Make it possible to implement vendor extensions to hand tracking from GDExtension
2024-01-25 10:24:39 -06:00
Bastiaan Olij
82a36cf31b
Cleanup of OpenXR module scons config
2024-01-25 23:28:13 +11:00
David Snopek
a8690cbeed
Add support for OpenXR local floor extension
2024-01-23 09:19:09 -06:00
Bastiaan Olij
afd1dcf1b1
OpenXR: Add runtime selection dropdown
2024-01-18 15:59:22 +01:00
Yuri Sizov
b6a2c78033
Merge pull request #87286 from akien-mga/fix-preprocessor-if-ENABLED-checks
...
Fix `#if *_ENABLED` inconsistencies, should check if defined
2024-01-17 18:53:33 +01:00
Yuri Sizov
cf76f3df03
Merge pull request #87240 from Malcolmnixon/bone-update-mode
...
Add bone update option to OpenXRHand to allow preserving original hand scale
2024-01-17 18:53:15 +01:00
Rémi Verschelde
0a7579b161
Fix #if *_ENABLED
inconsistencies, should check if defined
...
Co-authored-by: Caroline Joy Bell <halotroop2288@proton.me>
2024-01-17 10:30:15 +01:00
Yuri Sizov
95b27fe8c7
Reorganize code related to editor theming
...
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.
Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.
All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01: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
Rémi Verschelde
4b305cd903
Merge pull request #86982 from BastiaanOlij/openxr_touch_plus
...
OpenXR: Add Meta touch plus interaction profile
2024-01-11 17:41:26 +01:00
Rémi Verschelde
087a397477
Merge pull request #86301 from KoBeWi/deferred_cleanup
...
Update deferred calls to use Callables
2024-01-11 17:36:29 +01:00
Bastiaan Olij
f2ef41b853
Add Meta controller extension
2024-01-11 15:29:38 +11:00
Bastiaan Olij
4c806c03df
OpenXR: Add support for hand tracking source extension
2024-01-10 16:58:40 +11:00
kobewi
0e8f90f4c8
Update deferred calls to use Callables
2024-01-09 16:11:47 +01:00
Rémi Verschelde
c6671d9961
Merge pull request #86906 from Malcolmnixon/avatar-capable-openxrhand
...
Add ability to drive full-body avatars using OpenXRHand
2024-01-08 14:53:20 +01: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
Wilson E. Alvarez
a3cb1b096f
Add const references detected by clang-tidy
2023-12-16 13:36:44 -05:00
Yuri Sizov
abe19496ac
Merge pull request #85163 from BastiaanOlij/openxr_play_area
...
OpenXR: Add support for retrieving play area
2023-12-16 17:49:34 +01:00
Bastiaan Olij
69a41b3d39
OpenXR: Add support for retrieving play area
2023-12-11 10:29:03 +11:00
Rémi Verschelde
a311a4b162
Merge pull request #83976 from BastiaanOlij/gles3_msaa_scaler
...
Add 3D MSAA and scaling support to GLES3
2023-12-07 14:36:42 +01:00
Bastiaan Olij
caddce14dd
Add 3D MSAA and scaling support to GLES3
2023-12-05 10:01:00 +11:00
Bastiaan Olij
3af0176e8c
Remove unused grip touch action from default OpenXR action map
2023-11-18 20:17:28 +11:00
Rémi Verschelde
ba713c80df
Fix various typos with codespell
...
Using 2.2.7.dev51+geb4a58fe.
2023-11-11 23:01:24 +01:00
Bastiaan Olij
c512e85082
Fix OpenXR sample count
2023-10-28 17:17:13 +11:00
Rémi Verschelde
f0b6677906
openxr: Sync with upstream 1.0.31, don't build obsolete dispatch table
2023-10-26 10:01:48 +02:00
Rémi Verschelde
2079bbabfd
openxr: Revert to 1.0.28, newer versions crash on Windows/Mingw-GCC
...
Reverts #82582 .
Works around #83674 .
Users tested 1.0.29, 1.0.30, and 1.0.31, which all triggered the same issue,
with both mingw-gcc from Fedora 36 and Fedora 39.
2023-10-23 11:10:31 +02:00
Yuri Sizov
cd31407cb3
Clean up some Editor, OpenXR, VideoStream code
...
- EditorNode has excessive and pointless checks for Input singleton.
- EditorNode initialization order is a bit awkward.
- OpenXR binds a method that doesn't need that (for call deferred).
- VideoStream has a formatting error.
2023-10-20 17:54:39 +02:00
Rémi Verschelde
94810115fe
openxr: Sync with upstream 1.0.30
2023-10-17 15:46:01 +02:00
A Thousand Ships
f18aa00e85
Replace ERR_FAIL_COND
with ERR_FAIL_NULL
where applicable
2023-10-08 17:23:33 +02:00
Rémi Verschelde
7f8c3124a8
Merge pull request #82752 from decacis/openxr_swapchain_error
...
OpenXR - Properly skip frame render when the XR runtime is not yet ready to let us acquire the next image from the swapchain
2023-10-06 12:52:52 +02:00
Rémi Verschelde
373c4b22d3
Fix various typos with codespell
...
Using 2.2.7.dev5+g2af65969.
2023-10-06 12:52:22 +02:00
Daniel Castellanos
771ec958af
Fixing incorrect swapchain release timing
...
Applied a couple of checks suggested by @dhoverml for when the
XrResult is not XR_SUCCESS but is also not a failure. Also simplified
checks from @BastiaanOlij feedback.
2023-10-05 01:34:51 -06:00
Bastiaan Olij
50693a5420
OpenXR - add access to hand joint validity flags
2023-10-05 13:37:26 +11:00
Bastiaan Olij
c60ef33175
OpenXR Fix small hand tracking issues
2023-10-04 13:18:31 +11:00
Bastiaan Olij
9e56e7a3ce
Add support for the OpenXR Eye gaze interaction extension
...
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2023-10-02 14:02:23 -07:00
Bastiaan Olij
d7d334158a
Implement OpenXR Foveated rendering support
2023-09-25 17:12:20 +10:00
bruvzg
1887a9df19
[macOS/Windows] Add optional ANGLE backed OpenGL renderer support. Add EGL_ANDROID_blob_cache caching.
...
Co-authored-by: Riteo <riteo@posteo.net>
2023-09-21 14:21:00 +03:00
Rémi Verschelde
3e233e1f24
Fix various typos with codespell
...
Using 2.2.6.dev193+g907e5380.
2023-09-18 09:53:39 +02:00
Yuri Sizov
495b89ece9
Merge pull request #81561 from BastiaanOlij/fix_openxr_blend_modes
...
Fix issue with OpenXR environment blend mode not being applied properly
2023-09-14 15:21:49 +02:00
Yuri Sizov
ded139384e
Merge pull request #81536 from BastiaanOlij/fix_openxr_not_running_error_spam
...
OpenXR: Fix error spam if session hasn't started yet
2023-09-14 15:21:41 +02:00
Bastiaan Olij
3806d964e3
Fix issue with OpenXR environment blend mode not being applied properly
2023-09-13 14:07:23 +10:00
Rémi Verschelde
5c43e4c1ef
Fix various typos with codespell
...
Using 2.2.6.dev180+ge3a2cfbd.
2023-09-12 08:54:18 +02:00
Bastiaan Olij
b1548e8b19
OpenXR fix error spam if session hasn't started yet
2023-09-11 14:12:34 +10:00
Bastiaan Olij
c5e4f3eb74
OpenXR fix missing add profile for hauwei
2023-09-11 13:44:03 +10: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
Bastiaan Olij
58df9bd8a4
Expose OpenXR raw hand tracking data
2023-09-07 22:55:21 +10:00
kobewi
6de34fde27
Add EditorStringNames singleton
2023-09-03 19:58:18 +02:00
Bastiaan Olij
3a89bb388d
Change to new PICO interaction profiles
2023-08-30 10:25:35 +10:00
A Thousand Ships
c23bd8b143
Ensure OpenXR classes are declared properly
...
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2023-08-28 09:37:04 +02:00
Rémi Verschelde
8a02cd0883
Merge pull request #80419 from Faolan-Rad/fix-multi_actionsets
...
Properly load multiple action sets in XR
2023-08-18 09:30:52 +02:00
Rémi Verschelde
3907e53ff6
SCons: Disable C++ exception handling
...
Upon investigating the extremely slow MSVC build times in #80513 , I noticed
that while Godot policy is to never use exceptions, we weren't enforcing it
with compiler flags, and thus still included exception handling code and
stack unwinding.
This is wasteful on multiple aspects:
- Binary size: Around 20% binary size reduction with exceptions disabled
for both MSVC and GCC binaries.
- Compile time:
* More than 50% build time reduction with MSVC.
* 10% to 25% build time reduction with GCC + LTO.
- Performance: Possibly, needs to be benchmarked.
Since users may want to re-enable exceptions in their own thirdparty code
or the libraries they compile with Godot, this behavior can be toggled with
the `disable_exceptions` SCons option, which defaults to true.
2023-08-16 10:23:34 +02:00
Gabor Koncz
61455ff87e
Fix casts of XR handles in OpenXRExtensionWrapperExtension
...
On 32-bit systems, XR handles are defined as uint64_t, so conversion from XR handles to uint64_t requires C-style casts.
2023-08-15 14:55:19 +02:00
Faolan
a60cf6ed6c
Properly load multiple action sets in XR
2023-08-09 21:40:16 -04:00
Rémi Verschelde
faaf27f284
Fix various typos with codespell
...
Also includes typo fixes from #79993 , #80068 , #80276 , and #80303 .
Co-authored-by: betalars <contact@betalars.de>
Co-authored-by: spaceyjase <429978+spaceyjase@users.noreply.github.com>
Co-authored-by: Swarkin <102416174+Swarkin@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
2023-08-07 13:09:47 +02:00
Yuri Sizov
37c3e2e55b
Merge pull request #68259 from konczg/openxr_extension_wrapper_gdextension
...
Add GDExtension support for OpenXR extension wrappers
2023-07-27 15:22:22 +02:00
Gabor Koncz
d600e6eb1b
Add GDExtension support for OpenXR extension wrappers
...
This commit adds the classes OpenXRExtensionWrapperExtension and OpenXRAPIExtension
that can be used in GDExtensions to define OpenXR extension wrappers.
It modifies extension wrapper registration so that they can be registered
before OpenXRAPI instantiation (e.g. in core level initialization of GDExtensions).
Developed by Migeran (https://migeran.com )
2023-07-26 10:27:14 +02:00
Bastiaan Olij
a9c8feeba0
Compile OpenXR into MacOS build
2023-07-19 00:02:47 +10:00
Yuri Sizov
52784188bf
Merge pull request #78817 from BastiaanOlij/fix_startup_issue_hand_tracking
...
Fix issue with accessing hand tracking without timing info
2023-07-17 09:59:51 +02:00
Yuri Sizov
661c3954a6
Merge pull request #73443 from akien-mga/unbundle-openxr
...
Allow unbundling OpenXR (for Linux distros)
2023-07-12 17:15:25 +02:00
Rémi Verschelde
81064cc239
Doctool: Remove version attribute from XML header
...
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).
2023-07-06 10:08:21 +02:00
Rémi Verschelde
346f1ab86b
Bump version to 4.2-dev
...
Keep on waitin'
2023-07-05 22:07:03 +02:00
Bastiaan Olij
72bd997fe8
Fix issue with accessing hand tracking without timing info
2023-06-29 10:05:39 +10:00
Rémi Verschelde
fa7f8e34f2
Merge pull request #78135 from BastiaanOlij/fix_openxr_passthrough
...
Fix OpenXR Passthrough mode
2023-06-23 11:59:16 +02:00
Bastiaan Olij
2bc85f9ac6
Fix incorrect depth buffer option in OpenXR
2023-06-22 19:03:08 +10:00
Rémi Verschelde
34a07b81ae
Allow unbundling OpenXR (for Linux distros)
...
Copy XrMatrix4x4f_CreateProjectionFov to our OpenXRUtil, instead of relying
on a private header.
2023-06-16 16:25:04 +02:00
Rémi Verschelde
25b2f1780a
Style: Harmonize header includes in modules
...
This applies our existing style guide, and adds a new rule to that style
guide for modular components such as platform ports and modules:
Includes from the platform port or module ("local" includes) should be listed
first in their own block using relative paths, before Godot's "core" includes
which use "absolute" (project folder relative) paths, and finally thirdparty
includes.
Includes in `#ifdef`s come after their relevant section, i.e. the overall
structure is:
- Local includes
* Conditional local includes
- Core includes
* Conditional core includes
- Thirdparty includes
* Conditional thirdparty includes
2023-06-15 14:35:45 +02:00
Bastiaan Olij
e6e27f8be4
Fix OpenXR Passthrough mode
2023-06-12 21:29:38 +10:00
Rémi Verschelde
00215ec904
Merge pull request #74930 from BastiaanOlij/fix_action_map_entries
...
Fix incorrect HTC action map entries
2023-05-08 12:20:17 +02:00
Rémi Verschelde
e1075e9c7c
Fix various typos with codespell
...
Also includes the grammar fix from #76206 .
Co-authored-by: Peter Anderson <BWPanda@users.noreply.github.com>
2023-04-26 13:57:09 +02:00
Danil Alexeev
36bedd341a
Fix misuses of error macros
2023-04-18 10:20:48 +03:00
Rémi Verschelde
c5d9470c7c
Merge pull request #75765 from YuriSizov/editor-node-optimize-includes
...
Improve includes of `EditorNode` (and everything else)
2023-04-11 19:40:24 +02:00
Rémi Verschelde
1eec25acf3
Merge pull request #73558 from Malcolmnixon/render-target-size-multiplier
...
Added render target size multiplier option
2023-04-11 19:40:02 +02:00
Yuri Sizov
4154039832
Improve includes of EditorNode (and everything else)
...
Also start organizing editor-specific GUI components
into a dedicated folder, `editor/gui`.
Also move `editor_file_server` next to the rest of debugger classes.
2023-04-07 18:59:49 +02:00
Yuri Sizov
e4eac1c734
Merge pull request #74928 from BastiaanOlij/fix_typo_pose_orientation
...
Fix typo in OpenXR pose orientation check
2023-03-29 16:24:12 +02:00
Yuri Sizov
d20c520d96
Merge pull request #74848 from BastiaanOlij/add_xr_system_info
...
Add a get_system_info method to XRInterface
2023-03-25 15:07:51 +01:00
Yuri Sizov
dd8841a8ec
Merge pull request #74892 from BastiaanOlij/fix_hw_srgb_conversion
...
XR: When an sRGB target is used, check hardware sRGB conversion
2023-03-16 11:59:50 +01:00
Bastiaan Olij
a1a52c5ba1
XR: When an sRGB target is used, check hardware sRGB conversion
2023-03-16 17:20:51 +11:00
Yuri Sizov
c981a305a5
Merge pull request #73144 from chutchinson/bug/openxr-init-alert-dialog
...
Replaced OpenXR operating system alert dialog with a warning log message
2023-03-15 14:07:05 +01:00
Bastiaan Olij
e15358dc67
Fix incorrect HTC action map entries
2023-03-15 14:11:13 +11:00
Bastiaan Olij
cdd9de28a8
Fix typo in OpenXR pose orientation check
2023-03-15 13:40:44 +11:00
Bastiaan Olij
e31c2e4277
Add a get_system_info method to XRInterface
2023-03-15 13:11:48 +11:00
Zac Luzader
d3b26b3261
OpenXR: Enable access to the Valve Index grip force sensing
2023-03-12 07:55:25 -06:00
Haoyu Qiu
03fcac3aa5
Fix various typos in the classref
2023-03-09 14:56:23 +08:00
Rémi Verschelde
1c1524a651
Bump version to 4.1-dev
...
Can't stop, won't stop, they said, huh?
2023-03-01 01:44:37 +01:00
Malcolm Nixon
d91e75b6f7
Added render target size multiplier option.
...
Fix formatting
2023-02-18 10:58:06 -05:00
Chris Hutchinson
cb8e919243
Replaced operating system alert dialog with a warning log message,
...
toggled by a project setting.
Fixes #73141
2023-02-13 18:42:43 -05:00
Rémi Verschelde
8ef01ee5df
Merge pull request #72604 from rbessems/rbessems/env_blend_mode
...
Add XR Environment Blend Mode Support
2023-02-03 06:24:30 +01:00
Ron Bessems
d7d171c45c
Add XR Environment Blend Mode Support
2023-02-02 12:18:42 -05:00
Ron Bessems
e78088cc3a
Add Magic Leap 2 OpenXR Interaction Profile
2023-02-02 06:45:43 -05:00
Bastiaan Olij
d3ec17e9ae
Added methods to OpenXR interface to set which action sets are active
2023-01-31 10:20:19 +11:00
Rémi Verschelde
5b1df48c6c
Convert en_GB spelling to en_US with codespell
2023-01-23 11:02:20 +01:00
Rémi Verschelde
822edfdb40
Merge pull request #71708 from dsnopek/openxr-opengl-steamvr-2
...
Get OpenXR with OpenGL working on SteamVR
2023-01-20 08:50:10 +01:00
David Snopek
481369760b
Add depth and color formats to get OpenXR with OpenGL working on SteamVR
2023-01-19 21:22:34 -06:00
Rémi Verschelde
bcb57b42f6
Merge pull request #71450 from BastiaanOlij/fix_openxr_init_failure
...
Fixes issue where failed start of OpenXR causes issues
2023-01-19 10:08:50 +01:00
kobewi
b58111588a
Add EditorUndoRedoManager singleton
2023-01-16 01:11:52 +01:00
Bastiaan Olij
909ec66ca3
Fixes issue where failed start of OpenXR causes issues
2023-01-15 16:57:42 +11:00
Rémi Verschelde
dd1b3ff089
Merge pull request #71224 from rsjtdrjgfuzkfg/openxr-opengl
...
OpenXR: Do not use SRGB swapchains with OpenGL
2023-01-12 09:07:46 +01:00
rsjtdrjgfuzkfg
17a957e214
OpenXR: Do not use SRGB swapchains with OpenGL
...
This commit removes SRGB swapchain options for use with OpenGL, to avoid
the hardware doing an additional SRGB conversion and thus causing colors
to differ from other rendering paths.
2023-01-11 15:47:53 +01:00
rsjtdrjgfuzkfg
b51acac638
OpenXR: Fix initialization warning on Android
...
This commit adds proper checking for XR_KHR_loader_init support and
fixes the warning regarding missing extensions on Android to only appear
if neither XR_KHR_loader_init nor XR_KHR_loader_init_android are
supported by the runtime.
2023-01-11 15:00:22 +01:00