2012-12-04 03:05:34 +00:00
|
|
|
uniform sampler2D u_DiffuseMap;
|
|
|
|
|
2017-07-13 19:03:10 +00:00
|
|
|
uniform int u_AlphaTest;
|
|
|
|
|
2012-12-04 03:05:34 +00:00
|
|
|
varying vec2 var_DiffuseTex;
|
|
|
|
|
|
|
|
varying vec4 var_Color;
|
|
|
|
|
|
|
|
|
|
|
|
void main()
|
|
|
|
{
|
|
|
|
vec4 color = texture2D(u_DiffuseMap, var_DiffuseTex);
|
2017-07-13 19:03:10 +00:00
|
|
|
|
|
|
|
float alpha = color.a * var_Color.a;
|
|
|
|
if (u_AlphaTest == 1)
|
|
|
|
{
|
|
|
|
if (alpha == 0.0)
|
|
|
|
discard;
|
|
|
|
}
|
|
|
|
else if (u_AlphaTest == 2)
|
|
|
|
{
|
|
|
|
if (alpha >= 0.5)
|
|
|
|
discard;
|
|
|
|
}
|
|
|
|
else if (u_AlphaTest == 3)
|
|
|
|
{
|
|
|
|
if (alpha < 0.5)
|
|
|
|
discard;
|
|
|
|
}
|
|
|
|
|
|
|
|
gl_FragColor.rgb = color.rgb * var_Color.rgb;
|
|
|
|
gl_FragColor.a = alpha;
|
2012-12-04 03:05:34 +00:00
|
|
|
}
|