From 1590f6be3b1319298eddb0be379b567fd0decc1e Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Thu, 18 Mar 2010 15:04:27 +0000 Subject: [PATCH] Added in a test of using the utility classes in include/osgUtil/MeshOptimizers to see if they could improve peformance. Tests shown poorer performance with the code enabled so for now the code is #if 0 #endif'd out, and just left in place for future testing. --- src/osgTerrain/GeometryTechnique.cpp | 27 +++++++++++++++++++++++---- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/osgTerrain/GeometryTechnique.cpp b/src/osgTerrain/GeometryTechnique.cpp index 0dea263c0..3539e8a81 100644 --- a/src/osgTerrain/GeometryTechnique.cpp +++ b/src/osgTerrain/GeometryTechnique.cpp @@ -16,6 +16,7 @@ #include #include +#include #include @@ -690,13 +691,31 @@ void GeometryTechnique::generateGeometry(Locator* masterLocator, const osg::Vec3 geometry->setUseDisplayList(false); geometry->setUseVertexBufferObjects(true); - - + +#if 0 + { + osgUtil::VertexCacheMissVisitor vcmv_before; + osgUtil::VertexCacheMissVisitor vcmv_after; + osgUtil::VertexCacheVisitor vcv; + osgUtil::VertexAccessOrderVisitor vaov; + + vcmv_before.doGeometry(*geometry); + vcv.optimizeVertices(*geometry); + vaov.optimizeOrder(*geometry); + vcmv_after.doGeometry(*geometry); +#if 0 + OSG_NOTICE<<"vcmv_before.triangles="< builder = osgDB::Registry::instance()->getKdTreeBuilder()->clone();