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
 
CameraSettingsoperator= (const CameraSettings &settings) noexcept=default
 
CameraSettingsoperator= (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
 
VoxelizationSettingsGetVoxelizationSettings () noexcept
 
const VoxelizationSettingsGetVoxelizationSettings () 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
 
FogGetFog () noexcept
 
const FogGetFog () const noexcept
 
SkyGetSky () noexcept
 
const SkyGetSky () 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.