瀏覽代碼

Check for invalid texture coordinate accessor. Fixes #3269.

Paul Arden 5 年之前
父節點
當前提交
9e46f9751f
共有 1 個文件被更改,包括 4 次插入0 次删除
  1. 4 0
      code/AssetLib/glTF2/glTF2Importer.cpp

+ 4 - 0
code/AssetLib/glTF2/glTF2Importer.cpp

@@ -416,6 +416,10 @@ void glTF2Importer::ImportMeshes(glTF2::Asset &r) {
 				attr.color[c]->ExtractData(aim->mColors[c]);
 			}
 			for (size_t tc = 0; tc < attr.texcoord.size() && tc < AI_MAX_NUMBER_OF_TEXTURECOORDS; ++tc) {
+                if (!attr.texcoord[tc]) {
+                    throw DeadlyImportError("GLTF: Texture coordinate accessor not found or non-contiguous texture coordinate sets");
+                }
+
 				if (attr.texcoord[tc]->count != aim->mNumVertices) {
 					DefaultLogger::get()->warn("Texcoord stream size in mesh \"" + mesh.name +
 											   "\" does not match the vertex count");