if(h==hdr)
return;
- bool old_hdr= hdr;
+ bool old_hdr = hdr;
hdr = h;
try
{
}
}
-void Pipeline::set_camera(const Camera *c)
-{
- camera = c;
-}
-
-Pipeline::Pass &Pipeline::add_pass(const Tag &tag)
-{
- passes.push_back(Pass(tag, 0));
- return passes.back();
-}
-
-void Pipeline::add_renderable(Renderable &r)
-{
- for(vector<Slot>::iterator i=renderables.begin(); i!=renderables.end(); ++i)
- if(i->renderable==&r)
- {
- i->passes.clear();
- return;
- }
-
- renderables.push_back(&r);
-}
-
-void Pipeline::add_renderable_for_pass(Renderable &r, const Tag &tag)
-{
- for(vector<Slot>::iterator i=renderables.begin(); i!=renderables.end(); ++i)
- if(i->renderable==&r)
- {
- i->passes.insert(tag);
- return;
- }
-
- renderables.push_back(&r);
- renderables.back().passes.insert(tag);
-}
-
-void Pipeline::remove_renderable(Renderable &r)
-{
- for(vector<Slot>::iterator i=renderables.begin(); i!=renderables.end(); ++i)
- if(i->renderable==&r)
- {
- renderables.erase(i);
- return;
- }
-}
-
Pipeline::Pass &Pipeline::add_pass(const Tag &tag, Renderable &r)
{
passes.push_back(Pass(tag, &r));
i->renderable->finish_frame();
}
-void Pipeline::render()
-{
- Renderer renderer(camera);
- setup_frame(renderer);
- render(renderer);
- finish_frame();
-}
-
void Pipeline::render(Renderer &renderer, const Tag &tag) const
{
if(tag.id)
{
Framebuffer &fbo = (samples ? target_ms : target[0])->get_framebuffer();
fbo.bind();
- fbo.clear(COLOR_BUFFER_BIT|DEPTH_BUFFER_BIT);
+ fbo.clear();
}
for(PassList::const_iterator i=passes.begin(); i!=passes.end(); ++i)