]> git.tdb.fi Git - libs/gl.git/blobdiff - source/zsortedscene.h
Check the flat qualifier from the correct member
[libs/gl.git] / source / zsortedscene.h
diff --git a/source/zsortedscene.h b/source/zsortedscene.h
deleted file mode 100644 (file)
index f7a7f6a..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-#ifndef MSP_GL_ZSORTEDSCENE_H_
-#define MSP_GL_ZSORTEDSCENE_H_
-
-#include <set>
-#include <vector>
-#include "scene.h"
-
-namespace Msp {
-namespace GL {
-
-enum SortOrder
-{
-       FRONT_TO_BACK,
-       BACK_TO_FRONT
-};
-
-enum DepthReference
-{
-       CLOSEST,
-       CENTER,
-       FURTHEST
-};
-
-/**
-Sorts renderables by their distance from the camera before rendering.  Requires
-renderables to have a matrix.
-*/
-class ZSortedScene: public Scene
-{
-private:
-       struct SortedRenderable
-       {
-               Renderable *renderable;
-               bool in_frustum;
-               float depth;
-
-               SortedRenderable(Renderable *);
-
-               bool operator<(const SortedRenderable &o) const { return depth<o.depth; }
-       };
-
-       typedef std::set<Renderable *> RenderableSet;
-       typedef std::vector<SortedRenderable> SortedArray;
-
-       RenderableSet renderables;
-       SortOrder order;
-       DepthReference reference;
-       mutable SortedArray sorted_cache;
-
-public:
-       ZSortedScene();
-
-       virtual void add(Renderable &);
-       virtual void remove(Renderable &);
-
-       /// Sets the sort order.  Default is back to front.
-       void set_order(SortOrder);
-
-       /// Sets the reference point for sorting.  Default is furthest from camera.
-       void set_reference(DepthReference);
-
-private:
-       void populate_cache() const;
-
-public:
-       virtual void setup_frame(Renderer &);
-       virtual void finish_frame();
-
-       virtual void render(Renderer &, const Tag &) const;
-};
-
-} // namespace GL
-} // namespace Msp
-
-#endif