12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #ifdef GL_ES
- precision highp float;
- #endif
- #if defined(ALPHATEST) || defined(BASIC_RENDER) || defined(OPACITY)
- varying vec2 vUV;
- #endif
- #if defined(ALPHATEST) || defined(BASIC_RENDER)
- uniform sampler2D diffuseSampler;
- #endif
- #if defined(OPACITY)
- uniform sampler2D opacitySampler;
- uniform float opacityLevel;
- #endif
- void main(void)
- {
- #if defined(ALPHATEST) || defined(BASIC_RENDER)
- vec4 diffuseColor = texture2D(diffuseSampler, vUV);
- #endif
- #ifdef ALPHATEST
- if (diffuseColor.a < 0.4)
- discard;
- #endif
- #ifdef OPACITY
- vec4 opacityColor = texture2D(opacitySampler, vUV);
- float alpha = 1.0;
- #ifdef OPACITYRGB
- opacityColor.rgb = opacityColor.rgb * vec3(0.3, 0.59, 0.11);
- alpha *= (opacityColor.x + opacityColor.y + opacityColor.z) * opacityLevel;
- #else
- alpha *= opacityColor.a * opacityLevel;
- #endif
- #if defined(BASIC_RENDER)
- gl_FragColor = vec4(diffuseColor.rgb, alpha);
- #else
- gl_FragColor = vec4(0.0, 0.0, 0.0, alpha);
- #endif
- gl_FragColor.a = alpha;
- #else
- #ifndef BASIC_RENDER
- gl_FragColor = vec4(0.0, 0.0, 0.0, 1.0);
- #else
- gl_FragColor = diffuseColor;
- #endif
- #endif
- }
|