1 #include <msp/core/algorithm.h>
4 #include "simplescene.h"
9 void SimpleScene::add(Renderable &r)
11 auto i = lower_bound(content, &r);
12 if(i==content.end() || *i!=&r)
13 content.insert(i, &r);
16 void SimpleScene::remove(Renderable &r)
18 auto i = find(content, &r);
23 void SimpleScene::setup_frame(Renderer &renderer)
25 for(Renderable *r: content)
26 r->setup_frame(renderer);
29 void SimpleScene::finish_frame()
31 for(Renderable *r: content)
35 void SimpleScene::render(Renderer &renderer, Tag tag) const
37 if(const Camera *camera = renderer.get_camera())
39 for(Renderable *r: content)
40 if(camera->is_in_frustum(*r))
41 r->render(renderer, tag);
45 for(Renderable *r: content)
46 r->render(renderer, tag);