openscenegraph
|
#include <Optimizer>
Classes | |
class | BufferObjectVisitor |
class | CombineLODsVisitor |
class | CombineStaticTransformsVisitor |
class | CopySharedSubgraphsVisitor |
class | FlattenBillboardVisitor |
class | FlattenStaticTransformsDuplicatingSharedSubgraphsVisitor |
class | FlattenStaticTransformsVisitor |
struct | IsOperationPermissibleForObjectCallback |
class | MakeFastGeometryVisitor |
class | MergeGeodesVisitor |
class | MergeGeometryVisitor |
class | RemoveEmptyNodesVisitor |
class | RemoveLoadedProxyNodesVisitor |
class | RemoveRedundantNodesVisitor |
class | SpatializeGroupsVisitor |
class | StateVisitor |
class | StaticObjectDetectionVisitor |
class | TessellateVisitor |
class | TextureAtlasBuilder |
class | TextureAtlasVisitor |
class | TextureVisitor |
Public Types | |
enum | OptimizationOptions { FLATTEN_STATIC_TRANSFORMS = (1 << 0) , REMOVE_REDUNDANT_NODES = (1 << 1) , REMOVE_LOADED_PROXY_NODES = (1 << 2) , COMBINE_ADJACENT_LODS = (1 << 3) , SHARE_DUPLICATE_STATE = (1 << 4) , MERGE_GEOMETRY = (1 << 5) , CHECK_GEOMETRY = (1 << 6) , MAKE_FAST_GEOMETRY = (1 << 7) , SPATIALIZE_GROUPS = (1 << 8) , COPY_SHARED_NODES = (1 << 9) , TRISTRIP_GEOMETRY = (1 << 10) , TESSELLATE_GEOMETRY = (1 << 11) , OPTIMIZE_TEXTURE_SETTINGS = (1 << 12) , MERGE_GEODES = (1 << 13) , FLATTEN_BILLBOARDS = (1 << 14) , TEXTURE_ATLAS_BUILDER = (1 << 15) , STATIC_OBJECT_DETECTION = (1 << 16) , FLATTEN_STATIC_TRANSFORMS_DUPLICATING_SHARED_SUBGRAPHS = (1 << 17) , INDEX_MESH = (1 << 18) , VERTEX_POSTTRANSFORM = (1 << 19) , VERTEX_PRETRANSFORM = (1 << 20) , BUFFER_OBJECT_SETTINGS = (1 << 21) , DEFAULT_OPTIMIZATIONS , ALL_OPTIMIZATIONS } |
Protected Types | |
typedef std::map< const osg::Object *, unsigned int > | PermissibleOptimizationsMap |
Protected Attributes | |
osg::ref_ptr< IsOperationPermissibleForObjectCallback > | _isOperationPermissibleForObjectCallback |
PermissibleOptimizationsMap | _permissibleOptimizationsMap |
Traverses scene graph to improve efficiency. See OptimizationOptions. For example of usage see examples/osgimpostor or osgviewer.
|
protected |
|
inline |
|
inlinevirtual |
|
inline |
Get the callback for customizing what operations are permitted on objects in the scene graph.
|
inline |
Get the callback for customizing what operations are permitted on objects in the scene graph.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by osgUtil::Optimizer::IsOperationPermissibleForObjectCallback::isOperationPermissibleForObjectImplementation(), osgUtil::Optimizer::IsOperationPermissibleForObjectCallback::isOperationPermissibleForObjectImplementation(), osgUtil::Optimizer::IsOperationPermissibleForObjectCallback::isOperationPermissibleForObjectImplementation(), and osgUtil::Optimizer::IsOperationPermissibleForObjectCallback::isOperationPermissibleForObjectImplementation().
|
inline |
References osg::ref_ptr< T >::get(), and optimize().
Referenced by optimize().
|
inline |
References osg::ref_ptr< T >::get(), and optimize().
Referenced by optimize().
void osgUtil::Optimizer::optimize | ( | osg::Node * | node | ) |
Traverse the node and its subgraph with a series of optimization visitors, specified by the OptimizationOptions.
|
virtual |
Traverse the node and its subgraph with a series of optimization visitors, specified by the OptimizationOptions.
void osgUtil::Optimizer::reset | ( | ) |
Reset internal data to initial state - the getPermissibleOptionsMap is cleared.
|
inline |
Set the callback for customizing what operations are permitted on objects in the scene graph.
|
inline |
|
protected |
|
protected |