|
| | 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