|
| DirectionalLight ()=default |
|
| DirectionalLight (const glm::vec3 &worldDirection, const glm::vec3 &color) |
|
void | draw (LightRenderer &renderer) override |
|
void | update (double fullTime, double frameTime) override |
|
void | setScene (const BoundingBox &sceneBox) override |
|
glm::vec3 | sample (const glm::vec3 &position, float &dist, float &attenuation) const override |
|
bool | decode (const KeyValues ¶ms) |
|
KeyValues | encode () const override |
|
const glm::vec3 & | direction () const |
|
| Light () |
|
| Light (const glm::vec3 &color) |
|
void | addAnimation (const std::shared_ptr< Animation > &anim) |
|
virtual void | draw (LightRenderer &renderer)=0 |
|
virtual void | update (double fullTime, double frameTime)=0 |
|
virtual void | setScene (const BoundingBox &sceneBox)=0 |
|
virtual glm::vec3 | sample (const glm::vec3 &position, float &dist, float &attenuation) const =0 |
|
virtual KeyValues | encode () const |
|
bool | castsShadow () const |
|
void | setCastShadow (bool shouldCast) |
|
const glm::vec3 & | intensity () const |
|
void | setIntensity (const glm::vec3 &color) |
|
const glm::mat4 & | vp () const |
|
const glm::mat4 & | model () const |
|
const ShadowMap::Region & | shadowMap () const |
|
void | registerShadowMap (const Texture *map, ShadowMode mode, size_t layer=0, const glm::vec2 &minUV=glm::vec2(0.0f), const glm::vec2 &maxUV=glm::vec2(1.0f)) |
|
bool | animated () const |
|
virtual | ~Light ()=default |
|
| Light (const Light &)=delete |
|
Light & | operator= (const Light &)=delete |
|
| Light (Light &&)=default |
|
Light & | operator= (Light &&)=delete |
|
|
static std::shared_ptr< Light > | decode (const KeyValues ¶ms) |
|
bool | decodeBase (const KeyValues ¶ms) |
|
std::vector< std::shared_ptr< Animation > > | _animations |
| Animations list (will be applied in order).
|
|
ShadowMap::Region | _shadowMapInfos |
| Region of the (optional) shadow map containing this light information.
|
|
BoundingBox | _sceneBox |
| The scene bounding box, to fit the shadow map.
|
|
glm::mat4 | _vp |
| VP matrix for shadow casting.
|
|
glm::mat4 | _model |
| Model matrix of the mesh containing the light-covered region.
|
|
glm::vec3 | _color |
| Colored intensity.
|
|
bool | _castShadows |
| Is the light casting shadows (and thus use a shadow map)..
|
|
A directional light, where all light rays have the same direction.
It can be associated with a shadow 2D map with orthogonal projection. It is rendered as a fullscreen squad in deferred rendering.
- See also
- GPU::Frag::Directional_light, GPU::Frag::Light_shadow, GPU::Frag::Light_debug