From 685816118d4e726e23bc8d739384c44d0100ce6b Mon Sep 17 00:00:00 2001 From: skyace65 Date: Wed, 15 Jan 2025 17:43:13 -0500 Subject: [PATCH] Update setting up XR for Godot 4.3 --- tutorials/xr/img/openxr_settings.webp | Bin 32282 -> 12120 bytes tutorials/xr/img/xr_basic_scene.webp | Bin 0 -> 5874 bytes tutorials/xr/img/xr_left_hand.webp | Bin 0 -> 7280 bytes tutorials/xr/img/xr_right_hand.webp | Bin 0 -> 7500 bytes tutorials/xr/img/xr_shaders.webp | Bin 0 -> 7264 bytes tutorials/xr/openxr_settings.rst | 2 +- tutorials/xr/setting_up_xr.rst | 60 +++++++++++++------------- tutorials/xr/xr_action_map.rst | 2 +- 8 files changed, 31 insertions(+), 33 deletions(-) create mode 100644 tutorials/xr/img/xr_basic_scene.webp create mode 100644 tutorials/xr/img/xr_left_hand.webp create mode 100644 tutorials/xr/img/xr_right_hand.webp create mode 100644 tutorials/xr/img/xr_shaders.webp diff --git a/tutorials/xr/img/openxr_settings.webp b/tutorials/xr/img/openxr_settings.webp index b6047feef511cb3ef0114bdcd4e9b4ee2a9f7ab3..fcd393b29017caa185f2fc94c79f93e07bf598fe 100644 GIT binary patch literal 12120 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 Oz#Ej3;S|#ez!wV0cqaS+ literal 32282 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
    -7=Ku7 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 Y^M>aIXPbm`HM7;?%lgQX;0*x$AE`&(hX4Qo diff --git a/tutorials/xr/img/xr_basic_scene.webp b/tutorials/xr/img/xr_basic_scene.webp new file mode 100644 index 0000000000000000000000000000000000000000..ab702e5fa50ae8cc50af7d6d09fbd101c4743999 GIT binary patch literal 5874 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 literal 0 HcmV?d00001 diff --git a/tutorials/xr/openxr_settings.rst b/tutorials/xr/openxr_settings.rst index 54833820d..ffa8cd67b 100644 --- a/tutorials/xr/openxr_settings.rst +++ b/tutorials/xr/openxr_settings.rst @@ -7,7 +7,7 @@ OpenXR has its own set of settings that are applied when OpenXR starts. While it is possible for OpenXR extensions implemented through Godot plugins to add additional settings, we will only discuss the settings in the core of Godot here. -.. image:: img/openxr_settings.png +.. image:: img/openxr_settings.webp Enabled ------- diff --git a/tutorials/xr/setting_up_xr.rst b/tutorials/xr/setting_up_xr.rst index 431f3a2aa..c53eb7c12 100644 --- a/tutorials/xr/setting_up_xr.rst +++ b/tutorials/xr/setting_up_xr.rst @@ -28,30 +28,14 @@ There are three XR specific node types that you will find in nearly all XR appli There are other XR related nodes and there is much more to say about these three nodes, but we'll get into that later on. -Prerequisites for XR in Godot 4 -------------------------------- +Which Renderer to use +--------------------- -While in Godot 3 most things worked out of the box, Godot 4 needs a little more -setup. This is mainly due to the more advanced nature of the Vulkan renderer. -There are many rendering features in Vulkan the XR system uses that aren't -enabled by default. To turn them on, open up your project settings and tick -:ref:`XR > Shaders > Enabled `: - -.. image:: img/xr_shaders.png - -.. UPDATE: Not supported yet. When all or most post process effects work in -.. stereoscopic rendering, remove or update this note. - -.. warning:: - As Godot 4 is still in development, many post process effects have not yet been updated to support stereoscopic rendering. Using these will have adverse effects. - -.. UPDATE: Recommended renderer may change. If the Mobile renderer (or any other -.. renderer) is recommended for all XR projects, update this note. - -.. note:: - Godot 4 has 3 renderer options, Compatibility, Mobile, and Forward+. In the future XR desktop projects should use Forward+, and projects for standalone headsets - should use Mobile. Currently Compatibility is the recommended renderer for standalone headsets, and ironically Mobile is the recommended renderer for desktop. - This is based on current XR performance on the different devices with each renderer. +Godot has 3 renderer options for projects: Compatibility, Mobile, and Forward+. +The current recommendation is to use the Mobile renderer for any desktop VR project, +and use the Compatibility renderer for any project running on a standalone headset +like the Meta Quest 3. XR projects will run with the Forward+ renderer, but it isn't +well optimized for XR right now compared to the other two. OpenXR ------ @@ -60,27 +44,41 @@ OpenXR is a new industry standard that allows different XR platforms to present The Vulkan implementation of OpenXR is closely integrated with Vulkan, taking over part of the Vulkan system. This requires tight integration of certain core graphics features in the Vulkan renderer which are needed before the XR system is setup. This was one of the main deciding factors to include OpenXR as a core interface. -This also means OpenXR needs to be enabled when Godot starts in order to set things up correctly. The required setting can be found in your project settings: +This also means OpenXR needs to be enabled when Godot starts in order to set things +up correctly. Check the :ref:`Enabled` +setting in your project settings under **XR > OpenXR**. -.. image:: img/openxr_settings.png +.. image:: img/openxr_settings.webp + +You can find several other settings related to OpenXR here as well. These can't be +changed while your application is running. The default settings will get us started, +but for more information on what's here see :ref:`doc_openxr_settings`. + +You'll also need to go to **XR > Shaders** in the project settings and check the +:ref:`Enabled` +box to enable them. Once you've done that click the **Save & Restart** button. + +.. image:: img/xr_shaders.webp + +.. warning:: + Many post process effects have not yet been updated to support stereoscopic rendering. Using these will have adverse effects. -As setup is brought forward with OpenXR you can find several other settings related to OpenXR here as well. These can't be changed while your application is running. -The default settings will get us started and we will go into detail in another section of the documentation. Setting up the XR scene ----------------------- Every XR application needs at least an :ref:`XROrigin3D ` and an :ref:`XRCamera3D ` node. Most will have two :ref:`XRController3D `, one for the left hand and one for the right. Keep in mind that the camera and controller nodes should be children of the origin node. Add these nodes to a new scene and rename the controller nodes to ``LeftHand`` and ``RightHand``, your scene should look something like this: -.. image:: img/xr_basic_scene.png +.. image:: img/xr_basic_scene.webp -Next you need to configure the controllers, select the left hand and set it up as follows: +The warning icons are expected and should go away after you configure the +controllers. Select the left hand and set it up as follows: -.. image:: img/xr_left_hand.png +.. image:: img/xr_left_hand.webp And the right hand: -.. image:: img/xr_right_hand.png +.. image:: img/xr_right_hand.webp Right now all these nodes are on the floor, they will be positioned correctly in runtime. To help during development, it can be helpful to move the camera upwards so its ``y`` is set to ``1.7``, and move the controller nodes to ``-0.5, 1.0, -0.5`` and ``0.5, 1.0, -0.5`` for respectively the left and right hand. diff --git a/tutorials/xr/xr_action_map.rst b/tutorials/xr/xr_action_map.rst index 701e448e5..8aa6a16cc 100644 --- a/tutorials/xr/xr_action_map.rst +++ b/tutorials/xr/xr_action_map.rst @@ -17,7 +17,7 @@ and binding these to the actual inputs and outputs on your XR devices. As the XR action map is currently part of the OpenXR module, OpenXR needs to be enabled in your project settings to expose it: -.. image:: img/openxr_settings.png +.. image:: img/openxr_settings.webp You will then find the XR Action Map interface in the bottom of the screen: