namespace GL {
/**
-The simplest possible Scene. Rendering order is unspecified.
+A simple yet efficient scene. Rendering order is unspecified.
*/
class SimpleScene: public Scene
{
private:
typedef std::set<const Renderable *> RenderableSet;
+ typedef std::vector<const Renderable *> RenderableArray;
RenderableSet renderables;
+ mutable RenderableArray cache;
public:
virtual void add(const Renderable &);
virtual void remove(const Renderable &);
+private:
+ void populate_cache() const;
+
+public:
virtual void setup_frame() const;
virtual void finish_frame() const;