X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=lift_gamma_gain_effect.h;h=36f6a77370461c2c66b8d6b5e60b11e298c21df4;hp=533a7b2f22aee450c33eef9a41f4a42d657ce7a0;hb=c7e57f5c9fbc1b58d450557cfbffe60480bdd6b7;hpb=a93b0c94f68bf897adfdca95b292494497fa4f7f diff --git a/lift_gamma_gain_effect.h b/lift_gamma_gain_effect.h index 533a7b2..36f6a77 100644 --- a/lift_gamma_gain_effect.h +++ b/lift_gamma_gain_effect.h @@ -16,12 +16,16 @@ // rest of the curve relatively little. Thus, we actually convert to gamma 2.2 // before lift, and then back again afterwards. (Gain and gamma are, // up to constants, commutative with the de-gamma operation.) +// +// Also, gamma is a case where we would not want premultiplied alpha. +// Thus, we have to divide away alpha first, and then re-multiply it back later. #include "effect.h" class LiftGammaGainEffect : public Effect { public: LiftGammaGainEffect(); + virtual std::string effect_type_id() const { return "LiftGammaGainEffect"; } std::string output_fragment_shader(); void set_gl_state(GLuint glsl_program_num, const std::string &prefix, unsigned *sampler_num);