|
@@ -1528,6 +1528,7 @@ THREE.GLTFLoader = ( function () {
|
|
|
// For VEC3: itemSize is 3, elementBytes is 4, itemBytes is 12.
|
|
|
var elementBytes = TypedArray.BYTES_PER_ELEMENT;
|
|
|
var itemBytes = elementBytes * itemSize;
|
|
|
+ var byteOffset = accessorDef.byteOffset || 0;
|
|
|
var byteStride = json.bufferViews[ accessorDef.bufferView ].byteStride;
|
|
|
var normalized = accessorDef.normalized === true;
|
|
|
var array, bufferAttribute;
|
|
@@ -1541,7 +1542,7 @@ THREE.GLTFLoader = ( function () {
|
|
|
// Integer parameters to IB/IBA are in array elements, not bytes.
|
|
|
var ib = new THREE.InterleavedBuffer( array, byteStride / elementBytes );
|
|
|
|
|
|
- bufferAttribute = new THREE.InterleavedBufferAttribute( ib, itemSize, accessorDef.byteOffset / elementBytes, normalized );
|
|
|
+ bufferAttribute = new THREE.InterleavedBufferAttribute( ib, itemSize, byteOffset / elementBytes, normalized );
|
|
|
|
|
|
} else {
|
|
|
|
|
@@ -1551,7 +1552,7 @@ THREE.GLTFLoader = ( function () {
|
|
|
|
|
|
} else {
|
|
|
|
|
|
- array = new TypedArray( bufferView, accessorDef.byteOffset, accessorDef.count * itemSize );
|
|
|
+ array = new TypedArray( bufferView, byteOffset, accessorDef.count * itemSize );
|
|
|
|
|
|
}
|
|
|
|