X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbloom.h;h=b96fddfc52abeed4c1ce60da16c3fb99f09d8deb;hb=08e19bc2b4eba572bc7699378cf55cd8772ac67e;hp=b763809aca7422feba10f52be9f402f4a97f5962;hpb=c216893af147042e40c389e2530e71277c343044;p=libs%2Fgl.git diff --git a/source/bloom.h b/source/bloom.h index b763809a..b96fddfc 100644 --- a/source/bloom.h +++ b/source/bloom.h @@ -1,10 +1,3 @@ -/* $Id$ - -This file is part of libmspgl -Copyright © 2009 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef MSP_GL_BLOOM_H_ #define MSP_GL_BLOOM_H_ @@ -12,6 +5,7 @@ Distributed under the LGPL #include "mesh.h" #include "postprocessor.h" #include "texture2d.h" +#include "texturing.h" #include "program.h" #include "programdata.h" @@ -29,17 +23,19 @@ a blur filter. class Bloom: public PostProcessor { private: - Framebuffer fbo; + Framebuffer fbo[2]; Texture2D tex[2]; Program blur_shader; + ProgramData blur_shdata_common; ProgramData blur_shdata[2]; Program combine_shader; ProgramData combine_shdata; - Mesh quad; + Texturing combine_texturing; + const Mesh &quad; public: Bloom(unsigned, unsigned); - + /** Sets the σ value of the gaussian blur. Values much larger than 4.0 are likely to cause artifacts. */ void set_radius(float);