diff options
Diffstat (limited to 'src/3rdparty/assimp/code/OptimizeMeshes.cpp')
-rw-r--r-- | src/3rdparty/assimp/code/OptimizeMeshes.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/3rdparty/assimp/code/OptimizeMeshes.cpp b/src/3rdparty/assimp/code/OptimizeMeshes.cpp index 8d830bb9b..f8183fc75 100644 --- a/src/3rdparty/assimp/code/OptimizeMeshes.cpp +++ b/src/3rdparty/assimp/code/OptimizeMeshes.cpp @@ -3,7 +3,8 @@ Open Asset Import Library (assimp) --------------------------------------------------------------------------- -Copyright (c) 2006-2016, assimp team +Copyright (c) 2006-2017, assimp team + All rights reserved. @@ -49,7 +50,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "OptimizeMeshes.h" #include "ProcessHelper.h" -#include "SceneCombiner.h" +#include <assimp/SceneCombiner.h> #include "Exceptional.h" using namespace Assimp; @@ -145,7 +146,7 @@ void OptimizeMeshesProcess::Execute( aiScene* pScene) meshes.resize( 0 ); ai_assert(output.size() <= num_old); - mScene->mNumMeshes = output.size(); + mScene->mNumMeshes = static_cast<unsigned int>(output.size()); std::copy(output.begin(),output.end(),mScene->mMeshes); if (output.size() != num_old) { @@ -180,11 +181,8 @@ void OptimizeMeshesProcess::ProcessNode( aiNode* pNode) verts += mScene->mMeshes[am]->mNumVertices; faces += mScene->mMeshes[am]->mNumFaces; + pNode->mMeshes[a] = pNode->mMeshes[pNode->mNumMeshes - 1]; --pNode->mNumMeshes; - for( unsigned int n = a; n < pNode->mNumMeshes; ++n ) { - pNode->mMeshes[ n ] = pNode->mMeshes[ n + 1 ]; - } - --a; } } @@ -199,7 +197,7 @@ void OptimizeMeshesProcess::ProcessNode( aiNode* pNode) } else { output.push_back(mScene->mMeshes[im]); } - im = output.size()-1; + im = static_cast<unsigned int>(output.size()-1); } } |