]> git.tdb.fi Git - libs/gl.git/blobdiff - source/effects/bloom.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / effects / bloom.h
index 7315075b1f68c43553ba1de7f103834ef4cc947c..30e98f7ee75f95a52e8f3e0ef7764daf380f3876 100644 (file)
@@ -1,24 +1,21 @@
 #ifndef MSP_GL_BLOOM_H_
 #define MSP_GL_BLOOM_H_
 
-#include "framebuffer.h"
-#include "mesh.h"
 #include "postprocessor.h"
-#include "texture2d.h"
-#include "program.h"
 #include "programdata.h"
 #include "rendertarget.h"
 
 namespace Msp {
 namespace GL {
 
+class Program;
+
 /**
-The Bloom post-processing effect causes very bright areas of the image to bleed
-into surrounding pixels.  Commonly used together with HDR rendering.
+Bleeds very bright areas of the image into surrounding pixels to simulate
+optical imperfections in lenses.
 
-The technique used is to gaussian blur the image and then blend the result with
-the original image.  With suitable parameters, this effect may also be used as
-a blur filter.
+The input image is blurred with a gaussian kernel to simulate the Airy disc
+produced by a lens, then the blurred image is blended with the original.
 */
 class Bloom: public PostProcessor
 {
@@ -31,10 +28,8 @@ public:
                        Loader(Template &);
                };
 
-               float radius;
-               float strength;
-
-               Template();
+               float radius = 2.0f;
+               float strength = 0.2f;
 
                virtual Bloom *create(unsigned, unsigned) const;
        };
@@ -62,6 +57,8 @@ public:
        void set_strength(float);
 
        virtual void render(Renderer &, const Texture2D &, const Texture2D &);
+
+       virtual void set_debug_name(const std::string &);
 };
 
 } // namespace GL