Commit Graph

286 Commits

Author SHA1 Message Date
Rémi Verschelde 1e81a946cc
Merge pull request #94412 from dsnopek/xr-always-render
Always render when XR is enabled, even if no OS windows can draw
2024-07-18 15:38:14 +02:00
David Snopek 7a5a8597eb Always render when XR is enabled, even if no OS windows can draw 2024-07-17 08:19:21 -05:00
Bastiaan Olij 9e658e29d2 Fixed creating default action map 2024-07-17 12:04:06 +10:00
Rémi Verschelde b6434f2ac7
Merge pull request #94158 from BastiaanOlij/fix_action_map
OpenXR: Couple of small fixes on the action map
2024-07-11 23:16:51 +02:00
Bastiaan Olij 95b72631aa Couple of small fixes on the action map: now saves when CTRL-S is pressed/project is run, no longer looses content if OpenXR is not enabled, and a small documentation fix. 2024-07-11 20:06:46 +10:00
Bastiaan Olij bf8c85e13b Remove our ERR_ON_RENDER_THREAD guard, it is not reliable 2024-07-09 18:48:00 +10:00
David Snopek 06e81d9fe4 [OpenXR] Fix LOCAL_FLOOR emulation on HTC Vive XR Elite 2024-06-27 14:12:11 -05:00
A Thousand Ships fbb879debd
[Scene] Add `SceneStringNames::text/value_changed` 2024-06-19 09:44:38 +02:00
A Thousand Ships d9e2fc74c7
[Scene] Add `SceneStringNames::item_selected` 2024-06-19 09:39:05 +02:00
Bastiaan Olij 8eb130fdf0 OpenXR: Add HTC/MSFT hand interaction profiles 2024-06-12 19:16:43 +10:00
Logan Lang a64b0d3830 Set XRHandTracker property has_tracking_data to true only when palm joint is tracked 2024-06-05 17:22:45 +02:00
A Thousand Ships 926afccbd8
[Scene] Add `SceneStringNames::panel` 2024-05-30 22:54:50 +02:00
devloglogan 6a8f2f00ac Apply reference frame transform to OpenXRCompositionLayer nodes 2024-05-29 07:52:54 -05:00
Rémi Verschelde 4c0d5e59bf
Merge pull request #92200 from devloglogan/composition-layer-viewport-fix
Allow `OpenXRCompositionLayer` property `layer_viewport` to always be assigned `nullptr`
2024-05-21 23:19:03 +02:00
devloglogan 3d7b712c86 Allow OpenXRCompositionLayer property layer_viewport to be assigned to nullptr 2024-05-21 07:52:40 -05:00
Bastiaan Olij 6582be0c50 OpenXR: Fix updating swapchain for foveation 2024-05-20 12:23:56 +10:00
Rémi Verschelde 4971b71899
Merge pull request #91952 from dsnopek/openxr-composition-layer-sample-count
Fix sample count on OpenXR composition layers
2024-05-14 18:10:14 +02:00
David Snopek 45a02c28cd Fix sample count on OpenXR composition layers 2024-05-14 10:43:44 -05:00
A Thousand Ships ee79386f7b
[Scene] Add SceneStringNames::pressed 2024-05-14 15:51:28 +02:00
David Snopek a8a7110b90 Fix `layer_viewport` getting cleared on `OpenXRCompositionLayer` in editor 2024-05-09 14:05:20 -05:00
A Thousand Ships a0dbdcc3ab
Replace `find` with `contains/has` where applicable
* Replaces `find(...) != -1` with `contains` for `String`
* Replaces `find(...) == -1` with `!contains` for `String`
* Replaces `find(...) != -1` with `has` for containers
* Replaces `find(...) == -1` with `!has` for containers
2024-05-08 12:37:42 +02:00
David Snopek de654d9846 OpenXR: Fix composition layers not having correct play space 2024-05-07 20:49:46 -05:00
Rémi Verschelde 316b87dc5f
Merge pull request #91485 from dsnopek/openxr-composition-layers-hole-punch
OpenXR: Allow composition layers to enable hole punching
2024-05-07 21:52:49 +02:00
David Snopek 666bf60e36 OpenXR: Allow composition layers to enable hole punching 2024-05-07 10:02:32 -05:00
Rémi Verschelde 4b070e8031
Fix various typos with codespell
Using 2.2.7.dev217+g10c2abcf.

