Просмотр исходного кода

Merge pull request #15827 from takahirox/BufferGeometryEndCondition

Clarify Loop end condition in BufferGeometry.merge()
Mr.doob 6 лет назад
Родитель
Сommit
d0dbcd7c89
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      src/core/BufferGeometry.js

+ 3 - 2
src/core/BufferGeometry.js

@@ -883,9 +883,10 @@ BufferGeometry.prototype = Object.assign( Object.create( EventDispatcher.prototy
 			var attribute2 = geometry.attributes[ key ];
 			var attributeArray2 = attribute2.array;
 
-			var attributeSize = attribute2.itemSize;
+			var attributeOffset = attribute2.itemSize * offset;
+			var length = Math.min( attributeArray2.length, attributeArray1.length - attributeOffset );
 
-			for ( var i = 0, j = attributeSize * offset; i < attributeArray2.length; i ++, j ++ ) {
+			for ( var i = 0, j = attributeOffset; i < length; i ++, j ++ ) {
 
 				attributeArray1[ j ] = attributeArray2[ i ];