class DirectionalLight;
class Light;
+class PointLight;
/**
Creates shadows on a renderable through a shadow map texture. In the setup
enum ShadowType
{
NONE,
- DIRECTIONAL
+ DIRECTIONAL,
+ TETRAHEDRON
};
struct ShadowedLight
unsigned light_index;
unsigned face;
Camera camera;
+ Matrix face_matrix;
};
unsigned width;
ShadowMap(unsigned, unsigned, Renderable &, const Lighting &);
void add_light(const DirectionalLight &, unsigned, Renderable &);
+ void add_light(const PointLight &, unsigned, Renderable &);
private:
void add_light(const Light &, unsigned, ShadowType, Renderable &);