-/* $Id$
-
-This file is part of libmspgl
-Copyright © 2009 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
#ifndef SHADOWMAP_H_
#define SHADOWMAP_H_
{
private:
unsigned size;
- const Scene &scene;
const Light &light;
- Framebuffer fbo;
+ mutable Framebuffer fbo;
unsigned unit;
Texture2D depth_buf;
Vector3 target;
float radius;
public:
- ShadowMap(unsigned, const Scene &, const Light &);
+ ShadowMap(unsigned, const Renderable &, const Light &);
/** Sets the ShadowMap target point and radius. The transformation matrix is
computed so that a sphere with the specified parameters will be completely
phase. The default is texture unit 3. */
void set_texture_unit(unsigned);
- virtual void prepare();
- virtual void cleanup();
+ virtual void render(Renderer &, const Tag &) const;
};
} // namespace GL