]> git.tdb.fi Git - libs/gl.git/blobdiff - source/view.cpp
Support rendering View with an externally provided Renderer
[libs/gl.git] / source / view.cpp
index fe783110fefa8551620d90d8384c4e48af8bf7d8..ad6e266c4468ba477e9f8f72ad55423fce8ee8b1 100644 (file)
@@ -25,12 +25,19 @@ void View::set_content(Renderable *r)
 }
 
 void View::render()
+{
+       Renderer renderer;
+       render(renderer);
+}
+
+void View::render(Renderer &renderer)
 {
        Bind bind_fbo(target);
        target.clear(COLOR_BUFFER_BIT|DEPTH_BUFFER_BIT);
        if(content)
        {
-               Renderer renderer(camera);
+               Renderer::Push push(renderer);
+               renderer.set_camera(*camera);
                content->setup_frame(renderer);
                content->render(renderer);
                content->finish_frame();