Engine » Render » Shadows » Shadow atlas module

Creates and manages shadow map atlases.

Dependencies

Files

file plugin.hpp
Plugin entry point.
file point_atlas.hpp
Resource cubos::engine::PointShadowAtlas.
file slot.hpp
Resource cubos::engine::ShadowMapSlot.
file spot_atlas.hpp
Resource cubos::engine::SpotShadowAtlas.

Classes

class cubos::engine::PointShadowAtlas
Resource which stores the shadow map atlas for point lights, a large texture that holds the shadow maps for each shadow caster in a quadtree structure, reducing texture switching.
class cubos::engine::SpotShadowAtlas
Resource which stores the shadow map atlas for spot lights, a large texture that holds the shadow maps for each shadow caster in a quadtree structure, reducing texture switching.

Functions

auto shadowAtlasPlugin(Cubos& cubos) -> CUBOS_ENGINE_API void
Plugin entry function.

Variables

CUBOS_ENGINE_API Tag createShadowAtlasTag
Creates the shadow atlases.
CUBOS_ENGINE_API Tag reserveShadowCastersTag
Reserves space for shadow casters.
CUBOS_ENGINE_API Tag drawToShadowAtlasTag
Systems which draw to the shadow atlas textures should be tagged with this.

Function documentation

CUBOS_ENGINE_API void shadowAtlasPlugin(Cubos& cubos)

Plugin entry function.

Parameters
cubos Cubos main class.

Variable documentation

CUBOS_ENGINE_API Tag drawToShadowAtlasTag

Systems which draw to the shadow atlas textures should be tagged with this.