*/
class Bloom: public PostProcessor
{
+public:
+ struct Template: public PostProcessor::Template
+ {
+ class Loader: public DataFile::DerivedObjectLoader<Template, PostProcessor::Template::Loader>
+ {
+ public:
+ Loader(Template &);
+ };
+
+ float radius;
+ float strength;
+
+ Template();
+
+ virtual Bloom *create(unsigned, unsigned) const;
+ };
+
private:
RenderTarget *target[2];
+ ProgramData common_shdata;
Program blur_shader;
- ProgramData blur_shdata_common;
ProgramData blur_shdata[2];
Program combine_shader;
- ProgramData combine_shdata;
Texturing combine_texturing;
const Mesh &quad;