#include <omni_light.hpp>
◆ OmniLight() [1/3]
mage::rendering::OmniLight::OmniLight |
( |
| ) |
|
|
noexcept |
Constructs an omni light.
◆ OmniLight() [2/3]
mage::rendering::OmniLight::OmniLight |
( |
const OmniLight & |
light | ) |
|
|
defaultnoexcept |
Constructs an omni light from the given omni light.
- Parameters
-
[in] | light | A reference to the omni light to copy. |
◆ OmniLight() [3/3]
mage::rendering::OmniLight::OmniLight |
( |
OmniLight && |
light | ) |
|
|
defaultnoexcept |
Constructs an omni light by moving the given omni light.
- Parameters
-
[in] | light | A reference to the omni light to move. |
◆ ~OmniLight()
mage::rendering::OmniLight::~OmniLight |
( |
| ) |
|
|
virtualdefault |
Destructs this omni light.
◆ DissableShadows()
void mage::rendering::OmniLight::DissableShadows |
( |
| ) |
|
|
noexcept |
Dissables shadows for this omni light.
◆ EnableShadows()
void mage::rendering::OmniLight::EnableShadows |
( |
| ) |
|
|
noexcept |
Enables shadows for this omni light.
◆ GetAABB()
const AABB& mage::rendering::OmniLight::GetAABB |
( |
| ) |
const |
|
noexcept |
Returns the AABB of this omni light.
- Returns
- A reference to the AABB of this omni light.
◆ GetBaseColor() [1/2]
RGB& mage::rendering::OmniLight::GetBaseColor |
( |
| ) |
|
|
noexcept |
Returns the (linear) RGB base color of this spotlight.
- Returns
- A reference to the (linear) base color of this spotlight.
◆ GetBaseColor() [2/2]
const RGB& mage::rendering::OmniLight::GetBaseColor |
( |
| ) |
const |
|
noexcept |
Returns the (linear) base color of this spotlight.
- Returns
- A reference to the (linear) base color of this spotlight.
◆ GetBoundingSphere()
const BoundingSphere& mage::rendering::OmniLight::GetBoundingSphere |
( |
| ) |
const |
|
noexcept |
◆ GetClippingPlanes()
const F32x2 mage::rendering::OmniLight::GetClippingPlanes |
( |
| ) |
const |
|
noexcept |
Returns the clipping planes of this omni light expressed in light space.
- Returns
- The clipping planes of this omni light expressed in light space.
◆ GetIntensity()
F32 mage::rendering::OmniLight::GetIntensity |
( |
| ) |
const |
|
noexcept |
Returns the radiant intensity of this omni light.
- Returns
- The radiant intensity in watts per steradians of this omni light.
◆ GetIntensitySpectrum()
const RGB mage::rendering::OmniLight::GetIntensitySpectrum |
( |
| ) |
const |
|
noexcept |
Returns the radiant intensity spectrum of this omni light.
- Returns
- The radiant intensity spectrum of this omni light.
◆ GetLightToProjectionMatrix()
const XMMATRIX XM_CALLCONV mage::rendering::OmniLight::GetLightToProjectionMatrix |
( |
| ) |
const |
|
noexcept |
Returns the light-to-projection matrix of the (forward) light camera of this omni light.
- Returns
- The light-to-projection matrix of the (forward) light camera of this omni light.
◆ GetPower()
F32 mage::rendering::OmniLight::GetPower |
( |
| ) |
const |
|
noexcept |
Returns the power of this omni light.
- Returns
- The power in watts of this omni light.
◆ GetPowerSpectrum()
const RGB mage::rendering::OmniLight::GetPowerSpectrum |
( |
| ) |
const |
|
noexcept |
Returns the power spectrum of this omni light.
- Returns
- The power spectrum of this omni light.
◆ GetRange()
F32 mage::rendering::OmniLight::GetRange |
( |
| ) |
const |
|
noexcept |
Returns the range of this omni light expressed in light space.
- Returns
- The range of this omni light expressed in light space.
◆ GetWorldRange()
F32 mage::rendering::OmniLight::GetWorldRange |
( |
| ) |
const |
|
noexcept |
Returns the range of this omni light expressed in world space.
- Returns
- The range of this omni light expressed in world space.
- Note
- Non-uniform scaling is not supported for omni lights.
◆ operator=() [1/2]
Copies the given omni light to this omni light.
- Parameters
-
[in] | light | A reference to the omni light to copy. |
- Returns
- A reference to the copy of the given omni light (i.e. this omni light).
◆ operator=() [2/2]
Moves the given omni light to this omni light.
- Parameters
-
[in] | light | A reference to the omni light to move. |
- Returns
- A reference to the moved omni light (i.e. this omni light).
◆ SetClippingPlanes()
void mage::rendering::OmniLight::SetClippingPlanes |
( |
F32x2 |
clipping_planes | ) |
|
|
noexcept |
Sets the clipping planes of this omni light expressed in light space to the given clipping planes.
- Parameters
-
[in] | clipping_planes | The clipping planes. |
◆ SetIntensity()
void mage::rendering::OmniLight::SetIntensity |
( |
F32 |
intensity | ) |
|
|
noexcept |
Sets the radiant intensity of this omni light to the given radial intensity.
- Parameters
-
[in] | intensity | The radiant intensity in watts per steradians. |
◆ SetPower()
void mage::rendering::OmniLight::SetPower |
( |
F32 |
power | ) |
|
|
noexcept |
Sets the power of this omni light to the given radiance.
- Parameters
-
[in] | power | The power in watts. |
◆ SetRange()
void mage::rendering::OmniLight::SetRange |
( |
F32 |
range | ) |
|
|
noexcept |
Sets the range of this omni light to the given value expressed in light space.
- Parameters
-
[in] | range | The range expressed in light space. |
◆ SetShadows()
void mage::rendering::OmniLight::SetShadows |
( |
bool |
shadows | ) |
|
|
noexcept |
Sets shadows for this omni light to the given value.
- Parameters
-
[in] | shadows | true if shadows should be used for this omni light. false otherwise. |
◆ ToggleShadows()
void mage::rendering::OmniLight::ToggleShadows |
( |
| ) |
|
|
noexcept |
Toggles shadows for this omni light.
◆ UpdateBoundingVolumes()
void mage::rendering::OmniLight::UpdateBoundingVolumes |
( |
| ) |
|
|
privatenoexcept |
Updates the bounding volumes of this omni light.
◆ UseShadows()
bool mage::rendering::OmniLight::UseShadows |
( |
| ) |
const |
|
noexcept |
Checks whether shadows should be used for this omni light.
- Returns
true
if shadows should be used for this omni light. false
otherwise.
◆ m_aabb
AABB mage::rendering::OmniLight::m_aabb |
|
private |
The AABB of this omni light.
◆ m_base_color
RGB mage::rendering::OmniLight::m_base_color |
|
private |
The (linear) base color of this omni light.
◆ m_clipping_planes
F32x2 mage::rendering::OmniLight::m_clipping_planes |
|
private |
The clipping planes of this omni light expressed in light space.
◆ m_intensity
F32 mage::rendering::OmniLight::m_intensity |
|
private |
The radiant intensity in watts per steradians of this omni light.
◆ m_shadows
bool mage::rendering::OmniLight::m_shadows |
|
private |
A flag indicating whether shadows should be calculated or not for this omni light.
◆ m_sphere