Rendering bug on iPhone XR and XS

Hi,
We’ve just noticed a bug with rendering rough materials on the iPhone XR/XS where objects shaded with a material with 0 glossiness and metalness disabled still reflected the cubemap. This is making our hero models look rather unappealing on these devices.
I’ve attached a screenshot of a basic test scene where you can see a comparison between the rendered image on a PC and an iPhone XS.

We’ve tested on a lot of various devices and have been pleased with the vast majority it just seems to be these two phones that we’ve noticed this on.

Thanks,
Doug

Have you pre-filtered your cube map?

Or maybe this explains what is happening?

2 Likes

Short term fix might be to use a spherical map on materials rather than a cube map?

Thanks so much wturber, you were right its the same issue as discussed in the github thread you linked. I managed to fix it with the code:

 if (this.app.graphicsDevice.unmaskedRenderer === 'Apple A12 GPU' || this.app.graphicsDevice.unmaskedRenderer === 'Apple A12X GPU') {
            this.app.graphicsDevice.useTexCubeLod = false;
    }

Hopefully Apple fix the issue soon.

1 Like

Cool. Glad if that helped.

So, does that result in the cube map getting rendered correctly, or does the cube map not get rendered at all?

Hi @moka what is the status on that?
We tried to use the method from @DouglasAllenDev however it fails.

I believe we are encountering the error described here:
https://github.com/playcanvas/engine/issues/1464

There are still problems with this solution, such as when there is a skybox in the scene, and the system will make a serious error when there is a texture in the diffuse

Have you found a stable fix yet?
Thanks a lot

I used pre filtered cube maps and also encountered page rendering issues caused by Apple XR XS. Do you know how to solve this

Could you please open a ticket here with a repro project if possible, that would allow us investigate