public:
BlurEffect();
+ virtual bool needs_srgb_primaries() const { return false; }
+
virtual std::string output_fragment_shader() {
assert(false);
}
- virtual void set_uniforms(GLuint glsl_program_num, const std::string &prefix, unsigned *sampler_num) {
+ virtual void set_gl_state(GLuint glsl_program_num, const std::string &prefix, unsigned *sampler_num) {
assert(false);
}
virtual bool needs_texture_bounce() const { return true; }
virtual bool needs_mipmaps() const { return true; }
- virtual void add_self_to_effect_chain(EffectChain *chain, Effect *input);
+ virtual void add_self_to_effect_chain(EffectChain *chain, const std::vector<Effect *> &input);
virtual bool set_float(const std::string &key, float value);
private:
SingleBlurPassEffect();
std::string output_fragment_shader();
+ virtual bool needs_srgb_primaries() const { return false; }
virtual bool needs_texture_bounce() const { return true; }
virtual bool needs_mipmaps() const { return true; }
- void set_uniforms(GLuint glsl_program_num, const std::string &prefix, unsigned *sampler_num);
+ void set_gl_state(GLuint glsl_program_num, const std::string &prefix, unsigned *sampler_num);
+ void clear_gl_state();
enum Direction { HORIZONTAL = 0, VERTICAL = 1 };