Skip to content

Conversation

@skyace65
Copy link
Contributor

@skyace65 skyace65 commented Feb 1, 2025

Updates the page to Godot 4.4. That said there's almost no 4.4 specific changes in this, that's really just the screenshots. Though the page hasn't been updated in a while and a lot has changed over the last two Godot releases, hence a bunch of changes and re-organizing.

I've done the following:

  • Remove references to creating a debug.keystore file for android, that's done automatically in Godot 4.3 (Engine PR: Automatically generate the Android debug keystore godot#90611). Closes confusing/obsolete instruction in xr android deployment tutorial #10592
  • Moved the warning about which render to use to the setup section. I don't think that it makes sense to have it later in the page.
  • Removed the warning about the loaders plugin being renamed. If Bastiaan wants this back I'll re-add it, but I'm not sure how much value it provides right now
  • Updated the text to say look for the 4.3 version of the plugin, last time I checked with Bastiaan he wasn't sure how they were going to handle renaming it for 4.4 hence leaving it like that
  • Reword a section to avoid mentioning the specific plugin version, it's also now on 3.x instead of 2.x in terms of release number
  • Remove the section on enabling the vendors plugin entirely, you don't need to do that anymore since it uses GDExtension
  • rework the section on enabling a loader for better flow
  • Remove the image showing Meta XR features you can enable. It's out of date and the plugin has so many features now you can't fit them all in a single screenshot
  • Update text to reflect that there are Pico specific features now

@skyace65 skyace65 added enhancement area:manual Issues and PRs related to the Manual/Tutorials section of the documentation labels Feb 1, 2025
@skyace65 skyace65 added this to the 4.4 milestone Feb 1, 2025
@skyace65 skyace65 requested a review from BastiaanOlij February 1, 2025 03:03
@skyace65 skyace65 added the topic:xr Related to XR documentation label Feb 1, 2025
The vendors plugin can be downloaded from the asset library, search for "OpenXR
vendors" and install the one named "Godot OpenXR Vendors plugin for Godot 4.3".
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The vendors plugin can be downloaded from the asset library, search for "OpenXR
vendors" and install the one named "Godot OpenXR Vendors plugin for Godot 4.3".
The vendors plugin can be downloaded from the asset library, search for "OpenXR vendors"
and install the one named "Godot OpenXR Vendors plugin for Godot 4.3".

Better readability for the raw text

@skyace65
Copy link
Contributor Author

skyace65 commented Feb 1, 2025

Applied AThousandShips suggestion

Copy link
Contributor

@BastiaanOlij BastiaanOlij left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, couple small things we should tweak.

You will need to copy the `assets/addons/godotopenxrvendors` folder from the zip file into your projects `addons` folder.
You will find the installed files inside the **addons** folder. Alternatively you
can manually install the vendors plugin by downloading it `from the release page here <https://github.com/GodotVR/godot_openxr_vendors/releases>`__.
you will need to copy the `assets/addons/godotopenxrvendors` folder from the zip
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Last sentence ended in a full stop, shouldn't this be capitalised?

If the vendors plugins were installed correctly you should find entries for the
different headsets under **XR Features**. Change the **XR Mode** to **OpenXR**, then
select the entry for your headset if you see one. If you don't see one enable the
Khronos plugin. It's the official Khronos loader, in due time all headsets should
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't entirely true anymore. We've started adding entries for different Android platforms even though they all use the Khronos loader. This because while they use the same loader, they have platform dependent android feature flags and permissions.

There is a hope that in the future we will have an entry just for Khronos that will allow you to build an APK that can be deployed to different headsets but this will require the industry to unify these settings.

I believe only Meta and Lynx do not use the Khronos loader at this time, and we do have plans to change this for Meta as Meta does support the Khronos loader.
Lynx probably does too (this is a Qualcomm spaces device if I'm not mistaken) but as we have no Qualcomm spaces devices to test or verify, we're stuck.

While the Mobile Vulkan renderer has many optimizations targeted at mobile devices, we're still working out the kinks.
It is highly advisable to use the compatibility renderer (OpenGL) for the time being when targeting Android based XR devices.
Scroll to the bottom of the list and you'll find additional XR feature sections,
currently only **Meta XR Features** and **Pico XR Features** are available.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There should be a Khronos features section, but I think a bug must have recently been introduced in the filtering because it's missing in the editor (it's still there in the code).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have to ask a stupid question then, is this something you expect to be fixed by the time Godot 4.4 releases? And I know that's hard to guess without knowing what the issue is, but I'd rather not have the docs reference settings that might not exist at the time of that release. Also I've created an issue in the plugin repository for this GodotVR/godot_openxr_vendors#256

@skyace65
Copy link
Contributor Author

skyace65 commented Feb 4, 2025

Fixed two of Bastiaan's issues, still need to figure out what to do about the Khronos XR Features before this can be merged.

@skyace65
Copy link
Contributor Author

skyace65 commented Feb 9, 2025

@BastiaanOlij I've updated the PR to list magic leap and HTC since that bug was fixed in 3.1.2. I'm noticing a behavior discrepancy though, Meta features and Pico features show up regardless of if their box is checked or not, Magic Leak and Khronos require their sections to be checked though. That said the way this tutorial is structured implies you should be checking the box for the one you want before looking at features so I'd say it's good, at least for now. Any other changes you want me to make? And any idea how you're going to handle plugin naming once 4.4 releases? If not that's fine and this PR can be merged as is

@BastiaanOlij
Copy link
Contributor

@BastiaanOlij I've updated the PR to list magic leap and HTC since that bug was fixed in 3.1.2. I'm noticing a behavior discrepancy though, Meta features and Pico features show up regardless of if their box is checked or not, Magic Leak and Khronos require their sections to be checked though. That said the way this tutorial is structured implies you should be checking the box for the one you want before looking at features so I'd say it's good, at least for now. Any other changes you want me to make? And any idea how you're going to handle plugin naming once 4.4 releases? If not that's fine and this PR can be merged as is

Yup, we've only recently started adding the ability to hide features not applicable to the selection you've made and they only apply to some of the newer things we've added.

Not something that will likely see improvement in the near future unless someone has the time to polish up the existing entries.

@skyace65
Copy link
Contributor Author

@BastiaanOlij I've updated the PR to list magic leap and HTC since that bug was fixed in 3.1.2. I'm noticing a behavior discrepancy though, Meta features and Pico features show up regardless of if their box is checked or not, Magic Leak and Khronos require their sections to be checked though. That said the way this tutorial is structured implies you should be checking the box for the one you want before looking at features so I'd say it's good, at least for now. Any other changes you want me to make? And any idea how you're going to handle plugin naming once 4.4 releases? If not that's fine and this PR can be merged as is

Yup, we've only recently started adding the ability to hide features not applicable to the selection you've made and they only apply to some of the newer things we've added.

Not something that will likely see improvement in the near future unless someone has the time to polish up the existing entries.

Got it, would you consider this PR good to merge then?

Copy link
Contributor

@BastiaanOlij BastiaanOlij left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@tetrapod00 tetrapod00 merged commit 247213a into godotengine:master Feb 15, 2025
1 check passed
@tetrapod00
Copy link
Contributor

Thanks, and thanks for the reviews!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:manual Issues and PRs related to the Manual/Tutorials section of the documentation enhancement topic:xr Related to XR documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

confusing/obsolete instruction in xr android deployment tutorial

5 participants