Search Issue Tracker

By Design

Votes

0

Found in

2019.4

2020.3

2021.2

2021.2.15f1

2022.1

2022.2

Issue ID

1410327

Regression

No

[OpenGL] [Android] Incorrect depth texture display when rendered on Android with OpenGL

OpenGL

-

Reproduction steps:
1. Open the attached project "ToonWaterShader-master.zip"
2. Make sure the Graphics APIs is set to OpenGLES3
3. Build and run the project on an Android device
4. Observe the water shader

Expected result: Water is blue
Actual result: Water is white

Reproducible with: 2019.4.37f1, 2020.3.31f1, 2021.2.16f1, 2022.1.0b12, 2022.2.0a8

Reproducible with these devices:
VLNQA00001, Google Pixel 2 (Pixel 2), Android 11, CPU: Snapdragon 835 MSM8998, GPU: Adreno (TM) 540
VLNQA00225, Qualcomm null (SDM845 for arm64), Android 8.1.0, CPU: Snapdragon 845 SDM845, GPU: Adreno (TM) 630
VLNQA00288, Samsung Galaxy J7 (SM-J730F), Android 8.1.0, CPU: Exynos 7 Octa 7870, GPU: Mali-T830
VLNQA00316, Samsung Galaxy Note10 (SM-N970F), Android 9, CPU: Exynos 9 Series 9825, GPU: Mali-G76
VLNQA00176, Xiaomi Redmi 4 (Redmi 4), Android 6.0.1, CPU: Snapdragon 430 MSM8937, GPU: Adreno (TM) 505
----------, Huawei - (ELS-NX9), Android 10, CPU: NOT FOUND, GPU: Mali-G76
VLNQA00264, Samsung Galaxy S10+ (SM-G975F), Android 10, CPU: NOT FOUND, GPU: Mali-G76

Notes:
-The issue is not reproducible when the Graphics APIs is set to Vulkan
-The issue is not reproducible in the Editor

  1. Resolution Note (2022.2.X):

    ToonWater.shader isn't dealing with platform differences correctly. https://docs.unity3d.com/Manual/SL-PlatformDifferences.html
    OpenGL clip space on each axis is [-1;1] while other graphics apis have [0; 1] on the z axis, this causes the issue with depth calculations in this shader

Add comment

Log in to post comment