From a9c61ad99242905abe48648a5a51d0871df242d0 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Sat, 12 Feb 2005 19:47:38 +0000 Subject: [PATCH] Remerged Tugkan's fix to flatten static transforms. --- src/osgUtil/Optimizer.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/osgUtil/Optimizer.cpp b/src/osgUtil/Optimizer.cpp index 90030bd9d..71ea9aafc 100644 --- a/src/osgUtil/Optimizer.cpp +++ b/src/osgUtil/Optimizer.cpp @@ -1,4 +1,4 @@ -/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2003 Robert Osfield +/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2003 Robert Osfield * * This library is open source and may be redistributed and/or modified under * the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or @@ -594,7 +594,7 @@ class CollectLowestTransformsVisitor : public osg::NodeVisitor // disable if object is a light point node. if (strcmp(object->className(),"LightPointNode")==0) return false; - return _optimizer ? _optimizer->isOperationPermissibleForObject(object,Optimizer::FLATTEN_STATIC_TRANSFORMS) : true; + return _optimizer ? _optimizer->isOperationPermissibleForObject(object,Optimizer::FLATTEN_STATIC_TRANSFORMS) : true; } protected: @@ -631,8 +631,9 @@ class CollectLowestTransformsVisitor : public osg::NodeVisitor if (_transformSet.empty()) transform->computeLocalToWorldMatrix(_firstMatrix,0); else { - transform->computeLocalToWorldMatrix(_firstMatrix,0); - if (_firstMatrix!=_identity_matrix) _moreThanOneMatrixRequired=true; + osg::Matrix matrix; + transform->computeLocalToWorldMatrix(matrix,0); + if (_firstMatrix!=matrix) _moreThanOneMatrixRequired=true; } } }