@galacean/engine-loader 1.1.0-beta.46 → 1.1.0-beta.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2061,7 +2061,7 @@ function registerGLTFParser(pipeline) {
2061
2061
  };
2062
2062
  /**
2063
2063
  * Parse the glb format.
2064
- */ GLTFUtils.parseGLB = function parseGLB(context, glb) {
2064
+ */ GLTFUtils.parseGLB = function parseGLB(context, originBuffer) {
2065
2065
  var UINT32_LENGTH = 4;
2066
2066
  var GLB_HEADER_MAGIC = 0x46546c67; // 'glTF'
2067
2067
  var GLB_HEADER_LENGTH = 12;
@@ -2069,7 +2069,7 @@ function registerGLTFParser(pipeline) {
2069
2069
  JSON: 0x4e4f534a,
2070
2070
  BIN: 0x004e4942
2071
2071
  };
2072
- var dataView = new DataView(glb);
2072
+ var dataView = new DataView(originBuffer);
2073
2073
  // read header
2074
2074
  var header = {
2075
2075
  magic: dataView.getUint32(0, true),
@@ -2077,8 +2077,9 @@ function registerGLTFParser(pipeline) {
2077
2077
  length: dataView.getUint32(2 * UINT32_LENGTH, true)
2078
2078
  };
2079
2079
  if (header.magic !== GLB_HEADER_MAGIC) {
2080
- console.error("Invalid glb magic number. Expected 0x46546C67, found 0x" + header.magic.toString(16));
2081
- return null;
2080
+ return {
2081
+ originBuffer: originBuffer
2082
+ };
2082
2083
  }
2083
2084
  // read main data
2084
2085
  var chunkLength = dataView.getUint32(GLB_HEADER_LENGTH, true);
@@ -2088,7 +2089,7 @@ function registerGLTFParser(pipeline) {
2088
2089
  console.error("Invalid glb chunk type. Expected 0x4E4F534A, found 0x" + chunkType.toString(16));
2089
2090
  return null;
2090
2091
  }
2091
- var glTFData = new Uint8Array(glb, GLB_HEADER_LENGTH + 2 * UINT32_LENGTH, chunkLength);
2092
+ var glTFData = new Uint8Array(originBuffer, GLB_HEADER_LENGTH + 2 * UINT32_LENGTH, chunkLength);
2092
2093
  var glTF = JSON.parse(miniprogram.Utils.decodeText(glTFData));
2093
2094
  // read all buffers
2094
2095
  var buffers = [];
@@ -2102,7 +2103,7 @@ function registerGLTFParser(pipeline) {
2102
2103
  return null;
2103
2104
  }
2104
2105
  var currentOffset = byteOffset + 2 * UINT32_LENGTH;
2105
- var buffer = glb.slice(currentOffset, currentOffset + chunkLength);
2106
+ var buffer = originBuffer.slice(currentOffset, currentOffset + chunkLength);
2106
2107
  buffers.push(buffer);
2107
2108
  restoreGLBBufferSlice.push(new miniprogram$1.Vector2(currentOffset, chunkLength));
2108
2109
  byteOffset += chunkLength + 2 * UINT32_LENGTH;
@@ -3512,23 +3513,20 @@ exports.GLTFSchemaParser = /*#__PURE__*/ function(GLTFParser1) {
3512
3513
  var requestConfig = {
3513
3514
  type: "arraybuffer"
3514
3515
  };
3515
- var isGLB = this._isGLB(url);
3516
- contentRestorer.isGLB = isGLB;
3517
- var promise = isGLB ? miniprogram.request(url, requestConfig).then(function(glb) {
3516
+ return miniprogram.request(url, requestConfig).then(function(buffer) {
3518
3517
  restoreBufferRequests.push(new BufferRequestInfo(url, requestConfig));
3519
- return GLTFUtils.parseGLB(context, glb);
3520
- }).then(function(param) {
3521
- var glTF = param.glTF, buffers = param.buffers;
3522
- context.buffers = buffers;
3523
- return glTF;
3524
- }) : miniprogram.request(url, {
3525
- type: "json"
3518
+ return GLTFUtils.parseGLB(context, buffer);
3519
+ }).then(function(result) {
3520
+ var _result;
3521
+ if ((_result = result) == null ? void 0 : _result.glTF) {
3522
+ contentRestorer.isGLB = true;
3523
+ context.buffers = result.buffers;
3524
+ return result.glTF;
3525
+ } else {
3526
+ contentRestorer.isGLB = false;
3527
+ return JSON.parse(miniprogram.Utils.decodeText(new Uint8Array(result.originBuffer)));
3528
+ }
3526
3529
  });
3527
- return promise;
3528
- };
3529
- _proto._isGLB = function _isGLB(url) {
3530
- var index = url.lastIndexOf(".");
3531
- return url.substring(index + 1, index + 4) === "glb";
3532
3530
  };
3533
3531
  return GLTFSchemaParser;
3534
3532
  }(GLTFParser);
package/dist/module.js CHANGED
@@ -2056,7 +2056,7 @@ function registerGLTFParser(pipeline) {
2056
2056
  };
2057
2057
  /**
2058
2058
  * Parse the glb format.
2059
- */ GLTFUtils.parseGLB = function parseGLB(context, glb) {
2059
+ */ GLTFUtils.parseGLB = function parseGLB(context, originBuffer) {
2060
2060
  var UINT32_LENGTH = 4;
2061
2061
  var GLB_HEADER_MAGIC = 0x46546c67; // 'glTF'
2062
2062
  var GLB_HEADER_LENGTH = 12;
@@ -2064,7 +2064,7 @@ function registerGLTFParser(pipeline) {
2064
2064
  JSON: 0x4e4f534a,
2065
2065
  BIN: 0x004e4942
2066
2066
  };
2067
- var dataView = new DataView(glb);
2067
+ var dataView = new DataView(originBuffer);
2068
2068
  // read header
2069
2069
  var header = {
2070
2070
  magic: dataView.getUint32(0, true),
@@ -2072,8 +2072,9 @@ function registerGLTFParser(pipeline) {
2072
2072
  length: dataView.getUint32(2 * UINT32_LENGTH, true)
2073
2073
  };
2074
2074
  if (header.magic !== GLB_HEADER_MAGIC) {
2075
- console.error("Invalid glb magic number. Expected 0x46546C67, found 0x" + header.magic.toString(16));
2076
- return null;
2075
+ return {
2076
+ originBuffer: originBuffer
2077
+ };
2077
2078
  }
2078
2079
  // read main data
2079
2080
  var chunkLength = dataView.getUint32(GLB_HEADER_LENGTH, true);
@@ -2083,7 +2084,7 @@ function registerGLTFParser(pipeline) {
2083
2084
  console.error("Invalid glb chunk type. Expected 0x4E4F534A, found 0x" + chunkType.toString(16));
2084
2085
  return null;
2085
2086
  }
2086
- var glTFData = new Uint8Array(glb, GLB_HEADER_LENGTH + 2 * UINT32_LENGTH, chunkLength);
2087
+ var glTFData = new Uint8Array(originBuffer, GLB_HEADER_LENGTH + 2 * UINT32_LENGTH, chunkLength);
2087
2088
  var glTF = JSON.parse(Utils.decodeText(glTFData));
2088
2089
  // read all buffers
2089
2090
  var buffers = [];
@@ -2097,7 +2098,7 @@ function registerGLTFParser(pipeline) {
2097
2098
  return null;
2098
2099
  }
2099
2100
  var currentOffset = byteOffset + 2 * UINT32_LENGTH;
2100
- var buffer = glb.slice(currentOffset, currentOffset + chunkLength);
2101
+ var buffer = originBuffer.slice(currentOffset, currentOffset + chunkLength);
2101
2102
  buffers.push(buffer);
2102
2103
  restoreGLBBufferSlice.push(new Vector2(currentOffset, chunkLength));
2103
2104
  byteOffset += chunkLength + 2 * UINT32_LENGTH;
@@ -3507,23 +3508,20 @@ var GLTFSchemaParser = /*#__PURE__*/ function(GLTFParser1) {
3507
3508
  var requestConfig = {
3508
3509
  type: "arraybuffer"
3509
3510
  };
3510
- var isGLB = this._isGLB(url);
3511
- contentRestorer.isGLB = isGLB;
3512
- var promise = isGLB ? request(url, requestConfig).then(function(glb) {
3511
+ return request(url, requestConfig).then(function(buffer) {
3513
3512
  restoreBufferRequests.push(new BufferRequestInfo(url, requestConfig));
3514
- return GLTFUtils.parseGLB(context, glb);
3515
- }).then(function(param) {
3516
- var glTF = param.glTF, buffers = param.buffers;
3517
- context.buffers = buffers;
3518
- return glTF;
3519
- }) : request(url, {
3520
- type: "json"
3513
+ return GLTFUtils.parseGLB(context, buffer);
3514
+ }).then(function(result) {
3515
+ var _result;
3516
+ if ((_result = result) == null ? void 0 : _result.glTF) {
3517
+ contentRestorer.isGLB = true;
3518
+ context.buffers = result.buffers;
3519
+ return result.glTF;
3520
+ } else {
3521
+ contentRestorer.isGLB = false;
3522
+ return JSON.parse(Utils.decodeText(new Uint8Array(result.originBuffer)));
3523
+ }
3521
3524
  });
3522
- return promise;
3523
- };
3524
- _proto._isGLB = function _isGLB(url) {
3525
- var index = url.lastIndexOf(".");
3526
- return url.substring(index + 1, index + 4) === "glb";
3527
3525
  };
3528
3526
  return GLTFSchemaParser;
3529
3527
  }(GLTFParser);