]> git.tdb.fi Git - libs/gl.git/blobdiff - source/render/occludedscene.h
Remove the View and Framebuffer constructors from Sequence
[libs/gl.git] / source / render / occludedscene.h
index 2898bb3ff92032c703c916232ae7459845c0fe8c..056acb2e0d12b2e14f74fcbffcde37cee09f7674 100644 (file)
@@ -16,6 +16,9 @@ entirely occluded by others.
 */
 class OccludedScene: public Scene
 {
+public:
+       using Scene::Loader;
+
 private:
        struct OccludedRenderable
        {
@@ -28,14 +31,11 @@ private:
                OccludedRenderable();
        };
 
-       typedef std::set<Renderable *> RenderableSet;
-       typedef std::vector<OccludedRenderable> OccludedArray;
-
-       Mesh bounding_mesh;
-       Program bounding_shader;
-       RenderableSet renderables;
+       const Mesh &bounding_mesh;
+       const Program &bounding_shader;
+       std::set<Renderable *> renderables;
        float occluder_min_size;
-       mutable OccludedArray occluded_cache;
+       mutable std::vector<OccludedRenderable> occluded_cache;
        mutable bool cache_dirty;
 
 public:
@@ -52,7 +52,7 @@ public:
        virtual void setup_frame(Renderer &);
        virtual void finish_frame();
 
-       virtual void render(Renderer &, const Tag & = Tag()) const;
+       virtual void render(Renderer &, Tag = Tag()) const;
 };
 
 } // namespace GL