MAGE  v0.171.0
Matthias Advanced Game Engine
mage::rendering::CameraSettings Class Reference

#include <camera.hpp>

Public Member Functions

 CameraSettings () noexcept
 
 CameraSettings (const CameraSettings &settings) noexcept=default
 
 CameraSettings (CameraSettings &&settings) noexcept=default
 
 ~CameraSettings ()=default
 
CameraSettings & operator= (const CameraSettings &settings) noexcept=default
 
CameraSettings & operator= (CameraSettings &&settings) noexcept=default
 
RenderMode GetRenderMode () const noexcept
 
void SetRenderMode (RenderMode render_mode) noexcept
 
BRDF GetBRDF () const noexcept
 
void SetBRDF (BRDF brdf) noexcept
 
ToneMapping GetToneMapping () const noexcept
 
void SetToneMapping (ToneMapping tone_mapping) noexcept
 
VoxelizationSettings & GetVoxelizationSettings () noexcept
 
const VoxelizationSettings & GetVoxelizationSettings () const noexcept
 
bool ContainsRenderLayers () const noexcept
 
bool ContainsRenderLayer (RenderLayer render_layer) const noexcept
 
void AddRenderLayer (RenderLayer render_layer) noexcept
 
void RemoveRenderLayer (RenderLayer render_layer) noexcept
 
void ToggleRenderLayer (RenderLayer render_layer) noexcept
 
void ResetRenderLayers () noexcept
 
Fog & GetFog () noexcept
 
const Fog & GetFog () const noexcept
 
Sky & GetSky () noexcept
 
const Sky & GetSky () const noexcept
 

Static Public Member Functions

static constexpr F32 GetGamma () noexcept
 
static constexpr void SetGamma (F32 gamma) noexcept
 

Private Attributes

RenderMode m_render_mode
 
BRDF m_brdf
 
ToneMapping m_tone_mapping
 
VoxelizationSettings m_voxelization_settings
 
U32 m_render_layer_mask
 
Fog m_fog
 
Sky m_sky
 

Static Private Attributes

static F32 s_gamma = 2.2f
 

Detailed Description

A class of camera settingss.

Constructor & Destructor Documentation

◆ CameraSettings() [1/3]

mage::rendering::CameraSettings::CameraSettings ( )
noexcept

Constructs a camera settings.

◆ CameraSettings() [2/3]

mage::rendering::CameraSettings::CameraSettings ( const CameraSettings &  settings)
defaultnoexcept

Constructs a camera settings from the given camera settings.

Parameters
[in]settingsA reference to the camera settings to copy.

◆ CameraSettings() [3/3]

mage::rendering::CameraSettings::CameraSettings ( CameraSettings &&  settings)
defaultnoexcept

Constructs a camera settings by moving the given camera settings.

Parameters
[in]settingsA reference to the camera settings to move.

◆ ~CameraSettings()

mage::rendering::CameraSettings::~CameraSettings ( )
default

Destructs this camera settings.

Member Function Documentation

◆ AddRenderLayer()

void mage::rendering::CameraSettings::AddRenderLayer ( RenderLayer  render_layer)
noexcept

◆ ContainsRenderLayer()

bool mage::rendering::CameraSettings::ContainsRenderLayer ( RenderLayer  render_layer) const
noexcept

◆ ContainsRenderLayers()

bool mage::rendering::CameraSettings::ContainsRenderLayers ( ) const
noexcept

◆ GetBRDF()

BRDF mage::rendering::CameraSettings::GetBRDF ( ) const
noexcept

◆ GetFog() [1/2]

Fog& mage::rendering::CameraSettings::GetFog ( )
noexcept

◆ GetFog() [2/2]

const Fog& mage::rendering::CameraSettings::GetFog ( ) const
noexcept

◆ GetGamma()

static constexpr F32 mage::rendering::CameraSettings::GetGamma ( )
staticnoexcept

Returns the gamma value used for gamma correction of camera settings.

Returns
The gamma value used for gamma correction of camera settings.

◆ GetRenderMode()

RenderMode mage::rendering::CameraSettings::GetRenderMode ( ) const
noexcept

◆ GetSky() [1/2]

Sky& mage::rendering::CameraSettings::GetSky ( )
noexcept

◆ GetSky() [2/2]

const Sky& mage::rendering::CameraSettings::GetSky ( ) const
noexcept

◆ GetToneMapping()

ToneMapping mage::rendering::CameraSettings::GetToneMapping ( ) const
noexcept

◆ GetVoxelizationSettings() [1/2]

VoxelizationSettings& mage::rendering::CameraSettings::GetVoxelizationSettings ( )
noexcept

◆ GetVoxelizationSettings() [2/2]

const VoxelizationSettings& mage::rendering::CameraSettings::GetVoxelizationSettings ( ) const
noexcept

◆ operator=() [1/2]

CameraSettings& mage::rendering::CameraSettings::operator= ( const CameraSettings &  settings)
defaultnoexcept

Copies the given camera settings to this camera settings.

Parameters
[in]settingsA reference to the camera settings to copy.
Returns
A reference to the copy of the given camera settings (i.e. this camera settings).

◆ operator=() [2/2]

CameraSettings& mage::rendering::CameraSettings::operator= ( CameraSettings &&  settings)
defaultnoexcept

Moves the given camera settings to this camera settings.

Parameters
[in]settingsA reference to the camera settings to move.
Returns
A reference to the moved camera settings (i.e. this camera settings).

◆ RemoveRenderLayer()

void mage::rendering::CameraSettings::RemoveRenderLayer ( RenderLayer  render_layer)
noexcept

◆ ResetRenderLayers()

void mage::rendering::CameraSettings::ResetRenderLayers ( )
noexcept

◆ SetBRDF()

void mage::rendering::CameraSettings::SetBRDF ( BRDF  brdf)
noexcept

◆ SetGamma()

static constexpr void mage::rendering::CameraSettings::SetGamma ( F32  gamma)
staticnoexcept

Sets the gamma value used for gamma correction of camera settings to the given value.

Parameters
[in]gammaThe gamma value.

◆ SetRenderMode()

void mage::rendering::CameraSettings::SetRenderMode ( RenderMode  render_mode)
noexcept

◆ SetToneMapping()

void mage::rendering::CameraSettings::SetToneMapping ( ToneMapping  tone_mapping)
noexcept

◆ ToggleRenderLayer()

void mage::rendering::CameraSettings::ToggleRenderLayer ( RenderLayer  render_layer)
noexcept

Member Data Documentation

◆ m_brdf

BRDF mage::rendering::CameraSettings::m_brdf
private

The BRDF of this camera settings.

◆ m_fog

Fog mage::rendering::CameraSettings::m_fog
private

The fog of this camera settings.

◆ m_render_layer_mask

U32 mage::rendering::CameraSettings::m_render_layer_mask
private

The render layer mask of this camera settings.

◆ m_render_mode

RenderMode mage::rendering::CameraSettings::m_render_mode
private

The render mode of this camera settings.

◆ m_sky

Sky mage::rendering::CameraSettings::m_sky
private

The sky of this camera settings.

◆ m_tone_mapping

ToneMapping mage::rendering::CameraSettings::m_tone_mapping
private

The Tone Mapping of this camera settings.

◆ m_voxelization_settings

VoxelizationSettings mage::rendering::CameraSettings::m_voxelization_settings
private

The voxelization settings of this camera settings.

◆ s_gamma

F32 mage::rendering::CameraSettings::s_gamma = 2.2f
staticprivate

The gamma value used for gamma correction of camera settings.