summaryrefslogtreecommitdiff
path: root/thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp')
-rw-r--r--thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp33
1 files changed, 10 insertions, 23 deletions
diff --git a/thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp b/thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp
index 4a3de9f993..1386e2383c 100644
--- a/thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp
+++ b/thirdparty/assimp/code/FBX/FBXMeshGeometry.cpp
@@ -2,7 +2,7 @@
Open Asset Import Library (assimp)
----------------------------------------------------------------------
-Copyright (c) 2006-2020, assimp team
+Copyright (c) 2006-2019, assimp team
All rights reserved.
@@ -446,19 +446,14 @@ void ResolveVertexDataArray(std::vector<T>& data_out, const Scope& source,
return;
}
std::vector<T> tempData;
- ParseVectorDataArray(tempData, GetRequiredElement(source, dataElementName));
-
- if (tempData.size() != mapping_offsets.size()) {
- FBXImporter::LogError(Formatter::format("length of input data unexpected for ByVertice mapping: ")
- << tempData.size() << ", expected " << mapping_offsets.size());
- return;
- }
+ ParseVectorDataArray(tempData, GetRequiredElement(source, dataElementName));
data_out.resize(vertex_count);
- for (size_t i = 0, e = tempData.size(); i < e; ++i) {
+ for (size_t i = 0, e = tempData.size(); i < e; ++i) {
+
const unsigned int istart = mapping_offsets[i], iend = istart + mapping_counts[i];
for (unsigned int j = istart; j < iend; ++j) {
- data_out[mappings[j]] = tempData[i];
+ data_out[mappings[j]] = tempData[i];
}
}
}
@@ -466,17 +461,10 @@ void ResolveVertexDataArray(std::vector<T>& data_out, const Scope& source,
std::vector<T> tempData;
ParseVectorDataArray(tempData, GetRequiredElement(source, dataElementName));
- std::vector<int> uvIndices;
- ParseVectorDataArray(uvIndices,GetRequiredElement(source,indexDataElementName));
-
- if (uvIndices.size() != vertex_count) {
- FBXImporter::LogError(Formatter::format("length of input data unexpected for ByVertice mapping: ")
- << uvIndices.size() << ", expected " << vertex_count);
- return;
- }
-
data_out.resize(vertex_count);
+ std::vector<int> uvIndices;
+ ParseVectorDataArray(uvIndices,GetRequiredElement(source,indexDataElementName));
for (size_t i = 0, e = uvIndices.size(); i < e; ++i) {
const unsigned int istart = mapping_offsets[i], iend = istart + mapping_counts[i];
@@ -505,17 +493,16 @@ void ResolveVertexDataArray(std::vector<T>& data_out, const Scope& source,
std::vector<T> tempData;
ParseVectorDataArray(tempData, GetRequiredElement(source, dataElementName));
+ data_out.resize(vertex_count);
+
std::vector<int> uvIndices;
ParseVectorDataArray(uvIndices,GetRequiredElement(source,indexDataElementName));
if (uvIndices.size() != vertex_count) {
- FBXImporter::LogError(Formatter::format("length of input data unexpected for ByPolygonVertex mapping: ")
- << uvIndices.size() << ", expected " << vertex_count);
+ FBXImporter::LogError("length of input data unexpected for ByPolygonVertex mapping");
return;
}
- data_out.resize(vertex_count);
-
const T empty;
unsigned int next = 0;
for(int i : uvIndices) {