OpenWalnut
1.4.0
|
Naive SSAO implementation. More...
#include <WGEPostprocessorSSAO.h>
Public Types | |
typedef boost::shared_ptr < WGEPostprocessorSSAO > | SPtr |
Convenience typedef for a boost::shared_ptr< WGEPostprocessorSSAO >. | |
typedef boost::shared_ptr < const WGEPostprocessorSSAO > | ConstSPtr |
Convenience typedef for a boost::shared_ptr< const WGEPostprocessorSSAO >. | |
![]() | |
typedef boost::shared_ptr < WGEPostprocessor > | SPtr |
Convenience typedef for an osg::ref_ptr< WGEPostprocessor >. | |
typedef boost::shared_ptr < const WGEPostprocessor > | ConstSPtr |
Convenience typedef for an osg::ref_ptr< const WGEPostprocessor >. | |
typedef std::vector < WGEPostprocessor::SPtr > | ProcessorList |
Type used for returning lists of postprocessor prototypes. |
Public Member Functions | |
WGEPostprocessorSSAO () | |
Default constructor. | |
virtual | ~WGEPostprocessorSSAO () |
Destructor. | |
virtual WGEPostprocessor::SPtr | create (osg::ref_ptr< WGEOffscreenRenderNode > offscreen, const PostprocessorInput &gbuffer) const |
Create instance. | |
![]() | |
WGEPostprocessor (std::string name, std::string description) | |
Create named prototype. | |
virtual | ~WGEPostprocessor () |
Destructor. | |
virtual WPropGroup | getProperties () const |
Returns the set of properties controlling the post-processing node. | |
virtual osg::ref_ptr < osg::Texture2D > | getOutput (size_t idx=0) const |
Returns the result texture. | |
const std::vector < osg::ref_ptr< osg::Texture2D > > & | getOutputList () const |
This processor can produce multiple outputs. | |
virtual osg::ref_ptr < osg::Texture2D > | getDepth () const |
Returns the new depth texture. | |
virtual const std::string | getName () const |
Gets the name of this postprocessor. | |
virtual const std::string | getDescription () const |
Gets the description for this postprocessor. | |
virtual bool | getFixedViewportSize () const |
When this returns true, the viewport size is fixed to the size of the target texture. | |
![]() | |
WPrototyped () | |
Default constructor. | |
virtual | ~WPrototyped () |
Destructor. | |
template<typename T > | |
bool | isA () |
Checks whether the actual prototype has the specified runtime type. |
Protected Member Functions | |
WGEPostprocessorSSAO (osg::ref_ptr< WGEOffscreenRenderNode > offscreen, const PostprocessorInput &gbuffer) | |
Constructor. |
Additional Inherited Members | |
![]() | |
static ProcessorList | getPostprocessors () |
Returns a list of all known postprocessor prototypes. | |
static void | initPostprocessors () |
Needs to be called prior to any "getPostprocessors" call. | |
static size_t | addPostprocessor (SPtr processor) |
Allows adding a postprocessor. | |
![]() | |
std::vector< osg::ref_ptr < osg::Texture2D > > | m_resultTextures |
The textures contain the result. | |
osg::ref_ptr< osg::Texture2D > | m_depthTexture |
The texture contains the new depth. | |
WPropGroup | m_properties |
All the properties of the post-processor. | |
WPropBool | m_effectOnly |
A flag denoting whether the effect should be combined with color or not. | |
WPropDouble | m_effectScale |
Scale the effect prior to blending it. | |
WGEShaderPreprocessor::SPtr | m_effectOnlyPreprocessor |
For convenience, this is a shader preprocessor controlled by m_effectOnly property. |
Naive SSAO implementation.
Definition at line 35 of file WGEPostprocessorSSAO.h.
typedef boost::shared_ptr< const WGEPostprocessorSSAO > WGEPostprocessorSSAO::ConstSPtr |
Convenience typedef for a boost::shared_ptr< const WGEPostprocessorSSAO >.
Definition at line 46 of file WGEPostprocessorSSAO.h.
typedef boost::shared_ptr< WGEPostprocessorSSAO > WGEPostprocessorSSAO::SPtr |
Convenience typedef for a boost::shared_ptr< WGEPostprocessorSSAO >.
Definition at line 41 of file WGEPostprocessorSSAO.h.
WGEPostprocessorSSAO::WGEPostprocessorSSAO | ( | ) |
Default constructor.
Definition at line 33 of file WGEPostprocessorSSAO.cpp.
Referenced by create().
|
virtual |
Destructor.
Definition at line 98 of file WGEPostprocessorSSAO.cpp.
|
protected |
Constructor.
Implement this constructor and build your processing pipeline in here
offscreen | use this offscreen node to add your texture pass' |
gbuffer | the input textures you should use |
Definition at line 39 of file WGEPostprocessorSSAO.cpp.
References WGEPostprocessor::PostprocessorInput::bind(), wge::genWhiteNoiseTexture(), WGEPostprocessor::m_effectOnlyPreprocessor, WGEPostprocessor::m_properties, and WGEPostprocessor::m_resultTextures.
|
virtual |
Create instance.
Uses the protected constructor. Implement it if you derive from this class!
offscreen | use this offscreen node to add your texture pass' |
gbuffer | the input textures you should use |
Implements WGEPostprocessor.
Definition at line 103 of file WGEPostprocessorSSAO.cpp.
References WGEPostprocessorSSAO().