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
#ifndef Q_MOC_RUN
29
#include <boost/shared_ptr.hpp>
30
#endif
31
32
#include "WGEPostprocessor.h"
33
34
/**
35
* Naive SSAO implementation.
36
*/
37
class
WGEPostprocessorSSAO
:
public
WGEPostprocessor
38
{
39
public
:
40
/**
41
* Convenience typedef for a boost::shared_ptr< WGEPostprocessorSSAO >.
42
*/
43
typedef
boost::shared_ptr< WGEPostprocessorSSAO >
SPtr
;
44
45
/**
46
* Convenience typedef for a boost::shared_ptr< const WGEPostprocessorSSAO >.
47
*/
48
typedef
boost::shared_ptr< const WGEPostprocessorSSAO >
ConstSPtr
;
49
50
/**
51
* Default constructor.
52
*/
53
WGEPostprocessorSSAO
();
54
55
/**
56
* Destructor.
57
*/
58
virtual
~WGEPostprocessorSSAO
();
59
60
/**
61
* Create instance. Uses the protected constructor. Implement it if you derive from this class!
62
*
63
* \param offscreen use this offscreen node to add your texture pass'
64
* \param gbuffer the input textures you should use
65
*
66
* \return created postprocessor instance
67
*/
68
virtual
WGEPostprocessor::SPtr
create
( osg::ref_ptr< WGEOffscreenRenderNode > offscreen,
const
PostprocessorInput
& gbuffer )
const
;
69
protected
:
70
/**
71
* Constructor. Implement this constructor and build your processing pipeline in here
72
*
73
* \param offscreen use this offscreen node to add your texture pass'
74
* \param gbuffer the input textures you should use
75
*/
76
WGEPostprocessorSSAO
( osg::ref_ptr< WGEOffscreenRenderNode > offscreen,
const
PostprocessorInput
& gbuffer );
77
private
:
78
};
79
80
#endif // WGEPOSTPROCESSORSSAO_H
81
WGEPostprocessor::PostprocessorInput
This class encapsulates a G-Buffer.
Definition:
WGEPostprocessor.h:59
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:137
WGEPostprocessor
The base class for all custom post-processors.
Definition:
WGEPostprocessor.h:53
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:43
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:48
WGEPostprocessorSSAO
Naive SSAO implementation.
Definition:
WGEPostprocessorSSAO.h:37
Generated by
1.8.9.1