]> git.sesse.net Git - movit/blobdiff - gamma_compression_effect.frag
Make gamma polynomial constants into an array; slightly fewer uniforms to set, and...
[movit] / gamma_compression_effect.frag
index 2d84f326dd054a23908b3ef1ecdcd5e71f0bb2f1..a72a878c84720c1d0bc53274e429a4d7af0659ca 100644 (file)
@@ -2,7 +2,7 @@
 
 // Implicit uniforms:
 // uniform float PREFIX(linear_scale);
-// uniform float PREFIX(c0), PREFIX(c1), PREFIX(c2), PREFIX(c3), PREFIX(c4);
+// uniform float PREFIX(c)[5];
 // uniform float PREFIX(beta);
 
 vec4 FUNCNAME(vec2 tc) {
@@ -16,7 +16,7 @@ vec4 FUNCNAME(vec2 tc) {
 
        // Fourth-order polynomial approximation to pow(). See the .cpp file for details.
        vec3 s = sqrt(x.rgb);
-       vec3 b = PREFIX(c0) + (PREFIX(c1) + (PREFIX(c2) + (PREFIX(c3) + PREFIX(c4) * s) * s) * s) * s;
+       vec3 b = PREFIX(c)[0] + (PREFIX(c)[1] + (PREFIX(c)[2] + (PREFIX(c)[3] + PREFIX(c)[4] * s) * s) * s) * s;
 
        vec3 f = vec3(greaterThan(x.rgb, vec3(PREFIX(beta))));
        x = vec4(mix(a, b, f), x.a);