Przeglądaj źródła

- LWO: fix crash when computing normals for meshes that contain line or point faces. Thanks to Thomas Sevaldrud for the patch.

Alexander Gessler 12 lat temu
rodzic
commit
7efb94580f
1 zmienionych plików z 4 dodań i 0 usunięć
  1. 4 0
      code/LWOLoader.cpp

+ 4 - 0
code/LWOLoader.cpp

@@ -467,6 +467,10 @@ void LWOImporter::ComputeNormals(aiMesh* mesh, const std::vector<unsigned int>&
 	for (; begin != end; ++begin)	{
 		aiFace& face = *begin;
 
+		if(face.mNumIndices < 3) {
+			continue;
+		}
+
 		// LWO doc: "the normal is defined as the cross product of the first and last edges"
 		aiVector3D* pV1 = mesh->mVertices + face.mIndices[0];
 		aiVector3D* pV2 = mesh->mVertices + face.mIndices[1];