for(PassList::const_iterator i=passes.begin(); i!=passes.end(); ++i)
if(const Renderable *renderable = i->get_renderable())
renderable->setup_frame();
for(PassList::const_iterator i=passes.begin(); i!=passes.end(); ++i)
if(const Renderable *renderable = i->get_renderable())
renderable->setup_frame();
for(PassList::const_iterator i=passes.begin(); i!=passes.end(); ++i)
if(const Renderable *renderable = i->get_renderable())
renderable->finish_frame();
for(PassList::const_iterator i=passes.begin(); i!=passes.end(); ++i)
if(const Renderable *renderable = i->get_renderable())
renderable->finish_frame();
const Framebuffer *out_fbo = Framebuffer::current();
// These is a no-ops but will ensure the related state gets restored
BindRestore restore_fbo(out_fbo);
const Framebuffer *out_fbo = Framebuffer::current();
// These is a no-ops but will ensure the related state gets restored
BindRestore restore_fbo(out_fbo);