[+] Flag for scene for supporting formats where more than one face can reference to one vertex.

pull/1011/head
Alexandr Arutjunov 2016-09-26 13:01:38 +03:00
parent ed35882ee9
commit 6a9ccf2016
2 changed files with 11 additions and 3 deletions

View File

@ -1,4 +1,4 @@
/*
/*
---------------------------------------------------------------------------
Open Asset Import Library (assimp)
---------------------------------------------------------------------------
@ -408,7 +408,8 @@ void ValidateDSProcess::Validate( const aiMesh* pMesh)
// the MSB flag is temporarily used by the extra verbose
// mode to tell us that the JoinVerticesProcess might have
// been executed already.
if ( !(this->mScene->mFlags & AI_SCENE_FLAGS_NON_VERBOSE_FORMAT ) && abRefList[face.mIndices[a]])
if ( !(this->mScene->mFlags & AI_SCENE_FLAGS_NON_VERBOSE_FORMAT ) && !(this->mScene->mFlags & AI_SCENE_FLAGS_ALLOW_SHARED) &&
abRefList[face.mIndices[a]])
{
ReportError("aiMesh::mVertices[%i] is referenced twice - second "
"time by aiMesh::mFaces[%i]::mIndices[%i]",face.mIndices[a],i,a);

View File

@ -1,4 +1,4 @@
/*
/*
---------------------------------------------------------------------------
Open Asset Import Library (assimp)
---------------------------------------------------------------------------
@ -266,6 +266,13 @@ struct aiNode
*/
#define AI_SCENE_FLAGS_TERRAIN 0x10
/**
* Specifies that the scene data can be shared between structures. For example:
* one vertex in few faces. \ref AI_SCENE_FLAGS_NON_VERBOSE_FORMAT can not be
* used for this because \ref AI_SCENE_FLAGS_NON_VERBOSE_FORMAT has internal
* meaning about postprocessing steps.
*/
#define AI_SCENE_FLAGS_ALLOW_SHARED 0x20
// -------------------------------------------------------------------------------
/** The root structure of the imported data.