OpenWalnut
1.4.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
src
core
graphicsEngine
postprocessing
WGEPostprocessorSSAO.h
1
//---------------------------------------------------------------------------
2
//
3
// Project: OpenWalnut ( http://www.openwalnut.org )
4
//
5
// Copyright 2009 OpenWalnut Community, BSV@Uni-Leipzig and CNCF@MPI-CBS
6
// For more information see http://www.openwalnut.org/copying
7
//
8
// This file is part of OpenWalnut.
9
//
10
// OpenWalnut is free software: you can redistribute it and/or modify
11
// it under the terms of the GNU Lesser General Public License as published by
12
// the Free Software Foundation, either version 3 of the License, or
13
// (at your option) any later version.
14
//
15
// OpenWalnut is distributed in the hope that it will be useful,
16
// but WITHOUT ANY WARRANTY; without even the implied warranty of
17
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
// GNU Lesser General Public License for more details.
19
//
20
// You should have received a copy of the GNU Lesser General Public License
21
// along with OpenWalnut. If not, see <http://www.gnu.org/licenses/>.
22
//
23
//---------------------------------------------------------------------------
24
25
#ifndef WGEPOSTPROCESSORSSAO_H
26
#define WGEPOSTPROCESSORSSAO_H
27
28
#include <boost/shared_ptr.hpp>
29
30
#include "WGEPostprocessor.h"
31
32
/**
33
* Naive SSAO implementation.
34
*/
35
class
WGEPostprocessorSSAO
:
public
WGEPostprocessor
36
{
37
public
:
38
/**
39
* Convenience typedef for a boost::shared_ptr< WGEPostprocessorSSAO >.
40
*/
41
typedef
boost::shared_ptr< WGEPostprocessorSSAO >
SPtr
;
42
43
/**
44
* Convenience typedef for a boost::shared_ptr< const WGEPostprocessorSSAO >.
45
*/
46
typedef
boost::shared_ptr< const WGEPostprocessorSSAO >
ConstSPtr
;
47
48
/**
49
* Default constructor.
50
*/
51
WGEPostprocessorSSAO
();
52
53
/**
54
* Destructor.
55
*/
56
virtual
~WGEPostprocessorSSAO
();
57
58
/**
59
* Create instance. Uses the protected constructor. Implement it if you derive from this class!
60
*
61
* \param offscreen use this offscreen node to add your texture pass'
62
* \param gbuffer the input textures you should use
63
*
64
* \return created postprocessor instance
65
*/
66
virtual
WGEPostprocessor::SPtr
create
( osg::ref_ptr< WGEOffscreenRenderNode > offscreen,
const
PostprocessorInput
& gbuffer )
const
;
67
protected
:
68
/**
69
* Constructor. Implement this constructor and build your processing pipeline in here
70
*
71
* \param offscreen use this offscreen node to add your texture pass'
72
* \param gbuffer the input textures you should use
73
*/
74
WGEPostprocessorSSAO
( osg::ref_ptr< WGEOffscreenRenderNode > offscreen,
const
PostprocessorInput
& gbuffer );
75
private
:
76
};
77
78
#endif // WGEPOSTPROCESSORSSAO_H
79
WGEPostprocessor::PostprocessorInput
This class encapsulates a G-Buffer.
Definition:
WGEPostprocessor.h:57
WGEPostprocessorSSAO::~WGEPostprocessorSSAO
virtual ~WGEPostprocessorSSAO()
Destructor.
Definition:
WGEPostprocessorSSAO.cpp:98
WGEPostprocessor::SPtr
boost::shared_ptr< WGEPostprocessor > SPtr
Convenience typedef for an osg::ref_ptr< WGEPostprocessor >.
Definition:
WGEPostprocessor.h:135
WGEPostprocessor
The base class for all custom post-processors.
Definition:
WGEPostprocessor.h:51
WGEPostprocessorSSAO::WGEPostprocessorSSAO
WGEPostprocessorSSAO()
Default constructor.
Definition:
WGEPostprocessorSSAO.cpp:33
WGEPostprocessorSSAO::SPtr
boost::shared_ptr< WGEPostprocessorSSAO > SPtr
Convenience typedef for a boost::shared_ptr< WGEPostprocessorSSAO >.
Definition:
WGEPostprocessorSSAO.h:41
WGEPostprocessorSSAO::create
virtual WGEPostprocessor::SPtr create(osg::ref_ptr< WGEOffscreenRenderNode > offscreen, const PostprocessorInput &gbuffer) const
Create instance.
Definition:
WGEPostprocessorSSAO.cpp:103
WGEPostprocessorSSAO::ConstSPtr
boost::shared_ptr< const WGEPostprocessorSSAO > ConstSPtr
Convenience typedef for a boost::shared_ptr< const WGEPostprocessorSSAO >.
Definition:
WGEPostprocessorSSAO.h:46
WGEPostprocessorSSAO
Naive SSAO implementation.
Definition:
WGEPostprocessorSSAO.h:35
Generated by
1.8.6