RavEngine
Loading...
Searching...
No Matches
RavEngine::SpotLight Class Reference

#include <Light.hpp>

Inheritance diagram for RavEngine::SpotLight:
[legend]
Collaboration diagram for RavEngine::SpotLight:
[legend]

Classes

struct  ShadowMap
 

Public Types

using light_t = SpotLight
 
- Public Types inherited from RavEngine::Queryable< Light, IDebugRenderable >
typedef std::array< ctti_t, ntypes > arraytype
 
- Public Types inherited from RavEngine::QueryableDelta< QueryableDelta< Light, ShadowLightBase >, SpotLight >
typedef std::array< ctti_t, ntypes > arraytype
 

Public Member Functions

void DebugDraw (RavEngine::DebugDrawer &, const Transform &) const override
 
matrix4 CalcProjectionMatrix () const
 
matrix4 CalcViewMatrix (const matrix4 &worldTransform) const
 
const ShadowMap & GetShadowMap () const
 
constexpr void SetConeAngle (decltype(coneAngle) inAngle)
 
constexpr decltype(coneAngle) GetConeAngle () const
 
constexpr void SetPenumbraAngle (decltype(penumbraAngle) inAngle)
 
constexpr decltype(penumbraAngle) GetPenumbraAngle () const
 
- Public Member Functions inherited from RavEngine::ShadowLightBase
bool CastsShadows () const
 
void SetCastsShadows (bool casts)
 
constexpr void SetShadowLayers (renderlayer_t layers)
 
constexpr auto GetShadowLayers () const
 
- Public Member Functions inherited from RavEngine::Light
constexpr void SetColorRGBA (const decltype(color)&inColor)
 
constexpr const decltype(color) & GetColorRGBA () const
 
constexpr void SetIntensity (decltype(Intensity) inIntensity)
 
constexpr decltype(Intensity) GetIntensity () const
 
constexpr bool isInvalidated () const
 
constexpr void clearInvalidate ()
 
constexpr void SetIlluminationLayers (renderlayer_t layers)
 
constexpr auto GetIlluminationLayers ()
 

Public Attributes

struct RavEngine::SpotLight::ShadowMap shadowData
 
- Public Attributes inherited from RavEngine::Queryable< Light, IDebugRenderable >
constexpr q_qt_def
 
- Public Attributes inherited from RavEngine::IDebugRenderable
bool debugEnabled = false
 
color_t debug_color = 0xFFFFFFFF
 
- Public Attributes inherited from RavEngine::QueryableDelta< QueryableDelta< Light, ShadowLightBase >, SpotLight >
constexpr qb_qt_def
 

Additional Inherited Members

- Static Public Member Functions inherited from RavEngine::Queryable< Light, IDebugRenderable >
static constexpr const arraytype & GetQueryTypes ()
 
- Static Public Member Functions inherited from RavEngine::QueryableDelta< QueryableDelta< Light, ShadowLightBase >, SpotLight >
static constexpr const arraytype & GetQueryTypes ()
 
- Static Public Attributes inherited from RavEngine::Queryable< Light, IDebugRenderable >
static constexpr std::size_t ntypes
 
- Static Public Attributes inherited from RavEngine::QueryableDelta< QueryableDelta< Light, ShadowLightBase >, SpotLight >
static constexpr std::size_t ntypes
 
- Protected Member Functions inherited from RavEngine::Light
constexpr void invalidate ()
 
- Protected Attributes inherited from RavEngine::Light
bool tickInvalidated = true
 

Detailed Description

A light that emits rays from a sigle point, constrained to a cone. This is useful for modeling flashlights.

Member Function Documentation

◆ DebugDraw()

void SpotLight::DebugDraw ( RavEngine::DebugDrawer &  dbg,
const Transform &  transform 
) const
overridevirtual

Draw a wireframe shape representing the boundary of this object

Parameters
colorthe hex color to use to draw, in format 0xRRGGBBAA

Implements RavEngine::IDebugRenderable.


The documentation for this class was generated from the following files: