icosa-foundation / open-brush

Open Brush is the open source, community led evolution of Tilt Brush! Forked from https://github.com/googlevr/tilt-brush
https://openbrush.app
Apache License 2.0
844 stars 175 forks source link

Add Passthrough to Pico family of headsets #447

Open RedXi opened 1 year ago

RedXi commented 1 year ago

I am using Open Brush with my Pico 4 VR headset and have noticed that the AR mode is not functioning correctly. When attempting to enable the Passthrough mode, I only see a black screen instead of the environment through the VR headset's camera.

Here are additional details that may be relevant:

Steps to reproduce:

I have tested other applications and confirmed that the camera on my Pico 4 VR headset works properly. Hence, it seems to be a specific issue with Open Brush's AR mode.

I would greatly appreciate any assistance you can provide in resolving this problem. If additional information is required, please let me know.

Thank you!

mikeskydev commented 1 year ago

Hi,

Proper support hasn't been added for Pico passthrough yet due to a blending issue on some of our more fancier brushes. Some people have developed a fix by reducing the passthrough opacity but I want to fix it properly, otherwise we end up with a bunch of issues saying 'passthrough is dim on Pico 4' instead! Hope to have this solved soonish.

RedXi commented 1 year ago

Hi mikeskydev,

Thank you for your prompt response. I appreciate the information you provided regarding the current lack of support for the Passthrough mode on the Pico 4 headset due to technical issues.

I completely understand the importance of developing software of high quality.

I genuinely hope that the problem can be resolved soon, as I am eagerly looking forward to the release of Open Brush in Passthrough Mode for the Pico 4. Given that the Pico 4 headset offers a wireless experience, "Open Brush" would indeed be a great fit for it.

Best regards, RedXi

PGSCOM commented 1 year ago

Same

huihuangex commented 1 year ago

I hope it can be resolved as soon as possible

nickbisesi3 commented 5 months ago

Any updates on this? Would love to use passthrough on my pico 4

mikeskydev commented 4 months ago

We recently worked out the technique that allows our quest Passthrough to function correctly, so we're hoping we can duplicate it for other platforms really soon!

MatteoFith commented 3 months ago

Hi @mikeskydev, I am working on a proof of concept for Pico 4 with passthrough capability. I'm encountering the blending issue that prevents brushes from being displayed.

Do you know of any brushes that currently can be used with Pico passthrough? I'm not looking for a fancy brush; a very simple one would be perfect for my needs.

mikeskydev commented 3 months ago

Hi, that's great! OilPaint should work just fine. I've been poking some more at this but there's a lot to do, so if you're going to look into it further I'd love to chat more. Are you in our Discord?

MatteoFith commented 3 months ago

Yes, I have just sent you a DM.

mikeskydev commented 1 month ago

I think we're finally going to get a "proper" solution!

The missing piece was being able to control the blending of the default projection layer, which will be provided with Unity's imminent release of the composition layers package: https://discussions.unity.com/t/openxr-control-over-eye-camera-layer-alpha-blend-like-ovrplugin/1510768

Pico uses XR_FB_passthrough underneath (because it's a decent solution, fair play for not reinventing the wheel), and I've already engineered a way to use it with composition layers.

mikeskydev commented 3 weeks ago

Got tired of waiting for Unity and did some hacking in a test project :D Here's some Open Brush shaders running in passthrough on Pico, blending correctly. Going on pat leave but will get to work on this properly once I'm back.

Screenshot_dev mikesky unityopenxrextensions_2024 09 12-17 36 23 750_153