Added code to prevent ProxyNode's from been "flattened" by
osgUtil::Optimizer::FlattenStaticTransforms.
This commit is contained in:
@@ -675,6 +675,7 @@ class CollectLowestTransformsVisitor : public Optimizer::BaseOptimizerVisitor
|
||||
{
|
||||
// disable if object is a light point node.
|
||||
if (strcmp(node->className(),"LightPointNode")==0) return false;
|
||||
if (dynamic_cast<const osg::ProxyNode*>(node)) return false;
|
||||
return BaseOptimizerVisitor::isOperationPermissibleForObject(node);
|
||||
}
|
||||
|
||||
@@ -1005,6 +1006,15 @@ void Optimizer::FlattenStaticTransformsVisitor::apply(osg::Node& node)
|
||||
traverse(node);
|
||||
}
|
||||
|
||||
|
||||
void Optimizer::FlattenStaticTransformsVisitor::apply(osg::ProxyNode& node)
|
||||
{
|
||||
_excludedNodeSet.insert(&node);
|
||||
|
||||
traverse(node);
|
||||
}
|
||||
|
||||
|
||||
void Optimizer::FlattenStaticTransformsVisitor::apply(osg::Geode& geode)
|
||||
{
|
||||
if (!_transformStack.empty())
|
||||
|
||||
Reference in New Issue
Block a user