Had to add `colour` to the ignore list as we used it as an alias/keyword for the
documentation of color-related APIs.
Also ignore recommendations to change `thirdparty` to either `third-party` or
`third party`, which are correct but we use the former fairly consistently.
2024-05-07 10:08:42 +02:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
Bastiaan Olij 9042ddf19f Improvements to VRS/Foveated rendering 2024-05-03 17:20:30 +10:00
Bastiaan Olij 527c30c594 Add support for OpenXR hand interaction extension 2024-05-02 19:15:02 +10:00
Bastiaan Olij cbab7dc049 OpenXR: Change timing of xrWaitFrame and add thread safety features to OpenXR 2024-05-01 14:24:41 +10:00
Aaron Franke 1bcbbe96c4
Organize existing code for editor plugins 2024-04-27 11:59:58 -07:00
Malcolm Nixon e00e5c0386 Remove the Hand enum from XRHandTracker to fix name-collision with the hand property of the base class.
Co-Authored-By: David Snopek <191561+dsnopek@users.noreply.github.com>
2024-04-25 19:38:57 -04:00
Rémi Verschelde 8c474ddd49
Merge pull request #90710 from m4gr3d/fix_jstring_leaks
Fix leakage of JNI object references
2024-04-22 12:52:16 +02:00
Rémi Verschelde bffaa98b13
Merge pull request #90645 from Malcolmnixon/unified-xr-trackers
Rework XR Trackers to have a common ancestor
2024-04-22 12:52:07 +02:00
Malcolm Nixon 823ae7b3fa Rework XR Trackers to have a common ancestor. Allow creation of XRNode3D to drive node positions and visibility. 2024-04-18 20:04:01 -04:00
Rémi Verschelde d06cb2e57d
Merge pull request #90761 from dsnopek/openxr-composition-layers-experimental
Mark `OpenXRCompositionLayer` and its children as experimental
2024-04-18 12:24:40 +02:00
David Snopek a094ff377d Mark `OpenXRCompositionLayer` and its children as experimental 2024-04-16 11:02:44 -05:00
David Snopek dfca388d75 Revert `OpenXRHand` to its pre-`SkeletonModifier3D` state 2024-04-16 10:36:43 -05:00
Fredia Huya-Kouadio f291a4ed3a Fix leakage of JNI object references
Fixes https://github.com/godotengine/godot/issues/87548
2024-04-15 10:30:18 -07:00
Bastiaan Olij b67eba8399 OpenXR: apply fix for reverse Z 2024-04-10 10:35:19 +10:00
Bastiaan Olij c388fe2ba7 OpenXR: Improve swapchain logic and fix swapchain update when render target multiplier is changed. 2024-04-09 16:56:39 +10:00
Rémi Verschelde 0c6b5efab3
Merge pull request #90391 from AThousandShips/xr_bind_fix
[XR] Fix binds for composition layer virtuals
2024-04-08 18:42:44 +02:00
Rémi Verschelde 0fd440e95f
Merge pull request #90374 from BastiaanOlij/openxr_refresh_rate_signal
OpenXR: Add refresh rate signal support
2024-04-08 18:42:38 +02:00
A Thousand Ships 730cfdde66
[XR] Fix binds for composition layer virtuals 2024-04-08 17:28:26 +02: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
Bastiaan Olij 148ff6a47f OpenXR: Add refresh rate signal support 2024-04-08 12:36:17 +10: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
Rémi Verschelde 0ff056ea2e
Merge pull request #90218 from Repiteo/do-while-false-cleanup
Update lingering `do/while(0)` defines
2024-04-05 12:16:34 +02:00
Thaddeus Crews bbb3eb3a1a
Update lingering `do/while(0)` defines 2024-04-04 14:17:22 -05:00