Rendu
A lightweight rendering engine for experimentations
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
BasicShadowMapCubeArray Class Reference

A cube shadow map array, can be used for point lights. Each face of the map is updated sequentially. The shadow map will register itself with the associated lights. More...

#include <BasicShadowMap.hpp>

Public Member Functions

 BasicShadowMapCubeArray (const std::vector< std::shared_ptr< PointLight > > &lights, int side, ShadowMode mode)
 
void draw (const Scene &scene) override
 
More...
 
- Public Member Functions inherited from ShadowMap
 ShadowMap ()=default
 
virtual void draw (const Scene &scene)=0
 
virtual ~ShadowMap ()=default
 
 ShadowMap (const ShadowMap &)=delete
 
ShadowMapoperator= (const ShadowMap &)=delete
 
 ShadowMap (ShadowMap &&)=default
 
ShadowMapoperator= (ShadowMap &&)=delete
 

Private Attributes

std::vector< std::shared_ptr< PointLight > > _lights
 The associated lights.
 
Program_program
 Shadow program.
 
Texture _map
 Shadow map result.
 

Detailed Description

A cube shadow map array, can be used for point lights. Each face of the map is updated sequentially. The shadow map will register itself with the associated lights.

Inherits ShadowMap.

Constructor & Destructor Documentation

◆ BasicShadowMapCubeArray()

BasicShadowMapCubeArray::BasicShadowMapCubeArray ( const std::vector< std::shared_ptr< PointLight > > &  lights,
int  side,
ShadowMode  mode 
)
explicit

Constructor.

Parameters
lightsthe lights to generate the associated shadow maps for
sidethe shadow map resolution
modethe type of shadow map technique used

Member Function Documentation

◆ draw()

void BasicShadowMapCubeArray::draw ( const Scene scene)
overridevirtual


Update the shadow map.

Parameters
scenethe objcts to draw in the map.

Implements ShadowMap.


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