Washed out colors in WebXR in the Apple VisionOS simulator

Hello.

I’m developing a xr immersive experience with babylon 6.31.0 for Vision Pro (I don’t have the device itself, but I’m using the XCode VisionOS simulator in a Mac).

When the scene starts rendering in immersive mode the colors look whashed out. The bug is present in any immersive experience, even in the simplest demo:
https://playground.babylonjs.com/#F41V6N

Before clicking in the VR button

Immersive mode

What could be the issue?

Thank you so much.

1 Like

Do not know, but think you should something which is not BJS, just to make sure it is not more than us.

Looks like a gamma correction issue.

@RaananW and @Cedric anything you can think of ?

Yes this is only happening with babylon, other WebXR experiences made with other engines are working properly

Looks like a color space issue. idk how to set that up with a web page and/or an xr experiment.

Thanks so much for reporting!

I can’t think of anything that will cause this TBH. But it’s apparent it is there.

@Cedric - you tried a few babylon scenes in the emulator - was there an issue then?

No, nothing striking but I was more focused on getting something on screen. Things might have changed since my last testing as well. Simulator is still beta AFAIK

1 Like

Could it be related to the HDR support of the Vision pro screens?

1 Like

Did you find something in the options that could do something with screen colorspace? I believe macos option also have possibilities to change screen color space.
Did you check for colorspace in the Apple documentation for VisionOS ?

Can you try also with the createDefaultEnvironment in the mix ? just a default playground ? I would like to rule out any things from our side.

I haven’t found any option for that in Safari settings or anywhere else.

I also noticed gamma differences in other WebXR demos, not only in babylon.js

https://immersive-web.github.io/webxr-samples/inline-session.htmI

I haven’t noticed it before because it’s more subtle.

1 Like

thanks for the update! a bit more relaxing, but still - we will do our best to make sure we render correctly on the vision pro

Hi! I’ve also noticed this issue. Has anyone found a solution?

The problem seems to happen only when you’re in full XR mode, in the preview before it looks good:


But then when you’re in full XR mode it looks like this:

Very washed out, I’m also noticing an issue with where click events seem to be happening. The boxes in my scene are clickable, it works in a normal browser and in XR mode on Android. But for the Vision Pro it seems very offset.

Regarding the clicking, I’ve adapted this playground to also have WebXR.

When it’s not in XR everything is working as expected, but when you start XR nothing seems clickable anymore.

Maybe I’m missing something on how to click in WebXR mode in the Vision Pro :woman_shrugging: but I thought I’d mention it.

Yeah, same scene for HoloLens WebXR works fine

1 Like

Thanks a lot for reporting this. I currently have no way of testing it as I am waiting on my mac to run an emulator. But this will probably be the first test I will try - finding out what went wrong here.

1 Like

Great! Let me know if I can help with anything.

Here’s how I got the simulator running, since it took me a bit to find it all maybe I can save you some time:
Get beta of XCode
In Xcode menu, start through Xcode > Open Developer Tool > Simulator

In simulator:
In menu bar go to File > New Simulator…
For ‘Device Type’ you can select Vision Pro, it’s all the way at the bottom, if it’s not there then maybe you don’t have the beta simulator running. The beta simulator has a beta icon in the taskbar.

From then on you can start the simulator just through ‘Open Simulator’.
You can summon the menu with the house icon topright of the simulator
In the simulator you need to enable WebXR through ‘Settings’ > Apps > Safari > (click and drag this down for advanced) > (drag down again for hidden ‘Feature Flags’) > and here you can enable all WebXR stuff.

I think that should do it :smiley:

1 Like