Browse Source

fix CollisionVisualizer

David Rose 16 years ago
parent
commit
bc14778fac
2 changed files with 16 additions and 0 deletions
  1. 15 0
      panda/src/collide/collisionVisualizer.cxx
  2. 1 0
      panda/src/collide/collisionVisualizer.h

+ 15 - 0
panda/src/collide/collisionVisualizer.cxx

@@ -251,6 +251,21 @@ cull_callback(CullTraverser *trav, CullTraverserData &data) {
   return true;
 }
 
+////////////////////////////////////////////////////////////////////
+//     Function: CollisionVisualizer::is_renderable
+//       Access: Public, Virtual
+//  Description: Returns true if there is some value to visiting this
+//               particular node during the cull traversal for any
+//               camera, false otherwise.  This will be used to
+//               optimize the result of get_net_draw_show_mask(), so
+//               that any subtrees that contain only nodes for which
+//               is_renderable() is false need not be visited.
+////////////////////////////////////////////////////////////////////
+bool CollisionVisualizer::
+is_renderable() const {
+  return true;
+}
+
 
 ////////////////////////////////////////////////////////////////////
 //     Function: CollisionVisualizer::output

+ 1 - 0
panda/src/collide/collisionVisualizer.h

@@ -51,6 +51,7 @@ public:
   // from parent class PandaNode.
   virtual PandaNode *make_copy() const;
   virtual bool cull_callback(CullTraverser *trav, CullTraverserData &data);
+  virtual bool is_renderable() const;
   virtual void output(ostream &out) const;
 
   // from parent class CollisionRecorder.