Custom Shader is Pink Only Samsung
I've written a custom shader for controlling color and offset variables, shader works fine on Desktop, and Android Devices except Samsung.
ZTE Devices, LG Devices, General Mobile Devices are fine.
Tested on Samsung S3, S3mini, Note 2 and Background is completely pink.
Shader is like this. Shader "Sample/ColorShader" { Properties { _MainTex ("Texture", 2D) = "white" {} _Color ("Tint Color", Color) = (1, 1, 1, 1) } SubShader { Tags { "Queue" = "Transparent" "RenderType" = "Opaque" } Blend SrcAlpha OneMinusSrcAlpha
Pass
{
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct input
{
float4 pos : POSITION;
float2 uv : TEXCOORD0;
};
struct output
{
float4 pos : SV_POSITION;
float2 uv : TEXCOORD0;
};
uniform sampler2D _MainTex;
uniform float4 _MainTex_ST;
uniform fixed4 _Color;
output vert (input i)
{
output o;
o.pos = mul(UNITY_MATRIX_MVP, i.pos);
o.uv = TRANSFORM_TEX(i.uv, _MainTex);
return o;
}
fixed4 frag (output i) : COLOR
{
fixed4 col = tex2D(_MainTex, i.uv);
col *= _Color;
return col;
}
ENDCG
}
}
}
Any Suggestions ?
Answer by tanoshimi · Aug 20, 2016 at 01:55 PM
Those Samsungs use Mali chips, which are notorious for their incompatibility.... commonly caused by precision issues in the fragment program, but I don't see any particular issues in your example that would cause that. Did you take a look at the logcat output?
In the absence of any further information from logcat, my only two suggestions that you might want to try are:
Use UNITY_INITIALIZE_OUTPUT to fully initialise the value of your output o structure in the vert shader.
Try renaming your variables so that they do not begin with an underscore, as mentioned here.
Answer by OsmiousH · Aug 20, 2016 at 11:27 AM
That shader doesn't support That device's render capabilities
to fix this write a subshader esspecially for that device's render capabilities and tada it works
Your answer
Follow this Question
Related Questions
GPU does not support separate MRT blend modes! 0 Answers
PİNG WATER !! HELP MEEEEEEEEE !!!!! 0 Answers
Shader works in editor but not in Android - Pass 'meta' has no vertex shader 1 Answer
Black screen on Android build 14 Answers
LWRP lowest android version 0 Answers