]> Dogcows Code - chaz/yoink/blobdiff - src/Moof/Octree.hh
refactoring the scene class
[chaz/yoink] / src / Moof / Octree.hh
index ade0a026fdddc13e4507c88a9605e7f28bfd959f..186961f00e7b3d28a55ea7e6bef9a69c7aceb945 100644 (file)
@@ -47,7 +47,7 @@
 namespace Mf {
 
 
-class Camera;
+class Frustum;
 
 
 struct OctreeNode;
@@ -88,13 +88,13 @@ struct OctreeNode : public Entity
                        aabb_.draw(); // temporary
        }
 
-       void drawIfVisible(Scalar alpha, const Camera& cam) const
+       void drawIfVisible(Scalar alpha, const Frustum& frustum) const
        {
                std::list<EntityP>::const_iterator it;
 
                for (it = objects.begin(); it != objects.end(); ++it)
                {
-                       (*it)->drawIfVisible(alpha, cam);
+                       (*it)->drawIfVisible(alpha, frustum);
                }
 
                if (!objects.empty())
@@ -102,11 +102,11 @@ struct OctreeNode : public Entity
        }
 
 
-       bool isVisible(const Camera& cam) const
+       bool isVisible(const Frustum& frustum) const
        {
-               if (sphere_.isVisible(cam))
+               if (sphere_.isVisible(frustum))
                {
-                       return aabb_.isVisible(cam);
+                       return aabb_.isVisible(frustum);
                }
 
                return false;
@@ -133,20 +133,20 @@ class Octree
        void addChild(OctreeNodeP node, int index);
 
        void draw(Scalar alpha, OctreeNodeP node);
-       void drawIfVisible(Scalar alpha, const Camera& cam, OctreeNodeP node);
+       void drawIfVisible(Scalar alpha, const Frustum& frustum, OctreeNodeP node);
 
        stlplus::ntree<OctreeNode> tree_;
 
 public:
 
-       inline void print(OctreeNodeP node)
+       void print(OctreeNodeP node)
        {
                //logDebug("-----");
                //logDebug("depth to node: %d", tree_.depth(node));
                //logDebug("size of node: %d", tree_.size(node));
        }
 
-       inline static OctreeP alloc(const OctreeNode& rootNode)
+       static OctreeP alloc(const OctreeNode& rootNode)
        {
                return OctreeP(new Octree(rootNode));
        }
@@ -163,9 +163,9 @@ public:
 
        OctreeNodeP reinsert(EntityP entity, OctreeNodeP node);
 
-       void drawIfVisible(Scalar alpha, const Camera& cam)
+       void drawIfVisible(Scalar alpha, const Frustum& frustum)
        {
-               drawIfVisible(alpha, cam, tree_.root());
+               drawIfVisible(alpha, frustum, tree_.root());
        }
 
        void sort();
This page took 0.021209 seconds and 4 git commands to generate.