]> git.tdb.fi Git - libs/gl.git/blobdiff - source/scene.cpp
Bind ProgramData to a Program upon construction
[libs/gl.git] / source / scene.cpp
index 607166d5d32f285e35879ff62134891a9c8e5a42..fee81dc20c931b807c0e1b74828fb7533c056341 100644 (file)
@@ -1,40 +1,20 @@
 /* $Id$
 
 This file is part of libmspgl
-Copyright © 2007  Mikko Rasa, Mikkosoft Productions
+Copyright © 2011  Mikko Rasa, Mikkosoft Productions
 Distributed under the LGPL
 */
 
+#include "renderer.h"
 #include "scene.h"
 
-using namespace std;
-
 namespace Msp {
 namespace GL {
 
-void Scene::add(const Renderable &r)
-{
-       renderables.insert(&r);
-}
-
-void Scene::remove(const Renderable &r)
-{
-       renderables.erase(&r);
-}
-
 void Scene::render(const Tag &tag) const
 {
-       for(set<const Renderable *, Compare>::const_iterator i=renderables.begin(); i!=renderables.end(); ++i)
-               if((*i)->has_pass(tag))
-                       (*i)->render(tag);
-}
-
-
-bool Scene::Compare::operator()(const Renderable *a, const Renderable *b) const
-{
-       if(a->get_order()!=b->get_order())
-               return a->get_order()<b->get_order();
-       return a<b;
+       Renderer renderer(0);
+       render(renderer, tag);
 }
 
 } // namespace GL