Uniforms bug on most smartphones

Hi there!

We’ve been experiencing a challenge for some weeks with some mid-poly 3D models displayed on a 3D scene on some smartphones.
The scene doesn’t load or load without displaying correctly the 3D model.

Here are the log I have on my iPhone W, it seems to be a problem with Uniforms:

This log is for this scene: Chanel Watch

There is not any animation on my model btw!


CC @Deltakosh as you wanted to see the exact error we get on iphone! :wink:

Pinging @sebavan to see if he can get more info with his mac :wink:

Unfortunately, it is impossible to troubleshoot from the full example. Could you create a smaller repro ? I think only the watch is necessary. It looks like the effect does not compile for some reason and we can not see the error in the full app.

Salut les gars!

We made a lot of tests these last days and we didn’t manage to find what is the specific change which make the scene bug on iphone.

Here is a playground with just one model and a fog effect. This example will make an iPhone 6 freeze and refresh the page: https://www.babylonjs-playground.com/#0108NG#33

Here is the error message we manage to have on iPhone.
With WebGL1:

With WebGL2:

Is WebGL 2 working on iPhone ??? and also your watch example might be just to big in memory to be supported.

The weird part for me is MSAA failed to enable meaning you use some render target somewhere I am not seeing in the playground.

You can force WebGL2 in your iphone parameter in order to test it!

I also think the bug might comes from iPhone performance or memory issue. But the watch is not that big so this is weird iPhone can’t handle it.

Sorry, to be more precise the screenshots with the errors don’t come from the playground but a Naker scene with other stuff. On the playground we didn’t manage to have any errors to show. The page just freezes and refresh with the message on the iPhone “This web page has been reloaded due to an issue”.

My take on webgl2 is that it is not fully ready so far. About the iphone 6 issue i would try with smaller 1024 * 1024 textures just to see.