diff --git a/src/osgPlugins/OpenFlight/ReaderWriterFLT.cpp b/src/osgPlugins/OpenFlight/ReaderWriterFLT.cpp index bf450d5d1..5cd66ff64 100644 --- a/src/osgPlugins/OpenFlight/ReaderWriterFLT.cpp +++ b/src/osgPlugins/OpenFlight/ReaderWriterFLT.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include "Registry.h" #include "Document.h" @@ -179,6 +180,12 @@ class FLTReaderWriter : public ReaderWriter if (!document.getHeaderNode()) return ReadResult::ERROR_IN_READING_FILE; + + if (!document.getPreserveFace()) + { + osgUtil::Optimizer optimizer; + optimizer.optimize(document.getHeaderNode(), osgUtil::Optimizer::MERGE_GEOMETRY | osgUtil::Optimizer::MERGE_GEODES); + } return document.getHeaderNode(); }