Rev 1835 | Blame | Compare with Previous | Last modification | View Log | RSS feed
#ifdef GL_ESprecision mediump float;#endifuniform sampler2D uDiffuse;uniform sampler2D uNormalMap;uniform float uAlpha;uniform vec4 uColor;uniform vec4 uFogColor;varying vec4 vColor;varying vec2 vTexCoord;varying vec3 vLightDir;void main(){vec4 normal = texture2D(uNormalMap, vTexCoord.xy);normal = (normal - 0.5) * 2.0;float lighting = dot(normalize(normal.xyz), normalize(-vLightDir));vec4 result = texture2D(uDiffuse, vTexCoord.xy) * uColor * vColor;result.rgb = result.rgb * (1.0-uFogColor.a) + uFogColor.rgb * uFogColor.a;float l = min(lighting*lighting*5.0, 1.0);result.rgb = (result.rgb * 0.2) + (result.rgb * 0.6 * l) + (0.2 * l);result.w *= uAlpha;gl_FragColor = result;}