Graphic bug with distortion visual effect shaders and HDR on Android Mali GPUs

Hi.
We found that there is a display bug while running our game on some devices powered by Mali (G76) GPUs.
The detail is, when there is a visual effect using distortion shader with HDR on, the whole screen go black except the effect visual effect display area, like this below(it’s kinda cool I think):


With HDR off or on some other devices, it is likes:

Many shaders with distortion effect have the same problem.

The bug happens on these device:
Redmi Note8 Pro, CPU: MediaTek G90T, GPU: Mali-G76 MP4
Huawei MediaPad M6, CPU: Huawei Kirin 980, GPU: Mali-G76 MP10

Every thing act normal on all Qualcomm’s Snapdragon CPU with Adreno GPU devices we have, so we think it’s a Mali only bug, especially on Mali-G76.

Our Unity version is 2018.4.14, and we tried 2018.4.23, the bug is still here, however the bug was gone with version 2019.4.1. But we can’t upgrade our main project to Unity 2019, because the editor crashed every time when I hit the play button after the upgrade, it’s another stroy.

Please check our test project uploaded.

6013715–648206–ShaderTest.7z (8.11 MB)

Hi,
Are you still having the issue?
A couple of follow-up questions: Is it the standard pipeline (not an early version of URP, or LWRP as it was called in 2018)? And is it GLES (3?) or Vulkan?

Further - the shape of the artifacts (rectangles) looks like a tile readback issue - certain tiles on the screen not getting updated because they haven’t changed (but unfortunately stuck on black rather than what they should be).
If this is so, a full-screen quad that changes little will force the update and fix the issue. Might be worth a try as you can’t update to a fixed version of Unity.

We found same issues on Mali, and it was problem of HDR too. We assume that if we applied expand color range using HDR then it shown broken render pipeline process because of its limitation of openGL driver.