public:
BlurEffect();
+ virtual std::string effect_type_id() const { return "BlurEffect"; }
+
// We want this for the same reason as ResizeEffect; we could end up scaling
// down quite a lot.
virtual bool needs_texture_bounce() const { return true; }
assert(false);
}
- virtual void add_self_to_effect_chain(EffectChain *chain, const std::vector<Effect *> &input);
+ virtual void rewrite_graph(EffectChain *graph, Node *self);
virtual bool set_float(const std::string &key, float value);
private:
class SingleBlurPassEffect : public Effect {
public:
SingleBlurPassEffect();
+ virtual std::string effect_type_id() const { return "SingleBlurPassEffect"; }
+
std::string output_fragment_shader();
virtual bool needs_texture_bounce() const { return true; }