#define MSP_GL_SEQUENCE_H_
#include <vector>
-#include "blend.h"
+#include "color.h"
#include "depthtest.h"
#include "frameformat.h"
#include "renderable.h"
namespace Msp {
namespace GL {
-class Clipping;
class Lighting;
class PostProcessor;
class RenderTarget;
Renderable for a View or effects such as ShadowMap or EnvironmentMap.
A Sequence consists of a number of steps. Each step is defined with a
-Renderable and a tag to render it with and may also have Lighting, Clipping,
-DepthTest and Blend states. Scenes can be used to further organize Renderables
-within a step.
+Renderable and a tag to render it with and may also have Lighting, DepthTest
+and Blend states. Scenes can be used to further organize Renderables within a
+step.
PostProcessors can be applied after all of the steps in the Sequence have been
processed. Framebuffer objects are automatically used to pass render results
const Lighting *lighting;
DepthTest depth_test;
StencilTest stencil_test;
- Blend blend;
- const Clipping *clipping;
Renderable *renderable;
public:
void set_lighting(const Lighting *);
void set_depth_test(const DepthTest &);
void set_stencil_test(const StencilTest &);
- void set_blend(const Blend &);
- void set_clipping(const Clipping *);
const Lighting *get_lighting() const { return lighting; }
const DepthTest &get_depth_test() const { return depth_test; }
const StencilTest &get_stencil_test() const { return stencil_test; }
- const Blend &get_blend() const { return blend; }
- const Clipping *get_clipping() const { return clipping; }
Renderable *get_renderable() const { return renderable; }
};
float clear_depth = 1.0f;
int clear_stencil = 0;
+ static Tag noclear_tag;
+
public:
Sequence() = default;
Sequence(unsigned, unsigned, const FrameFormat &);