Clear vertex cache too

This commit is contained in:
Sean Lilley 2018-10-11 16:41:11 -04:00
parent 07d1c9cdef
commit 43e78f3651

View File

@ -107,6 +107,11 @@ function loadObj(objPath, options) {
var vertexIndices = []; var vertexIndices = [];
function clearVertexCache() {
vertexCache = {};
vertexCacheCount = 0;
}
function getName(name) { function getName(name) {
return (name === '' ? undefined : name); return (name === '' ? undefined : name);
} }
@ -130,8 +135,7 @@ function loadObj(objPath, options) {
mesh.primitives.push(primitive); mesh.primitives.push(primitive);
// Clear the vertex cache for each new primitive // Clear the vertex cache for each new primitive
vertexCache = {}; clearVertexCache();
vertexCacheCount = 0;
vertexCount = 0; vertexCount = 0;
} }
@ -143,6 +147,7 @@ function loadObj(objPath, options) {
for (var i = 0; i < primitivesLength; ++i) { for (var i = 0; i < primitivesLength; ++i) {
if (primitives[i].material === material) { if (primitives[i].material === material) {
primitive = primitives[i]; primitive = primitives[i];
clearVertexCache();
vertexCount = primitive.positions.length / 3; vertexCount = primitive.positions.length / 3;
return; return;
} }
@ -205,8 +210,7 @@ function loadObj(objPath, options) {
// may be some duplicate vertices. // may be some duplicate vertices.
vertexCacheCount++; vertexCacheCount++;
if (vertexCacheCount > vertexCacheLimit) { if (vertexCacheCount > vertexCacheLimit) {
vertexCacheCount = 0; clearVertexCache();
vertexCache = {};
} }
} }
return index; return index;