API Documentation
MAIN PAGE
NAMESPACES
CLASSES
Documentation
Headers
NilkinsAstraeus
Graphics
Effects
Ssao
SsaoEffect.h
1
// SsaoEffect.h
3
//
5
6
namespace
nkAstraeus
7
{
17
class
SsaoEffect
final :
public
Effect
18
{
19
public :
20
27
SsaoEffect
(
System
* system) noexcept ;
31
virtual
~SsaoEffect
() ;
32
33
// Getters
37
virtual
EFFECT_TYPE
getType
()
const override
;
41
nkGraphics::Texture
*
getPositionBuffer
()
const
;
45
nkGraphics::Texture
*
getNormalBuffer
()
const
;
49
nkGraphics::Texture
*
getDepthBuffer
()
const
;
53
bool
getLinearDepth
()
const
;
57
nkGraphics::Camera
*
getCamera
()
const
;
61
float
getSamplingRadius
()
const
;
65
float
getMaxOcclusionDistance
()
const
;
69
float
getStrength
()
const
;
73
float
getDepthBias
()
const
;
77
unsigned
int
getKernelSampleCount
()
const
;
81
bool
getOcclusionDrivesAlpha
()
const
;
82
83
// Setters
104
void
setEffectFromGBufferInfo
(
nkGraphics::Texture
* positionBuffer,
nkGraphics::Texture
* normalBuffer =
nullptr
) ;
123
void
setEffectFromDepthInfo
(
nkGraphics::Texture
* depthBuffer,
bool
linearDepth =
false
) ;
132
void
setCamera
(
nkGraphics::Camera
* value) ;
144
void
setSamplingRadius
(
float
value) ;
156
void
setMaxOcclusionDistance
(
float
value) ;
167
void
setStrength
(
float
value) ;
178
void
setDepthBias
(
float
value) ;
190
void
setKernelSampleCount
(
unsigned
int
value) ;
204
void
setOcclusionDrivesAlpha
(
bool
value) ;
205
206
// Load
207
virtual
bool
load
()
override
;
208
virtual
void
unload
()
override
;
209
210
public :
211
212
// Statics
223
static
nkMemory::UniquePtr<SsaoEffect>
create
(
System
* system =
nullptr
) ;
224
} ;
225
}
nkAstraeus::SsaoEffect::create
static nkMemory::UniquePtr< SsaoEffect > create(System *system=nullptr)
nkAstraeus::SsaoEffect::SsaoEffect
SsaoEffect(System *system) noexcept
nkAstraeus::SsaoEffect::setCamera
void setCamera(nkGraphics::Camera *value)
nkAstraeus::SsaoEffect::~SsaoEffect
virtual ~SsaoEffect()
nkAstraeus::SsaoEffect::setDepthBias
void setDepthBias(float value)
nkGraphics::Camera
Offers all controls to model a camera.
Definition:
Camera.h:14
nkAstraeus::SsaoEffect::getLinearDepth
bool getLinearDepth() const
nkGraphics::Texture
A texture used for rendering, hosted on GPU.
Definition:
Texture.h:35
nkAstraeus::EFFECT_TYPE
EFFECT_TYPE
Lists all effects supported.
Definition:
EffectType.h:12
nkAstraeus::SsaoEffect::getDepthBias
float getDepthBias() const
nkAstraeus::SsaoEffect::getStrength
float getStrength() const
nkAstraeus::SsaoEffect::getDepthBuffer
nkGraphics::Texture * getDepthBuffer() const
nkAstraeus::SsaoEffect::load
virtual bool load() override
nkAstraeus::System
The main entry point for nkAstraeus engine.
Definition:
System.h:15
nkAstraeus::SsaoEffect::getPositionBuffer
nkGraphics::Texture * getPositionBuffer() const
nkAstraeus::SsaoEffect::unload
virtual void unload() override
nkAstraeus::SsaoEffect::getKernelSampleCount
unsigned int getKernelSampleCount() const
nkAstraeus::SsaoEffect::getSamplingRadius
float getSamplingRadius() const
nkAstraeus::SsaoEffect
A Screen Space Ambient Occlusion effect.
Definition:
SsaoEffect.h:18
nkAstraeus::SsaoEffect::setOcclusionDrivesAlpha
void setOcclusionDrivesAlpha(bool value)
nkAstraeus::SsaoEffect::getType
virtual EFFECT_TYPE getType() const override
nkAstraeus
Encompasses all API of component NilkinsAstraeus.
Definition:
BlurComplexEffect.h:7
nkMemory::UniquePtr
Smart pointer owning the object instance it encapsulates.
Definition:
UniquePtr.h:17
nkAstraeus::SsaoEffect::getCamera
nkGraphics::Camera * getCamera() const
nkAstraeus::Effect
Base class for all effects in the component.
Definition:
Effect.h:16
nkAstraeus::SsaoEffect::getNormalBuffer
nkGraphics::Texture * getNormalBuffer() const
nkAstraeus::SsaoEffect::setSamplingRadius
void setSamplingRadius(float value)
nkAstraeus::SsaoEffect::setKernelSampleCount
void setKernelSampleCount(unsigned int value)
nkAstraeus::SsaoEffect::setEffectFromGBufferInfo
void setEffectFromGBufferInfo(nkGraphics::Texture *positionBuffer, nkGraphics::Texture *normalBuffer=nullptr)
nkAstraeus::SsaoEffect::getOcclusionDrivesAlpha
bool getOcclusionDrivesAlpha() const
nkAstraeus::SsaoEffect::setMaxOcclusionDistance
void setMaxOcclusionDistance(float value)
nkAstraeus::SsaoEffect::getMaxOcclusionDistance
float getMaxOcclusionDistance() const
nkAstraeus::SsaoEffect::setStrength
void setStrength(float value)
nkAstraeus::SsaoEffect::setEffectFromDepthInfo
void setEffectFromDepthInfo(nkGraphics::Texture *depthBuffer, bool linearDepth=false)
Generated by
Doxygen
1.8.18