25 #ifndef WGEPOSTPROCESSORMERGEOP_H
26 #define WGEPOSTPROCESSORMERGEOP_H
31 #include <osg/Texture2D>
33 #include "../shaders/WGEShader.h"
34 #include "../shaders/WGEShaderCodeInjector.h"
35 #include "WGEPostprocessor.h"
46 typedef std::shared_ptr< WGEPostprocessorMergeOp >
SPtr;
51 typedef std::shared_ptr< const WGEPostprocessorMergeOp >
ConstSPtr;
72 osg::ref_ptr< osg::Texture2D > tex0,
73 osg::ref_ptr< osg::Texture2D > tex1 = osg::ref_ptr< osg::Texture2D >(),
74 osg::ref_ptr< osg::Texture2D > tex2 = osg::ref_ptr< osg::Texture2D >(),
75 osg::ref_ptr< osg::Texture2D > tex3 = osg::ref_ptr< osg::Texture2D >(),
76 osg::ref_ptr< osg::Texture2D > tex4 = osg::ref_ptr< osg::Texture2D >(),
77 osg::ref_ptr< osg::Texture2D > tex5 = osg::ref_ptr< osg::Texture2D >(),
78 osg::ref_ptr< osg::Texture2D > tex6 = osg::ref_ptr< osg::Texture2D >(),
79 osg::ref_ptr< osg::Texture2D > tex7 = osg::ref_ptr< osg::Texture2D >() );
MergeOp is a operator to merge multiple input texture.
std::shared_ptr< WGEPostprocessorMergeOp > SPtr
Convenience typedef for a std::shared_ptr< WGEPostprocessorMergeOp >.
std::shared_ptr< const WGEPostprocessorMergeOp > ConstSPtr
Convenience typedef for a std::shared_ptr< const WGEPostprocessorMergeOp >.
WGEShaderCodeInjector::SPtr m_codeInjector
This preprocessor handles insertion of the custom merge code.
WGEShader::RefPtr m_mergeOpShader
The shader used for merging.
void setGLSLMergeCode(std::string code)
Set the GLSL code inserted into the shader as merging operation.
virtual ~WGEPostprocessorMergeOp()
Destructor.
WGEPostprocessorMergeOp()
Default constructor.
virtual WGEPostprocessor::SPtr create(osg::ref_ptr< WGEOffscreenRenderNode > offscreen, const PostprocessorInput &gbuffer) const
Create instance.
This class encapsulates a G-Buffer.
The base class for all custom post-processors.
std::shared_ptr< WGEPostprocessor > SPtr
Convenience typedef for an osg::ref_ptr< WGEPostprocessor >.
std::shared_ptr< WGEShaderCodeInjector > SPtr
Shortcut for a shared_ptr.
osg::ref_ptr< WGEShader > RefPtr
Convenience typedef for an osg::ref_ptr.