API Documentation
ToneMappingEffect.h
1 // ToneMappingEffect.h
3 //
5 
6 namespace nkAstraeus
7 {
14  class ToneMappingEffect final : public Effect
15  {
16  public :
17 
18  // Constructor, destructor
23  ToneMappingEffect (System* system) noexcept ;
28  virtual ~ToneMappingEffect () ;
29 
30  // Getters
34  virtual EFFECT_TYPE getType () const override ;
42  bool getReinhardUsed () const ;
50  bool getHablesUsed () const ;
58  bool getAcesUsed () const ;
63 
64  // Setters
82  void setAsReinhard (const nkMaths::Vector& maxWhite = nkMaths::Vector(2.f, 2.f, 2.f)) ;
102  void setAsAces (const nkMaths::Matrix& lookTransform = nkMaths::Matrix(1.f, 0.f, 0.f, 0.f, 1.f, 0.f, 0.f, 0.f, 1.f)) ;
111  void setUseLuminance (bool value) ;
112 
113  // Load
114  virtual bool load () override ;
115  virtual void unload () override ;
116 
117  public :
118 
119  // Statics
131  } ;
132 }
nkAstraeus::ToneMappingEffect::setSourceTexture
void setSourceTexture(nkGraphics::Texture *value)
nkAstraeus::ToneMappingEffect::getHablesUsed
bool getHablesUsed() const
nkAstraeus::ToneMappingEffect::setAsReinhard
void setAsReinhard(const nkMaths::Vector &maxWhite=nkMaths::Vector(2.f, 2.f, 2.f))
nkAstraeus::ToneMappingEffect::getAcesLookTransform
const nkMaths::Matrix & getAcesLookTransform() const
nkAstraeus::ToneMappingEffect::getReinhardMaxWhite
const nkMaths::Vector & getReinhardMaxWhite() const
nkGraphics::Texture
A texture used for rendering, hosted on GPU.
Definition: Texture.h:35
nkAstraeus::ToneMappingEffect::getAcesUsed
bool getAcesUsed() const
nkAstraeus::EFFECT_TYPE
EFFECT_TYPE
Lists all effects supported.
Definition: EffectType.h:12
nkAstraeus::ToneMappingEffect::setUseLuminance
void setUseLuminance(bool value)
nkAstraeus::ToneMappingEffect::unload
virtual void unload() override
nkAstraeus::System
The main entry point for nkAstraeus engine.
Definition: System.h:15
nkMaths::Matrix
Represents a 4x4 float matrix.
Definition: Matrix.h:14
nkAstraeus::ToneMappingHablesCurveDescriptor
Provides all parameters to tune the Hables curve to tone map an image.
Definition: ToneMappingHablesCurveDescriptor.h:12
nkAstraeus::ToneMappingEffect::load
virtual bool load() override
nkAstraeus::ToneMappingEffect::setAsAces
void setAsAces(const nkMaths::Matrix &lookTransform=nkMaths::Matrix(1.f, 0.f, 0.f, 0.f, 1.f, 0.f, 0.f, 0.f, 1.f))
nkAstraeus::ToneMappingEffect::getReinhardUsed
bool getReinhardUsed() const
nkAstraeus::ToneMappingEffect::~ToneMappingEffect
virtual ~ToneMappingEffect()
nkAstraeus::ToneMappingEffect::create
static nkMemory::UniquePtr< ToneMappingEffect > create(System *system=nullptr)
nkAstraeus::ToneMappingEffect::ToneMappingEffect
ToneMappingEffect(System *system) noexcept
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::Effect
Base class for all effects in the component.
Definition: Effect.h:16
nkAstraeus::ToneMappingEffect::getType
virtual EFFECT_TYPE getType() const override
nkAstraeus::ToneMappingEffect::getSourceTexture
nkGraphics::Texture * getSourceTexture() const
nkAstraeus::ToneMappingEffect
A tone mapping effect meant to map linear values to display device colors.
Definition: ToneMappingEffect.h:15
nkMaths::Vector
A 4-component vector class, with floats.
Definition: Vector.h:12
nkAstraeus::ToneMappingEffect::getHablesDescriptor
const ToneMappingHablesCurveDescriptor & getHablesDescriptor() const
nkAstraeus::ToneMappingEffect::setAsHables
void setAsHables(const ToneMappingHablesCurveDescriptor &descriptor=ToneMappingHablesCurveDescriptor())