X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Feffect.h;h=bc9e19ec818f2a392889866bdf36428c7c00024b;hp=c55aebf95a5c0363e459a4c010fa79c89ad018e0;hb=860aec7bfaabbad139d27dd7f4738984276e6676;hpb=917db342def84f9ce925df3cb27043b92ef2bfda diff --git a/source/effect.h b/source/effect.h index c55aebf9..bc9e19ec 100644 --- a/source/effect.h +++ b/source/effect.h @@ -2,11 +2,14 @@ #define MSP_GL_EFFECT_H_ #include +#include #include "renderable.h" namespace Msp { namespace GL { +class Sampler; + /** Effects are used to wrap other renderables and give them additional visual properties. An Effect's render method should set up the necessary state, call @@ -18,6 +21,10 @@ protected: Renderable &renderable; std::set enabled_passes; +private: + static WeakPtr linear_sampler; + +protected: Effect(Renderable &); public: virtual ~Effect() { } @@ -30,6 +37,9 @@ public: virtual void setup_frame(Renderer &r) { renderable.setup_frame(r); } virtual void finish_frame() { renderable.finish_frame(); } + +protected: + static RefPtr get_linear_sampler(); }; } // namespace GL