Files
oak-editor/effects/posterize.frag
T
2018-11-15 22:56:26 +11:00

19 lines
411 B
GLSL

#version 110
uniform sampler2D sceneTex; // 0
uniform float gamma_cent; // 0.6
uniform float numColors; // 8.0
varying vec2 vTexCoord;
void main() {
float gamma = gamma_cent*0.01;
vec4 color = texture2D(sceneTex, vTexCoord);
vec3 c = color.rgb;
c = pow(c, vec3(gamma, gamma, gamma));
c = c * numColors;
c = floor(c);
c = c / numColors;
c = pow(c, vec3(1.0/gamma));
gl_FragColor = vec4(c, color.a);
}