precision mediump float; uniform sampler2D Texture; uniform float Transparency; uniform vec4 LightDirection; varying vec2 texCoord; varying vec3 fragNormal; varying vec3 fragColor; void main() { vec4 color = vec4((fragColor.rgb * texture2D(Texture, texCoord).rgb), 1.0); float intensity = clamp(dot(normalize(LightDirection.xyz), -normalize(fragNormal)), 0, 1); gl_FragColor = vec4(color.rgb * intensity + vec3(0.2, 0.2, 0.2), color.a * Transparency); //gl_FragColor = vec4((fragNormal.rgb + vec3(1.0, 1.0, 1.0))*0.5, 1.0); }