X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fshadowmap.cpp;h=6056141f763376edaa39531b0070d348c9effb9f;hb=5c5d094255ae5b0a07f99392a5a099ad9c8e8e38;hp=d8853d9e3e229f5eff23631e437fc20eaea8ffd0;hpb=d031a80ea06e3ccd01041e9c6024fa62adf25160;p=libs%2Fgl.git diff --git a/source/shadowmap.cpp b/source/shadowmap.cpp index d8853d9e..6056141f 100644 --- a/source/shadowmap.cpp +++ b/source/shadowmap.cpp @@ -56,13 +56,13 @@ void ShadowMap::set_depth_bias(float b) depth_bias = b; } -void ShadowMap::setup_frame() const +void ShadowMap::setup_frame(Renderer &renderer) { if(rendered) return; rendered = true; - renderable.setup_frame(); + renderable.setup_frame(renderer); Camera camera; const Vector4 &lpos = light.get_position(); @@ -84,11 +84,13 @@ void ShadowMap::setup_frame() const Bind bind_depth(DepthTest::lequal()); fbo.clear(DEPTH_BUFFER_BIT); - Renderer renderer(&camera); - renderable.render(renderer, "shadow"); + Renderer::Push push(renderer); + renderer.set_camera(camera); + + renderer.render(renderable, "shadow"); } -void ShadowMap::finish_frame() const +void ShadowMap::finish_frame() { renderable.finish_frame(); rendered = false;