Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add PICO OS Immersive Mode #101387

Merged
merged 1 commit into from
Jan 13, 2025

Conversation

picoxr
Copy link
Contributor

@picoxr picoxr commented Jan 10, 2025

Add PICO OS support for the XR preview mode.

When previewing XR projects in Godot Engine running on PICO Headsets (PICO 4 Ultra, PICO 4), the preview mode stays in 2D- windowed mode and does not enter the immersive mode.

This commit enables previewing XR applications in immersive mode on PICO Headsets.

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.

This looks great to me! Just want to get @m4gr3d approval as well as the expert on the Android build setup.

Copy link
Contributor

@m4gr3d m4gr3d left a comment

Choose a reason for hiding this comment

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

This looks great! Looking forward to having the XR Editor running on a second platform!

Supported features in the immersive preview mode
- Passthrough
- Hand tracking
Notes:
- Multi-window is only available for internal apps on PICO OS, therefore launching adjacent windows is not possible currently.
- Passthrough splash screen is not supported on PICO OS
@picoxr picoxr force-pushed the add-picoos-immersivemode branch from 293d6ad to a2bfb7c Compare January 13, 2025 16:40
@akien-mga akien-mga modified the milestones: 4.x, 4.4 Jan 13, 2025
@akien-mga akien-mga merged commit b7c0a0f into godotengine:master Jan 13, 2025
20 checks passed
@akien-mga
Copy link
Member

Thanks! And congrats for your first merged Godot contribution 🎉

@dsnopek
Copy link
Contributor

dsnopek commented Jan 13, 2025

This is already merged, but I was finally just able to test it on the Pico 4 Ultra.

Seems to work great! I'm able to launch an XR project, go into immersive mode, and then quit it to return to the Godot editor.

There are some little issues that I noticed: for example, the "Quit to Project List" option doesn't seem to work, the Godot editor just exits. And if I run a 2D project, it will open it in a panel and work fine, but when I close that panel it doesn't take me back to the editor - I have to launch Godot again.

But if those represent Godot issues (and not issues in the Pico OS), we can do follow-up PRs for them :-)

Thanks!

@BastiaanOlij
Copy link
Contributor

I finally had a moment to test as well. David I'm assuming you tested on a Pico 4 Ultra? I tested it on my Pico 4.

Similar experience, seems to work like a charm. I only couldn't return to the editor after launching the game.

Also I couldn't have the editor open while the game was running though I think this is due to a few things we can only enable once the editor is in the PICO store (if I understood correctly from conversations I had).

Other small interface things I think are mostly Godot or PicoOS things, not related to this PR.
One we may need to look into is that the project manager seems to default to a file location that isn't accessible in PicoOS. I had to create a subfolder within Godots user folder (I think).

@m4gr3d
Copy link
Contributor

m4gr3d commented Jan 14, 2025

One we may need to look into is that the project manager seems to default to a file location that isn't accessible in PicoOS. I had to create a subfolder within Godots user folder (I think).

The editor usually pops out a permission screen the first time it's launched in order to request the MANAGE_EXTERNAL_STORAGE permission. @dsnopek @BastiaanOlij Did the permission request show up for you when you launch it?

And if I run a 2D project, it will open it in a panel and work fine, but when I close that panel it doesn't take me back to the editor - I have to launch Godot again.

@dsnopek Does the panel open in the same window, or in a separate window?

@BastiaanOlij
Copy link
Contributor

@m4gr3d I was just able to test on my new Pico 4 Ultra, and it works correctly there.

I haven't tried running a 2D app, only an XR app and that works better on the PICO 4 Ultra as well.

@dsnopek
Copy link
Contributor

dsnopek commented Jan 14, 2025

David I'm assuming you tested on a Pico 4 Ultra?

Yep!

One we may need to look into is that the project manager seems to default to a file location that isn't accessible in PicoOS. I had to create a subfolder within Godots user folder (I think).

The editor usually pops out a permission screen the first time it's launched in order to request the MANAGE_EXTERNAL_STORAGE permission. @dsnopek @BastiaanOlij Did the permission request show up for you when you launch it?

I don't recall seeing the permission request, but it's possible it appeared and I just immediately accepted it. :-) I didn't have the problem that Bastiaan had - the default directory that the project manager uses worked fine for me. I was able to pull projects from the asset library into there and they ran fine.

@dsnopek Does the panel open in the same window, or in a separate window?

It appears like the game replaces the editor within the same window. If I click on the Godot Editor app on the toolbar, it just hides/shows the game. And then the only thing I can do is close the panel, which quits the game, and the editor is long gone (I suspect it quit as soon as I started the game?)

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

Successfully merging this pull request may close these issues.

6 participants