Blacks are always drawn as dark gray on iOS (ARFoundation)

Even with unlit shaders, objects that are meant to display flat black are showing up as a dark gray across all the iOS devices I’ve tested (from iPhone 6s to 11). Very strange.

This is an ARFoundation + URP based app, where the AR setup isn’t done until the second scene. In the first scene, the black appears as it should. Once we move into AR however, it seems impossible for me to achieve a true black on iOS. Android is getting actual black… so it seems to be an iOS specific thing.

Again, this is true even with unlit shaders, so I’m not sure if the “Light Estimation” (Ambient Intensity/Ambient Color) enabled on the ARCameraManager would have any effect there.

At some point I changed from Linear to Gamma space since it appeared to at least give me a slightly darker gray. As for the Color Gamut settings, there are two options that I don’t believe I ever touched: 1. sRGB 2. DisplayP3

You can see here that the app is achieving darker blacks in the Camera texture background (left) but not in the rendered 3D object (right).

Any tips?

This problem persists and I’ve realized it’s a bit more nuanced… e.g. black UI Canvas elements in both Overlay and WorldSpace modes do render black correctly.

Started a new thread within the Graphics forum .

Is anyone using URP + ARFoundation and NOT having this issue when targeting iOS?

Either I have some setting incorrect, or perhaps everyone making an ARFoundation app is hitting this same problem… I wish I new which it was. If this is simply unfixable on my end, I’d just give up (wringing my hands at the Gods of Bugs)…

=== EDIT ==========
Looks like in URP 7.5.2, blacks are correct as well… though a lot of other things will need feedling to get other things back to where I want them (e.g. the Bloom post processing filter is much more intense with the same properties). But it looks like 2020 upgrade isn’t necessary.

While I never found a fix for this in any of the 2019 releases, this combo of ARFoundation + URP + post-processing on iOS appears to be able to render black materials on normal (non-canvas UI elements) when built from a 2020 project.

A nice benefit of upgrading to 2020.2 from the 2019 LTS series… hopefully I don’t regret it for other reasons :slight_smile:

Hi Jgmakes, thank you for your message and comments.
I’m experiencing the same thing as you are now. I have a transparent shadow that renders transparent black on 2020.3.12f - no problem and, but updating to the latest LTS it is now doing what you are describing. Reverting to version 12 solves it. I wonder what it is? I’m staying at 12 for now.