Search Issue Tracker
Won't Fix
Votes
0
Found in
2019.1.4f1
Issue ID
1166128
Regression
No
[Android][GLES] Shader is not compling on Samsung S3 devices when application is ran on Adreno 225
To reproduce:
1. Open attached project "ShaderFail.2019.1.4f1.zip"
2. Build for Android on an eligible device
3. Observe the build on the device
result: shader is not compiled properly due to errors
Reproduced in: 2018.4.3f1 2019.1.9f1, 2019.2.0b8, 2019.3.0a4
Note1: 2018.4 build produces black screen, 2017.4 is unable to build the project due to errors
Note2: could not check on latest 2019.3 as ever since 2019.3.0a5, the minimum API level is 19
Note3: not reproducible on Vulkan (on devices that supports it)
Not reproduced on devices:
VLNQA00016, Samsung Galaxy S4 Mini (GT-I9195), Android 4.4.2, CPU: Snapdragon S4 Plus MSM8960, GPU: Adreno (TM) 305
VLNQA00114, Samsung Galaxy S3 Mini (GT-I8190), Android 4.1.2, CPU: NovaThor U8500, GPU: Mali-400 MP
VLNQA00111, Samsung Galaxy J5(2016) (SM-J510FN), Android 7.1.1, CPU: Snapdragon 410 MSM8916, GPU: Adreno (TM) 306
VLNQA00255, Samsung Galaxy Note3 Neo (SM-N7505), Android 4.4.2, CPU: Exynos 5 Hexa 5260, GPU: Mali-T624
VLNQA00230, Oneplus OnePlus6T (ONEPLUS A6013), Android 9, CPU: Snapdragon 845 SDM845, GPU: Adreno (TM) 630
VLNQA00270, Samsung Galaxy S10e (SM-G970F), Android 9, CPU: Exynos 9 9820, GPU: Mali-G76
VLNQA00031, Lge Nexus 5 (Nexus 5), Android 6.0.1, CPU: Snapdragon 800 MSM8974, GPU: Adreno (TM) 330
VLNQA00035, Motorola DROID MAXX 2 (XT1021), Android 4.4.4, CPU: NOT FOUND, GPU: Adreno (TM) 305
Reprodiced on devices:
VLNQA00020, Samsung Galaxy S3 (SGH-T999), Android 4.3, CPU: Snapdragon S4 Plus MSM8960, GPU: Adreno (TM) 225
VLNQA00055, Samsung Galaxy S3 (SC-06D), Android 4.1.2, CPU: Snapdragon S4 Plus MSM8960, GPU: Adreno (TM) 225
VLNQA00040, Htc ONE S (HTC One S), Android 4.1.1, CPU: Snapdragon S4 MSM8290, GPU: Adreno (TM) 225
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Joint Physics result in unexpected behaviors when used for articulated vehicles like buses or trucks
- Standalone Player crashes with "TDerived GetOrLoad<TDerived>() where TDerived : T" when IL2CPP Code generation is set to "Faster (smaller) Builds"
- IndexOutOfRangeException and InvalidOperationException when logging XML string
- Script missing in "Assets/Settings/Mobile_Renderer/GlobalVolumeFeature" of "com.unity.template.urp-blank" template
- “Font Asset Creator - Error Code [Invalid_File_Structure]…“ error is logged when generating Font Assets from fonts which worked with TMP Font Asset Creator
Resolution Note (2019.3.X):
The shader in question fails to compile due to two issues:
- It uses unsigned integer maths that is not natively supported by OpenGL ES 2 GLSL
- It uses texture sampling functions with explicit derivatives, which require and extension on OpenGL ES 2 GLSL to work
Workaround for the first issue: don't use integer math. The shader can be easily converted to using floating-point calculations (e.g. 'float2 uv0 = float2(index.r % 4, index.r / 4) / 4.0;' -> 'float2 uv0 = float2(index.r - floor(index.r / 4.0) * 4.0, index.r / 4.0) / 4.0;').
There is no workaround for the second issue, the device in question doesn't support the required extension, so this behaviour is by design.