Commit Graph

289 Commits

Author SHA1 Message Date
Claire Blackshaw
19c7afee07 OpenXR - Support for the Logitech MxInk Stylus
In future work we may want to expose an isStylus or similar for
XR Trackers, though that is likely outside the scope of this commit
which is the core extension work.

Vendor Ref: https://logitech.github.io/mxink/OpenXR.html
2024-08-08 11:09:29 +01:00
Haoyu Qiu
7cf9ed5f65 Fix several typos in the documentation 2024-08-02 08:42:20 +08:00
David Snopek
22a6303fa0 OpenXR: Fix enabling passthrough via environment blend mode in project settings 2024-07-19 19:04:51 -05:00
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