]> git.tdb.fi Git - libs/gl.git/blobdiff - source/shadowmap.cpp
Change the setup/finish_frame interface to be non-const
[libs/gl.git] / source / shadowmap.cpp
index d8853d9e3e229f5eff23631e437fc20eaea8ffd0..f461c88a4279155604b0ba519f7ea98ff3d096b1 100644 (file)
@@ -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,11 @@ void ShadowMap::setup_frame() const
        Bind bind_depth(DepthTest::lequal());
        fbo.clear(DEPTH_BUFFER_BIT);
 
-       Renderer renderer(&camera);
-       renderable.render(renderer, "shadow");
+       Renderer shadow_renderer(&camera);
+       renderable.render(shadow_renderer, "shadow");
 }
 
-void ShadowMap::finish_frame() const
+void ShadowMap::finish_frame()
 {
        renderable.finish_frame();
        rendered = false;