12#ifndef COMPOSITIONSTAGE_H_6014714286
13#define COMPOSITIONSTAGE_H_6014714286
45 const std::unique_ptr< Details > pimpl;
142 ,
bool isFirstInvocation
143 ,
bool isFirstSource ) = 0;
Defines Carna::base::RenderStage.
Defines logic for rendering frames from given scenes.
Defines the inner node of a scene graph. Implements a spatial scene element that is allowed to have c...
Base abstract class of each rendering stage. Refer to the documentation of the rendering process.
Invokes the rendering stages of the frame renderer successively.
Defines a rendering viewport. The viewport is a property of the current OpenGL context.
Defines rendering stage that combines two other renderings either by putting them next to each other ...
virtual void reshape(base::FrameRenderer &fr, unsigned int width, unsigned int height) override
Orders this stage to reshape its buffers according to the specified dimensions.
virtual void renderPass(const base::math::Matrix4f &viewTransform, base::RenderTask &rt, const base::Viewport &vp) override
Invokes renderPass(const base::math::Matrix4f&,base::RenderTask&,const base::Viewport&,...
CompositionMode
Defines how two renderings are to be combined.
virtual ~CompositionStage()
Deletes.
void setCompositionSwap(bool)
Swaps the two renderings obtained through renderPass(const base::math::Matrix4f&,base::RenderTask&,...
bool isCompositionSwapped() const
Tells whether the two renderings obtained through renderPass(const base::math::Matrix4f&,...
CompositionStage(CompositionMode compositionMode)
Instantiates.
virtual void prepareFrame(base::Node &root) override
Called once before each frame.
void setCompositionMode(CompositionMode compositionMode)
Sets how the two renderings obtained through renderPass(const base::math::Matrix4f&,...
virtual void renderPass(const base::math::Matrix4f &viewTransform, base::RenderTask &rt, const base::Viewport &vp, bool isFirstInvocation, bool isFirstSource)=0
Renders one of the two renderings that are to be combined per invocation.
CompositionMode compositionMode() const
Tells how the two renderings obtained through renderPass(const base::math::Matrix4f&,...
Eigen::Matrix< float, 4, 4, Eigen::ColMajor > Matrix4f
Defines matrix.