X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fpipeline.h;fp=source%2Fpipeline.h;h=9272f5875add3d1605fc6cd33657997552d95fd9;hb=7791ca3eac17e355d1de508b1730dc854ed7712d;hp=e3f95994defff957a831987716901620aab94ad1;hpb=a525c632144d3dcefe373916bdde789727d2230d;p=libs%2Fgl.git diff --git a/source/pipeline.h b/source/pipeline.h index e3f95994..9272f587 100644 --- a/source/pipeline.h +++ b/source/pipeline.h @@ -20,21 +20,12 @@ class Lighting; class PostProcessor; /** -Encapsulates all of the information used to produce a complete image in the -framebuffer. This is the highest level rendering class. +Top-level content class. Typically a Pipeline is used as the content +Renderable for a View or effects such as ShadowMap or EnvironmentMap. A Pipeline contains a sequence of passes. Each pass has a Renderable along with Lighting, Clipping, DepthTest and Blend states. Scenes can be used to -organize Renderables within a pass. A Camera can be specified for the entire -Pipeline. - -A Pipeline is also a Renderable itself. It will only respond to the default -pass. The Renderables within the Pipeline will be invoked with whatever tags -were specified when adding them. - -A Pipeline's render method should normally be called without a Renderer; it -will create one itself, using the camera specified for the Pipeline. If a -Renderer is passed, its camera will be used instead. +organize Renderables within a pass. PostProcessors can be applied after all of the passes in the Pipeline have been rendered. Framebuffer objects are automatically used to pass render results to @@ -91,7 +82,6 @@ private: unsigned samples; RenderTarget *target[2]; RenderTarget *target_ms; - mutable bool in_frame; public: Pipeline(unsigned, unsigned, bool = false); @@ -99,9 +89,9 @@ public: void set_hdr(bool); void set_multisample(unsigned); - void set_camera(const Camera *); // Deprecated + void set_camera(const Camera *); Pass &add_pass(const Tag &tag); void add_renderable(const Renderable &); void add_renderable_for_pass(const Renderable &, const Tag &);