Device Profiling

Hello,

When using BABYLON.GUI.AdvancedDynamicTexture.CreateFullscreenUI function with VR Camera…

Pixel 2 Phone works fine and everything lines up while Lenovo Mirage Solo has some issues with Alignment and cross-eyed effect.

I know this isn’t a bug because when getting the Window width from Lenovo Device it is returning the width of a single eye.

So my question is this…

What can I do to force a new size on the fullscreen texture?

Hi Michael_Prosser,

I can’t quite visualize the problem you’re describing, so this might not be helpful, but would scaleTo affect the resolution you’re wanting to change?

I tried all the properties I can think of and scaling was one of them - it scales both but they remain mis-aligned. THis is specific to the Lenovo device. No issues on any other devices.

Shows the correct display while the bad display is something like:

Which are further away from the middle of display.

adding @RaananW who might have a trick for it ?

1 Like

That’s interesting and might be an error in the way we define the rig cameras.

Any chance you can share a demo or recreate this in the playground?

Hi RaananW

Thanks for looking at this. Here is a PG https://playground.babylonjs.com/#TAFSN0#329

NOTE: in Pixel 2 (Daydream) this works fantastic. It is only an issue on the Lenovo Mirage Solo (Also Daydream) and as stated before Lenovo device is returning the width of only a single eye when looking at Window width.

ANOTHER NOTE: Same result using createDefaultVRExperience as creating the WebVRFreeCamera and custom trigger for VR. So it is not the method of getting into VR that is issue.

Hi RaananW

I just your post here Odd vr camera multivew rendering

Was wondering if your fix would address my issue at the same time?

Thanks

Hey,
sorry, no it doesn’t. This was an issue with the GUI elements. Yours is more fundamental.

I will check it on Monday and get back to you. Just had to finish a few things with XR

1 Like

I should have explained when I wrote this :slight_smile:

There was an issue for people using the 3d GUI elements when using a rig camera, but across all devices. the right left camera was rendering incorrectly due to a layer applied to it alone while stating it is full width. So it was “stretched” in a very weird way

I actually wonder now whether it DOES solve your case. But since you get the scene rendered correctly on a different deice, i doubt it to be the case.

if it doesn’t - it is probably a similar issue. I was trying to simulate that before, I will see when I test it today how I can get this to work.

Thank You

I am using CDN, would this fix be applied to that yet or should I link to an alpha version to test it?

Are you using 4.1 (preview) or latest?

https://cdn.babylonjs.com/babylon.js Babylon.js v4.0.3

Just switched to Babylon.js v4.1.0-beta.22 and giving it a go

1 Like

Issue remain in Babylon.js v4.1.0-beta.22

Could you try this demo with multiview on -

https://artyom17.github.io/webvr.info/mv/vr-presentation-new3.html

I have been checking multiview the entire day, and it seems that apart from a small issue with width of one of the textures (which shouldn’t be connected to your issue) it is implemented as described.

Would be great to know what your device does with this demo

This displays flawlessly. One thing about this Lenovo device is that the viewport width I get back from javascript is only for a single eye (half the width it should return). Not sure if other headsets are doing this. When I run on my Pixel 2 it works awesome. I thought that if the screen width returned is not greater than the height it might need to be doubled or something to this effect.