]> git.sesse.net Git - movit/blob - gamma_compression_effect.cpp
Move calculation of normalized position for the vignette into the vertex shader.
[movit] / gamma_compression_effect.cpp
1 #include <assert.h>
2
3 #include "gamma_compression_effect.h"
4 #include "util.h"
5
6 GammaCompressionEffect::GammaCompressionEffect()
7         : destination_curve(GAMMA_LINEAR)
8 {
9         register_int("destination_curve", (int *)&destination_curve);
10 }
11
12 std::string GammaCompressionEffect::output_fragment_shader()
13 {
14         switch (destination_curve) {
15         case GAMMA_LINEAR:
16                 return read_file("identity.frag");
17         case GAMMA_sRGB:
18                 return read_file("gamma_compression_effect_srgb.frag");
19         case GAMMA_REC_709:  // and GAMMA_REC_601
20                 return read_file("gamma_compression_effect_rec709.frag");
21         default:
22                 assert(false);
23         }
24 }