X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=glow_effect.h;h=3453c997d82ee2938b987089774b2a5677309bde;hp=c0ac9ce5ee4163516ee2806557196447786099a7;hb=c208d2719d48f7676d73b6f406f2417ec147acae;hpb=b10c546f579c7ccb5939161e61a71cd18a3f9bbd diff --git a/glow_effect.h b/glow_effect.h index c0ac9ce..3453c99 100644 --- a/glow_effect.h +++ b/glow_effect.h @@ -3,15 +3,18 @@ // Glow: Cut out the highlights of the image (everything above a certain threshold), // blur them, and overlay them onto the original image. -// -// FIXME: This might be broken after MixEffect started working in premultiplied alpha. -// We need to think about how this is going to work, and then add a test. + +#include +#include +#include #include "effect.h" class BlurEffect; -class MixEffect; +class EffectChain; class HighlightCutoffEffect; +class MixEffect; +class Node; class GlowEffect : public Effect { public: @@ -45,6 +48,8 @@ public: HighlightCutoffEffect(); virtual std::string effect_type_id() const { return "HighlightCutoffEffect"; } std::string output_fragment_shader(); + + virtual AlphaHandling alpha_handling() const { return INPUT_PREMULTIPLIED_ALPHA_KEEP_BLANK; } private: float cutoff;