|
// 这个函数的裁剪级别是不是Drawable级别的, Geode级别裁剪的代码在什么地方呢?
void CullVisitor::apply(Geode& node)
{
if (isCulled(node)) return;
// push the node's state.
StateSet* node_state = node.getStateSet();
if (node_state) pushStateSet(node_state);
// traverse any call callbacks and traverse any children.
handle_cull_callbacks_and_traverse(node);
RefMatrix& matrix = *getModelViewMatrix();
for(unsigned int i=0;i {
Drawable* drawable = node.getDrawable(i);
const BoundingBox &bb =drawable->getBound();
... ...
}
} |
|