Browse Source

Fix bug in glTF loader with interleaved anim data

Gary Hsu 5 years ago
parent
commit
c81062c312
1 changed files with 1 additions and 1 deletions
  1. 1 1
      loaders/src/glTF/2.0/glTFLoader.ts

+ 1 - 1
loaders/src/glTF/2.0/glTFLoader.ts

@@ -1525,7 +1525,7 @@ export class GLTFLoader implements IGLTFLoader {
         else {
         else {
             const bufferView = ArrayItem.Get(`${context}/bufferView`, this._gltf.bufferViews, accessor.bufferView);
             const bufferView = ArrayItem.Get(`${context}/bufferView`, this._gltf.bufferViews, accessor.bufferView);
             accessor._data = this.loadBufferViewAsync(`/bufferViews/${bufferView.index}`, bufferView).then((data) => {
             accessor._data = this.loadBufferViewAsync(`/bufferViews/${bufferView.index}`, bufferView).then((data) => {
-                if (accessor.componentType === AccessorComponentType.FLOAT && !accessor.normalized) {
+                if (accessor.componentType === AccessorComponentType.FLOAT && !accessor.normalized && (!bufferView.byteStride || bufferView.byteStride === byteStride)) {
                     return GLTFLoader._GetTypedArray(context, accessor.componentType, data, accessor.byteOffset, length);
                     return GLTFLoader._GetTypedArray(context, accessor.componentType, data, accessor.byteOffset, length);
                 }
                 }
                 else {
                 else {