23 lines
495 B
GLSL
23 lines
495 B
GLSL
#ifdef GL_ES
|
|
precision mediump float;
|
|
precision mediump int;
|
|
#endif
|
|
|
|
uniform sampler2D texture;
|
|
|
|
varying vec4 vertColor;
|
|
varying vec4 vertTexCoord;
|
|
|
|
uniform float brightPassThreshold;
|
|
|
|
void main() {
|
|
vec3 luminanceVector = vec3(0.2125, 0.7154, 0.0721);
|
|
vec4 c = texture2D(texture, vertTexCoord.st) * vertColor;
|
|
|
|
float luminance = dot(luminanceVector, c.xyz);
|
|
luminance = max(0.0, luminance - brightPassThreshold);
|
|
c.xyz *= sign(luminance);
|
|
c.a = 1.0;
|
|
|
|
gl_FragColor = c;
|
|
} |