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
Rémi Verschelde
62b023ecd3
Merge pull request #70167 from rsjtdrjgfuzkfg/pico
...
OpenXR: Add Pico controller profile
2023-01-11 09:49:16 +01:00
Rémi Verschelde
6a86dfad29
Fix typos with codespell
...
Also includes #71080 .
Co-authored-by: Psychpsyo <60073468+Psychpsyo@users.noreply.github.com>
2023-01-09 08:39:07 +01:00
rsjtdrjgfuzkfg
e6370a45d8
OpenXR: Add preliminary Pico controller profile
...
This commit adds the Pico controller used in the Pico 4 as implemented
in current versions of the OpenXR runtime on the device itself. Note
that the extension and paths used in this commit might become obsolete
once there is official support for the Pico 4 in the OpenXR standard.
2023-01-06 14:02:41 +01:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
...
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.
It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).
We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).
Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
Bastiaan Olij
b6550c46ee
Removed member variables from OpenXRExtensionWrapper
...
Made extension container in OpenXRAPI static
Moved controller meta data into extensions where applicable
2023-01-04 11:34:58 +11:00
Bastiaan Olij
b5e205a57c
Fix missing undo/redo object and issue with removing actions
2022-12-19 19:35:06 +11:00
rsjtdrjgfuzkfg
20c192cc2d
OpenXR: fix casts and loop in action map editor
...
This commit replaces potentially unsafe static casts with
Object::cast_to and fixes the order in which UI elements are looped over
when removing controls. This fixes crashes and wrong data being
displayed in the OpenXR action map editor when saving or resetting
action maps.
2022-12-16 21:32:43 +01:00
Rémi Verschelde
346efd29e0
Fix typos with codespell
2022-12-15 12:24:08 +01:00
Rémi Verschelde
cd855f6516
Merge pull request #68528 from BastiaanOlij/openxr_actionmap_changes
...
Various fixes for OpenXR action map meta data and editing
2022-12-13 10:16:19 +01:00
Rémi Verschelde
62f7f378d4
Merge pull request #69690 from BastiaanOlij/display_refresh_type
...
Fix property type for OpenXR display refresh rate
2022-12-07 13:25:48 +01:00
Rémi Verschelde
a565ddcd09
Merge pull request #69654 from BastiaanOlij/openxr_submit_depth_optional
...
Make submitting depth buffer in OpenXR optional
2022-12-07 13:25:42 +01:00
Bastiaan Olij
0b48ca0303
Fix property type for OpenXR display refresh rate
2022-12-07 10:17:34 +11:00
Bastiaan Olij
484cd90d29
Make submitting depth buffer in OpenXR optional
2022-12-06 22:37:33 +11:00
Bastiaan Olij
a35d792e65
Fix typo that resulted in left eye depth buffer being submitted for the right eye
2022-12-06 21:30:55 +11:00
David Snopek
61cec0b023
Clean up DisplayServerAndroid::window_get_native_handle() with the GLES3 renderer
2022-12-04 13:07:51 -06:00
Rémi Verschelde
75d5dfe591
SCons: Disable openxr module with disable_3d=yes
...
Fixes #69470 .
2022-12-02 11:40:24 +01:00
David Snopek
aa5b42946c
Fix OpenXR on the Meta Quest: XR_KHR_loader_init_android is not reported as available (but it works anyway)
2022-11-29 20:45:01 -06:00
clayjohn
9141984e7e
Enable GLES3 on Android
...
Add necessary build flags and switch from using a
GLES2 context to a GLES3 one.
This also enables building for OpenXR
Co-authored-by: m4gr3d <fhuyakou@gmail.com>
Co-authored-by: dsnopek <dsnopek@gmail.com>
2022-11-29 14:18:24 -08:00
Bastiaan Olij
96bbdf7249
Various fixes for OpenXR action map meta data and editing
2022-11-25 20:26:30 +11:00
Jens Nolte
67f31f571e
Fix GLAD-related build problems on Linux
...
- Use gl.h provided by GLAD in the OpenXR module
- Use non-EXT variants of some OpenGL defines
- Remove libGL-related code paths
2022-11-25 02:52:17 +01:00
Rémi Verschelde
c39c251255
Merge pull request #68023 from rsjtdrjgfuzkfg/pico
...
Partial support for Pico 4
2022-11-24 10:43:15 +01:00
Rémi Verschelde
dfcb2d4fb8
Merge pull request #64250 from raulsntos/openxr-string-arrays
...
Expose string array properties in OpenXR module as PackedStringArray
2022-11-22 21:41:24 +01:00
Markus Sauermann
28af870750
Code simplifications found by cppcheck
...
They are based on:
- Boolean arithmetic simplifications
- setting variables that are not accessed
- constant variables
2022-11-21 08:43:36 +01:00
dzil123
2ba5aaa2fc
Fix -Wtype-limits warning in openxr_interface.cpp
2022-11-12 20:46:24 -08:00
avemort
8ef1719945
Add index check to OpenXRInterface::get_projection_for_view and OpenXRInterface::get_transform_for_view
2022-11-11 11:00:34 -03:00
David Snopek
c767cc16ea
[openxr] Remove unnecessary fallbacks for native handles on X11
2022-11-09 08:09:07 -06:00
David Snopek
23603e409c
Add support for OpenGL to OpenXR
2022-11-08 18:47:11 -06:00
rsjtdrjgfuzkfg
4243b85990
OpenXR: support XR_KHR_android_create_instance
...
This commit adds support for the OpenXR extension
XR_KHR_android_create_instance, which seems to be required on Pico
devices.
2022-11-04 01:57:48 +01:00