@galacean/engine-loader 1.3.26 → 1.3.28
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.
- package/dist/main.js +450 -406
- package/dist/main.js.map +1 -1
- package/dist/miniprogram.js +449 -405
- package/dist/module.js +451 -407
- package/dist/module.js.map +1 -1
- package/package.json +4 -4
- package/types/gltf/GLTFUtils.d.ts +3 -3
- package/types/gltf/extensions/GLTFExtensionParser.d.ts +3 -3
- package/types/gltf/parser/GLTFAnimationParser.d.ts +3 -3
- package/types/gltf/parser/GLTFAnimatorControllerParser.d.ts +2 -2
- package/types/gltf/parser/GLTFBufferParser.d.ts +2 -1
- package/types/gltf/parser/GLTFBufferViewParser.d.ts +3 -2
- package/types/gltf/parser/GLTFMaterialParser.d.ts +2 -5
- package/types/gltf/parser/GLTFMeshParser.d.ts +4 -4
- package/types/gltf/parser/GLTFParser.d.ts +2 -2
- package/types/gltf/parser/GLTFParserContext.d.ts +10 -8
- package/types/gltf/parser/GLTFSceneParser.d.ts +2 -2
- package/types/gltf/parser/GLTFSkinParser.d.ts +2 -2
- package/types/gltf/parser/GLTFTextureParser.d.ts +3 -3
- package/types/gltf/parser/GLTFValidator.d.ts +2 -1
- package/types/resource-deserialize/index.d.ts +2 -2
- package/types/resource-deserialize/resources/animationClip/AnimationClipDecoder.d.ts +2 -2
- package/types/resource-deserialize/resources/mesh/MeshDecoder.d.ts +2 -2
- package/types/resource-deserialize/resources/texture2D/TextureDecoder.d.ts +3 -2
- package/types/resource-deserialize/utils/Decorator.d.ts +2 -2
package/dist/main.js
CHANGED
|
@@ -286,7 +286,7 @@ var FileHeader = /*#__PURE__*/ function() {
|
|
|
286
286
|
exports.MeshDecoder = /*#__PURE__*/ function() {
|
|
287
287
|
function MeshDecoder() {}
|
|
288
288
|
MeshDecoder.decode = function decode(engine, bufferReader) {
|
|
289
|
-
return new
|
|
289
|
+
return new engineCore.AssetPromise(function(resolve) {
|
|
290
290
|
var modelMesh = new engineCore.ModelMesh(engine);
|
|
291
291
|
var jsonDataString = bufferReader.nextStr();
|
|
292
292
|
var encodedMeshData = JSON.parse(jsonDataString);
|
|
@@ -420,7 +420,8 @@ function float32ArrayToVector2(float32Array, vertexCount) {
|
|
|
420
420
|
exports.Texture2DDecoder = /*#__PURE__*/ function() {
|
|
421
421
|
function Texture2DDecoder() {}
|
|
422
422
|
Texture2DDecoder.decode = function decode(engine, bufferReader) {
|
|
423
|
-
|
|
423
|
+
var _this = this;
|
|
424
|
+
return new engineCore.AssetPromise(function(resolve, reject) {
|
|
424
425
|
var objectId = bufferReader.nextStr();
|
|
425
426
|
var mipmap = !!bufferReader.nextUint8();
|
|
426
427
|
var filterMode = bufferReader.nextUint8();
|
|
@@ -452,40 +453,52 @@ exports.Texture2DDecoder = /*#__PURE__*/ function() {
|
|
|
452
453
|
engine.resourceManager._objectPool[objectId] = texture2D;
|
|
453
454
|
resolve(texture2D);
|
|
454
455
|
} else {
|
|
455
|
-
var
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
texture2D.setImageSource(img);
|
|
461
|
-
var completedCount = 0;
|
|
462
|
-
var onComplete = function() {
|
|
463
|
-
completedCount++;
|
|
464
|
-
if (completedCount >= mipCount) {
|
|
465
|
-
resolve(texture2D);
|
|
466
|
-
}
|
|
467
|
-
};
|
|
468
|
-
onComplete();
|
|
469
|
-
if (mipmap) {
|
|
470
|
-
var _loop = function(i) {
|
|
471
|
-
var blob = new window.Blob([
|
|
472
|
-
imagesData[i]
|
|
473
|
-
]);
|
|
474
|
-
var img = new Image();
|
|
475
|
-
img.onload = function() {
|
|
476
|
-
texture2D.setImageSource(img, i);
|
|
477
|
-
onComplete();
|
|
478
|
-
};
|
|
479
|
-
img.src = URL.createObjectURL(blob);
|
|
480
|
-
};
|
|
481
|
-
texture2D.generateMipmaps();
|
|
482
|
-
for(var i = 1; i < mipCount; i++)_loop(i);
|
|
456
|
+
var completedCount = 0;
|
|
457
|
+
var onComplete = function() {
|
|
458
|
+
completedCount++;
|
|
459
|
+
if (completedCount >= mipCount) {
|
|
460
|
+
resolve(texture2D);
|
|
483
461
|
}
|
|
484
462
|
};
|
|
485
|
-
|
|
463
|
+
_this._loadImageBuffer(imagesData[0]).then(function(img) {
|
|
464
|
+
texture2D.setImageSource(img);
|
|
465
|
+
onComplete();
|
|
466
|
+
}, reject);
|
|
467
|
+
if (mipmap) {
|
|
468
|
+
var _loop = function(i1) {
|
|
469
|
+
_this._loadImageBuffer(imagesData[i1]).then(function(img) {
|
|
470
|
+
texture2D.setImageSource(img, i1);
|
|
471
|
+
onComplete();
|
|
472
|
+
}, reject);
|
|
473
|
+
};
|
|
474
|
+
texture2D.generateMipmaps();
|
|
475
|
+
for(var i1 = 1; i1 < mipCount; i1++)_loop(i1);
|
|
476
|
+
}
|
|
486
477
|
}
|
|
487
478
|
});
|
|
488
479
|
};
|
|
480
|
+
Texture2DDecoder._loadImageBuffer = function _loadImageBuffer(imageBuffer) {
|
|
481
|
+
return new Promise(function(resolve, reject) {
|
|
482
|
+
var blob = new window.Blob([
|
|
483
|
+
imageBuffer
|
|
484
|
+
]);
|
|
485
|
+
var img = new Image();
|
|
486
|
+
img.onerror = function() {
|
|
487
|
+
reject(new Error("Failed to load image buffer"));
|
|
488
|
+
};
|
|
489
|
+
img.onload = function() {
|
|
490
|
+
// Call requestAnimationFrame to avoid iOS's bug.
|
|
491
|
+
requestAnimationFrame(function() {
|
|
492
|
+
resolve(img);
|
|
493
|
+
img.onload = null;
|
|
494
|
+
img.onerror = null;
|
|
495
|
+
img.onabort = null;
|
|
496
|
+
});
|
|
497
|
+
};
|
|
498
|
+
img.crossOrigin = "anonymous";
|
|
499
|
+
img.src = URL.createObjectURL(blob);
|
|
500
|
+
});
|
|
501
|
+
};
|
|
489
502
|
return Texture2DDecoder;
|
|
490
503
|
}();
|
|
491
504
|
exports.Texture2DDecoder = __decorate([
|
|
@@ -744,7 +757,7 @@ exports.InterpolableValueType = void 0;
|
|
|
744
757
|
exports.AnimationClipDecoder = /*#__PURE__*/ function() {
|
|
745
758
|
function AnimationClipDecoder() {}
|
|
746
759
|
AnimationClipDecoder.decode = function decode(engine, bufferReader) {
|
|
747
|
-
return new
|
|
760
|
+
return new engineCore.AssetPromise(function(resolve) {
|
|
748
761
|
var name = bufferReader.nextStr();
|
|
749
762
|
var clip = new engineCore.AnimationClip(name);
|
|
750
763
|
var eventsLen = bufferReader.nextUint16();
|
|
@@ -1336,15 +1349,11 @@ exports.EditorTextureLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
1336
1349
|
}
|
|
1337
1350
|
var _proto = EditorTextureLoader.prototype;
|
|
1338
1351
|
_proto.load = function load(item, resourceManager) {
|
|
1339
|
-
return
|
|
1340
|
-
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
decode(data, resourceManager.engine).then(function(texture) {
|
|
1345
|
-
resolve(texture);
|
|
1346
|
-
});
|
|
1347
|
-
}).catch(reject);
|
|
1352
|
+
return resourceManager// @ts-ignore
|
|
1353
|
+
._request(item.url, _extends({}, item, {
|
|
1354
|
+
type: "arraybuffer"
|
|
1355
|
+
})).then(function(data) {
|
|
1356
|
+
return decode(data, resourceManager.engine);
|
|
1348
1357
|
});
|
|
1349
1358
|
};
|
|
1350
1359
|
return EditorTextureLoader;
|
|
@@ -1430,79 +1439,77 @@ var AnimatorControllerLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
1430
1439
|
var _proto = AnimatorControllerLoader.prototype;
|
|
1431
1440
|
_proto.load = function load(item, resourceManager) {
|
|
1432
1441
|
var _this = this;
|
|
1433
|
-
return
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1437
|
-
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
|
|
1442
|
-
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1447
|
-
|
|
1448
|
-
|
|
1449
|
-
|
|
1450
|
-
|
|
1451
|
-
|
|
1452
|
-
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
state.addStateMachineScript(engineCore.Loader.getClass(script));
|
|
1460
|
-
});
|
|
1461
|
-
statesMap[id] = state;
|
|
1462
|
-
if (clipData) {
|
|
1463
|
-
promises.push(new Promise(function(resolve) {
|
|
1464
|
-
//@ts-ignore
|
|
1465
|
-
resourceManager.getResourceByRef(clipData).then(function(clip) {
|
|
1466
|
-
resolve({
|
|
1467
|
-
layerIndex: layerIndex,
|
|
1468
|
-
stateIndex: stateIndex,
|
|
1469
|
-
clip: clip
|
|
1470
|
-
});
|
|
1471
|
-
});
|
|
1472
|
-
}));
|
|
1473
|
-
}
|
|
1474
|
-
});
|
|
1475
|
-
transitions.forEach(function(transitionData) {
|
|
1476
|
-
var transition = _this._createTransition(transitionData, statesMap[transitionData.destinationStateId]);
|
|
1477
|
-
transitionsMap[transitionData.id] = transition;
|
|
1478
|
-
});
|
|
1479
|
-
states.forEach(function(stateData) {
|
|
1480
|
-
var id = stateData.id, transitions = stateData.transitions;
|
|
1481
|
-
transitions.forEach(function(transitionId) {
|
|
1482
|
-
var transition = transitionsMap[transitionId];
|
|
1483
|
-
transition && statesMap[id].addTransition(transition);
|
|
1484
|
-
});
|
|
1485
|
-
});
|
|
1486
|
-
entryTransitions.forEach(function(entryTransitionData) {
|
|
1487
|
-
stateMachine.addEntryStateTransition(_this._createTransition(entryTransitionData, statesMap[entryTransitionData.destinationStateId]));
|
|
1442
|
+
return resourceManager// @ts-ignore
|
|
1443
|
+
._request(item.url, _extends({}, item, {
|
|
1444
|
+
type: "json"
|
|
1445
|
+
})).then(function(data) {
|
|
1446
|
+
var animatorController = new engineCore.AnimatorController(resourceManager.engine);
|
|
1447
|
+
var layers = data.layers, parameters = data.parameters;
|
|
1448
|
+
var promises = [];
|
|
1449
|
+
layers.forEach(function(layerData, layerIndex) {
|
|
1450
|
+
var name = layerData.name, blendingMode = layerData.blendingMode, weight = layerData.weight, stateMachineData = layerData.stateMachine;
|
|
1451
|
+
var layer = new engineCore.AnimatorControllerLayer(name);
|
|
1452
|
+
layer.blendingMode = blendingMode;
|
|
1453
|
+
layer.weight = weight;
|
|
1454
|
+
if (stateMachineData) {
|
|
1455
|
+
var states = stateMachineData.states, transitions = stateMachineData.transitions, entryTransitions = stateMachineData.entryTransitions, anyTransitions = stateMachineData.anyTransitions;
|
|
1456
|
+
var stateMachine = layer.stateMachine;
|
|
1457
|
+
var statesMap = {};
|
|
1458
|
+
var transitionsMap = {};
|
|
1459
|
+
states.forEach(function(stateData, stateIndex) {
|
|
1460
|
+
var id = stateData.id, name = stateData.name, speed = stateData.speed, wrapMode = stateData.wrapMode, clipStartNormalizedTime = stateData.clipStartNormalizedTime, clipEndNormalizedTime = stateData.clipEndNormalizedTime, clipData = stateData.clip, scripts = stateData.scripts;
|
|
1461
|
+
var state = stateMachine.addState(name);
|
|
1462
|
+
state.speed = speed;
|
|
1463
|
+
state.wrapMode = wrapMode;
|
|
1464
|
+
state.clipStartTime = clipStartNormalizedTime;
|
|
1465
|
+
state.clipEndTime = clipEndNormalizedTime;
|
|
1466
|
+
scripts.forEach(function(script) {
|
|
1467
|
+
state.addStateMachineScript(engineCore.Loader.getClass(script));
|
|
1488
1468
|
});
|
|
1489
|
-
|
|
1490
|
-
|
|
1469
|
+
statesMap[id] = state;
|
|
1470
|
+
if (clipData) {
|
|
1471
|
+
promises.push(//@ts-ignore
|
|
1472
|
+
resourceManager.getResourceByRef(clipData).then(function(clip) {
|
|
1473
|
+
return {
|
|
1474
|
+
layerIndex: layerIndex,
|
|
1475
|
+
stateIndex: stateIndex,
|
|
1476
|
+
clip: clip
|
|
1477
|
+
};
|
|
1478
|
+
}));
|
|
1479
|
+
}
|
|
1480
|
+
});
|
|
1481
|
+
transitions.forEach(function(transitionData) {
|
|
1482
|
+
var transition = _this._createTransition(transitionData, statesMap[transitionData.destinationStateId]);
|
|
1483
|
+
transitionsMap[transitionData.id] = transition;
|
|
1484
|
+
});
|
|
1485
|
+
states.forEach(function(stateData) {
|
|
1486
|
+
var id = stateData.id, transitions = stateData.transitions;
|
|
1487
|
+
transitions.forEach(function(transitionId) {
|
|
1488
|
+
var transition = transitionsMap[transitionId];
|
|
1489
|
+
transition && statesMap[id].addTransition(transition);
|
|
1491
1490
|
});
|
|
1492
|
-
}
|
|
1493
|
-
|
|
1494
|
-
|
|
1495
|
-
|
|
1496
|
-
|
|
1497
|
-
|
|
1498
|
-
|
|
1491
|
+
});
|
|
1492
|
+
entryTransitions.forEach(function(entryTransitionData) {
|
|
1493
|
+
stateMachine.addEntryStateTransition(_this._createTransition(entryTransitionData, statesMap[entryTransitionData.destinationStateId]));
|
|
1494
|
+
});
|
|
1495
|
+
anyTransitions.forEach(function(anyTransitionData) {
|
|
1496
|
+
stateMachine.addAnyStateTransition(_this._createTransition(anyTransitionData, statesMap[anyTransitionData.destinationStateId]));
|
|
1497
|
+
});
|
|
1498
|
+
}
|
|
1499
|
+
animatorController.addLayer(layer);
|
|
1500
|
+
});
|
|
1501
|
+
parameters.forEach(function(parameterData) {
|
|
1502
|
+
animatorController.addParameter(parameterData.name, parameterData.defaultValue);
|
|
1503
|
+
});
|
|
1504
|
+
return new engineCore.AssetPromise(function(resolve, reject) {
|
|
1505
|
+
engineCore.AssetPromise.all(promises).then(function(clipData) {
|
|
1499
1506
|
clipData.forEach(function(data) {
|
|
1500
1507
|
var layerIndex = data.layerIndex, stateIndex = data.stateIndex, clip = data.clip;
|
|
1501
1508
|
animatorController.layers[layerIndex].stateMachine.states[stateIndex].clip = clip;
|
|
1502
1509
|
});
|
|
1503
1510
|
resolve(animatorController);
|
|
1504
|
-
});
|
|
1505
|
-
})
|
|
1511
|
+
}, reject).catch(reject);
|
|
1512
|
+
});
|
|
1506
1513
|
});
|
|
1507
1514
|
};
|
|
1508
1515
|
_proto._createTransition = function _createTransition(transitionData, destinationState) {
|
|
@@ -1703,6 +1710,203 @@ FontLoader = __decorate([
|
|
|
1703
1710
|
], false)
|
|
1704
1711
|
], FontLoader);
|
|
1705
1712
|
|
|
1713
|
+
// Source: https://github.com/zeux/meshoptimizer/blob/master/js/meshopt_decoder.js
|
|
1714
|
+
var ready;
|
|
1715
|
+
function getMeshoptDecoder() {
|
|
1716
|
+
var unpack = function unpack(data) {
|
|
1717
|
+
var result = new Uint8Array(data.length);
|
|
1718
|
+
for(var i = 0; i < data.length; ++i){
|
|
1719
|
+
var ch = data.charCodeAt(i);
|
|
1720
|
+
result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
|
|
1721
|
+
}
|
|
1722
|
+
var write = 0;
|
|
1723
|
+
for(var i1 = 0; i1 < data.length; ++i1){
|
|
1724
|
+
result[write++] = result[i1] < 60 ? wasmpack[result[i1]] : (result[i1] - 60) * 64 + result[++i1];
|
|
1725
|
+
}
|
|
1726
|
+
return result.buffer.slice(0, write);
|
|
1727
|
+
};
|
|
1728
|
+
var decode = function decode(fun, target, count, size, source, filter) {
|
|
1729
|
+
var sbrk = instance.exports.sbrk;
|
|
1730
|
+
var count4 = count + 3 & ~3;
|
|
1731
|
+
var tp = sbrk(count4 * size);
|
|
1732
|
+
var sp = sbrk(source.length);
|
|
1733
|
+
var heap = new Uint8Array(instance.exports.memory.buffer);
|
|
1734
|
+
heap.set(source, sp);
|
|
1735
|
+
var res = fun(tp, count, size, sp, source.length);
|
|
1736
|
+
if (res == 0 && filter) {
|
|
1737
|
+
filter(tp, count4, size);
|
|
1738
|
+
}
|
|
1739
|
+
target.set(heap.subarray(tp, tp + count * size));
|
|
1740
|
+
sbrk(tp - sbrk(0));
|
|
1741
|
+
if (res != 0) {
|
|
1742
|
+
throw new Error("Malformed buffer data: " + res);
|
|
1743
|
+
}
|
|
1744
|
+
};
|
|
1745
|
+
var createWorker = function createWorker(url) {
|
|
1746
|
+
var worker = {
|
|
1747
|
+
object: new Worker(url),
|
|
1748
|
+
pending: 0,
|
|
1749
|
+
requests: {}
|
|
1750
|
+
};
|
|
1751
|
+
worker.object.onmessage = function(event) {
|
|
1752
|
+
var data = event.data;
|
|
1753
|
+
worker.pending -= data.count;
|
|
1754
|
+
worker.requests[data.id][data.action](data.value);
|
|
1755
|
+
delete worker.requests[data.id];
|
|
1756
|
+
};
|
|
1757
|
+
return worker;
|
|
1758
|
+
};
|
|
1759
|
+
var initWorkers = function initWorkers(count) {
|
|
1760
|
+
var source = "var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" + ".then(function(result) {instance = result.instance; instance.exports.__wasm_call_ctors();});\n" + "self.onmessage = workerProcess;\n" + 'function decode(fun, target, count, size, source, filter) {\n const sbrk = instance.exports.sbrk;\n const count4 = (count + 3) & ~3;\n const tp = sbrk(count4 * size);\n const sp = sbrk(source.length);\n const heap = new Uint8Array(instance.exports.memory.buffer);\n heap.set(source, sp);\n const res = fun(tp, count, size, sp, source.length);\n if (res == 0 && filter) {\n filter(tp, count4, size);\n }\n target.set(heap.subarray(tp, tp + count * size));\n sbrk(tp - sbrk(0));\n if (res != 0) {\n throw new Error("Malformed buffer data: " + res);\n }\n }\n' + 'function workerProcess(event) {\n ready.then(function () {\n const data = event.data;\n try {\n const target = new Uint8Array(data.count * data.size);\n decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);\n self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [target.buffer]);\n } catch (error) {\n self.postMessage({\n id: data.id,\n count: data.count,\n action: "reject",\n value: error\n });\n }\n });\n }';
|
|
1761
|
+
var blob = new Blob([
|
|
1762
|
+
source
|
|
1763
|
+
], {
|
|
1764
|
+
type: "text/javascript"
|
|
1765
|
+
});
|
|
1766
|
+
var url = URL.createObjectURL(blob);
|
|
1767
|
+
for(var i = 0; i < count; ++i){
|
|
1768
|
+
workers[i] = createWorker(url);
|
|
1769
|
+
}
|
|
1770
|
+
URL.revokeObjectURL(url);
|
|
1771
|
+
};
|
|
1772
|
+
var decodeWorker = function decodeWorker(count, size, source, mode, filter) {
|
|
1773
|
+
var worker = workers[0];
|
|
1774
|
+
for(var i = 1; i < workers.length; ++i){
|
|
1775
|
+
if (workers[i].pending < worker.pending) {
|
|
1776
|
+
worker = workers[i];
|
|
1777
|
+
}
|
|
1778
|
+
}
|
|
1779
|
+
return new Promise(function(resolve, reject) {
|
|
1780
|
+
var data = new Uint8Array(source);
|
|
1781
|
+
var id = requestId++;
|
|
1782
|
+
worker.pending += count;
|
|
1783
|
+
worker.requests[id] = {
|
|
1784
|
+
resolve: resolve,
|
|
1785
|
+
reject: reject
|
|
1786
|
+
};
|
|
1787
|
+
worker.object.postMessage({
|
|
1788
|
+
id: id,
|
|
1789
|
+
count: count,
|
|
1790
|
+
size: size,
|
|
1791
|
+
source: data,
|
|
1792
|
+
mode: mode,
|
|
1793
|
+
filter: filter
|
|
1794
|
+
}, [
|
|
1795
|
+
data.buffer
|
|
1796
|
+
]);
|
|
1797
|
+
});
|
|
1798
|
+
};
|
|
1799
|
+
if (ready) return ready;
|
|
1800
|
+
var wasm_base = "b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:P8Yqdbk;3sezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfgocl4cifcd4hxdndndndnaoc9WGgmTmbcbhPcehsawcjdfhzalhHinaraH9Rax6midnaraHaxfgl9RcK6mbczhoinawcj;cbfaogifgoc9WfhOdndndndndnaHaic9WfgAco4fRbbaAci4coG4ciGPlbedibkaO9cb83ibaOcwf9cb83ibxikaOalRblalRbbgAco4gCaCciSgCE86bbaocGfalclfaCfgORbbaAcl4ciGgCaCciSgCE86bbaocVfaOaCfgORbbaAcd4ciGgCaCciSgCE86bbaoc7faOaCfgORbbaAciGgAaAciSgAE86bbaoctfaOaAfgARbbalRbegOco4gCaCciSgCE86bbaoc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc93faAaCfgARbbaOciGgOaOciSgOE86bbaoc94faAaOfgARbbalRbdgOco4gCaCciSgCE86bbaoc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc97faAaCfgARbbaOciGgOaOciSgOE86bbaoc98faAaOfgORbbalRbiglco4gAaAciSgAE86bbaoc99faOaAfgORbbalcl4ciGgAaAciSgAE86bbaoc9:faOaAfgORbbalcd4ciGgAaAciSgAE86bbaocufaOaAfgoRbbalciGglalciSglE86bbaoalfhlxdkaOalRbwalRbbgAcl4gCaCcsSgCE86bbaocGfalcwfaCfgORbbaAcsGgAaAcsSgAE86bbaocVfaOaAfgORbbalRbegAcl4gCaCcsSgCE86bbaoc7faOaCfgORbbaAcsGgAaAcsSgAE86bbaoctfaOaAfgORbbalRbdgAcl4gCaCcsSgCE86bbaoc91faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc4faOaAfgORbbalRbigAcl4gCaCcsSgCE86bbaoc93faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc94faOaAfgORbbalRblgAcl4gCaCcsSgCE86bbaoc95faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc96faOaAfgORbbalRbvgAcl4gCaCcsSgCE86bbaoc97faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc98faOaAfgORbbalRbogAcl4gCaCcsSgCE86bbaoc99faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc9:faOaAfgORbbalRbrglcl4gAaAcsSgAE86bbaocufaOaAfgoRbbalcsGglalcsSglE86bbaoalfhlxekaOal8Pbb83bbaOcwfalcwf8Pbb83bbalczfhlkdnaiam9pmbaiczfhoaral9RcL0mekkaiam6mialTmidnakTmbawaPfRbbhOcbhoazhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkkazcefhzaPcefgPad6hsalhHaPad9hmexvkkcbhlasceGmdxikalaxad2fhCdnakTmbcbhHcehsawcjdfhminaral9Rax6mialTmdalaxfhlawaHfRbbhOcbhoamhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkamcefhmaHcefgHad6hsaHad9hmbkaChlxikcbhocehsinaral9Rax6mdalTmealaxfhlaocefgoad6hsadao9hmbkaChlxdkcbhlasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqalmbkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;yzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabavcefciGaiVcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabavcdfciGaiVcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabavcufciGaiVcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabavciGaiVcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2geTmbinababydbgdcwtcw91:Yadce91cjjj;8ifcjjj98G::NUdbabclfhbaecufgembkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaiczfhiaeczfheadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb";
|
|
1801
|
+
var wasm_simd = "b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;t9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;h8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincehHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAci6hHalhOaAcefgohAaoclSmdxekkcbhlaHceGmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;uzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:EPliuo97eue978Jjjjjbca9Rhidndnadcl9hmbdnaec98GglTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaiaeciGgvcdtgdVcbczad9R;8kbaiabalcdtfglad;8qbbdnavTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkalaiad;8qbbskdnaec98GgxTmbcbhvabhdinadczfglalpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgvax6mbkkaxae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabaxcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbhdabheinaeaepbbbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepkbbaeczfheadclfgdav6mbkkdnaval9pmbaialciGgdcdtgeVcbc;abae9R;8kbaiabavcdtfgvae;8qbbdnadTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepklbkavaiae;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb";
|
|
1802
|
+
var wasmpack = new Uint8Array([
|
|
1803
|
+
32,
|
|
1804
|
+
0,
|
|
1805
|
+
65,
|
|
1806
|
+
2,
|
|
1807
|
+
1,
|
|
1808
|
+
106,
|
|
1809
|
+
34,
|
|
1810
|
+
33,
|
|
1811
|
+
3,
|
|
1812
|
+
128,
|
|
1813
|
+
11,
|
|
1814
|
+
4,
|
|
1815
|
+
13,
|
|
1816
|
+
64,
|
|
1817
|
+
6,
|
|
1818
|
+
253,
|
|
1819
|
+
10,
|
|
1820
|
+
7,
|
|
1821
|
+
15,
|
|
1822
|
+
116,
|
|
1823
|
+
127,
|
|
1824
|
+
5,
|
|
1825
|
+
8,
|
|
1826
|
+
12,
|
|
1827
|
+
40,
|
|
1828
|
+
16,
|
|
1829
|
+
19,
|
|
1830
|
+
54,
|
|
1831
|
+
20,
|
|
1832
|
+
9,
|
|
1833
|
+
27,
|
|
1834
|
+
255,
|
|
1835
|
+
113,
|
|
1836
|
+
17,
|
|
1837
|
+
42,
|
|
1838
|
+
67,
|
|
1839
|
+
24,
|
|
1840
|
+
23,
|
|
1841
|
+
146,
|
|
1842
|
+
148,
|
|
1843
|
+
18,
|
|
1844
|
+
14,
|
|
1845
|
+
22,
|
|
1846
|
+
45,
|
|
1847
|
+
70,
|
|
1848
|
+
69,
|
|
1849
|
+
56,
|
|
1850
|
+
114,
|
|
1851
|
+
101,
|
|
1852
|
+
21,
|
|
1853
|
+
25,
|
|
1854
|
+
63,
|
|
1855
|
+
75,
|
|
1856
|
+
136,
|
|
1857
|
+
108,
|
|
1858
|
+
28,
|
|
1859
|
+
118,
|
|
1860
|
+
29,
|
|
1861
|
+
73,
|
|
1862
|
+
115
|
|
1863
|
+
]);
|
|
1864
|
+
// @ts-ignore
|
|
1865
|
+
var wasm = engineCore.SystemInfo._detectSIMDSupported() ? wasm_simd : wasm_base;
|
|
1866
|
+
var instance;
|
|
1867
|
+
ready = WebAssembly.instantiate(unpack(wasm)).then(function(result) {
|
|
1868
|
+
instance = result.instance;
|
|
1869
|
+
instance.exports.__wasm_call_ctors();
|
|
1870
|
+
}).then(function() {
|
|
1871
|
+
return {
|
|
1872
|
+
workerCount: 4,
|
|
1873
|
+
ready: ready,
|
|
1874
|
+
useWorkers: function useWorkers(workerCount) {
|
|
1875
|
+
this.workerCount = workerCount != null ? workerCount : this.workerCount;
|
|
1876
|
+
initWorkers(this.workerCount);
|
|
1877
|
+
},
|
|
1878
|
+
decodeGltfBuffer: function decodeGltfBuffer(count, stride, source, mode, filter) {
|
|
1879
|
+
if (this.workerCount > 0 && workers.length === 0) this.useWorkers();
|
|
1880
|
+
if (workers.length > 0) return decodeWorker(count, stride, source, decoders[mode], filters[filter]);
|
|
1881
|
+
return ready.then(function() {
|
|
1882
|
+
var target = new Uint8Array(count * stride);
|
|
1883
|
+
decode(instance.exports[decoders[mode]], target, count, stride, source, instance.exports[filters[filter]]);
|
|
1884
|
+
return target;
|
|
1885
|
+
});
|
|
1886
|
+
},
|
|
1887
|
+
release: function release() {
|
|
1888
|
+
for(var i = 0; i < workers.length; i++){
|
|
1889
|
+
workers[i].object.terminate();
|
|
1890
|
+
}
|
|
1891
|
+
}
|
|
1892
|
+
};
|
|
1893
|
+
});
|
|
1894
|
+
var filters = {
|
|
1895
|
+
NONE: "",
|
|
1896
|
+
OCTAHEDRAL: "meshopt_decodeFilterOct",
|
|
1897
|
+
QUATERNION: "meshopt_decodeFilterQuat",
|
|
1898
|
+
EXPONENTIAL: "meshopt_decodeFilterExp"
|
|
1899
|
+
};
|
|
1900
|
+
var decoders = {
|
|
1901
|
+
ATTRIBUTES: "meshopt_decodeVertexBuffer",
|
|
1902
|
+
TRIANGLES: "meshopt_decodeIndexBuffer",
|
|
1903
|
+
INDICES: "meshopt_decodeIndexSequence"
|
|
1904
|
+
};
|
|
1905
|
+
var workers = [];
|
|
1906
|
+
var requestId = 0;
|
|
1907
|
+
return ready;
|
|
1908
|
+
}
|
|
1909
|
+
|
|
1706
1910
|
/**
|
|
1707
1911
|
* The glTF resource.
|
|
1708
1912
|
*/ var GLTFResource = /*#__PURE__*/ function(ReferResource1) {
|
|
@@ -1729,14 +1933,16 @@ FontLoader = __decorate([
|
|
|
1729
1933
|
materials && this._disassociationSuperResource(materials);
|
|
1730
1934
|
if (meshes) {
|
|
1731
1935
|
for(var i = 0, n = meshes.length; i < n; i++){
|
|
1732
|
-
|
|
1936
|
+
var meshArr = meshes[i];
|
|
1937
|
+
meshArr && this._disassociationSuperResource(meshArr);
|
|
1733
1938
|
}
|
|
1734
1939
|
}
|
|
1735
1940
|
};
|
|
1736
1941
|
_proto._disassociationSuperResource = function _disassociationSuperResource(resources) {
|
|
1737
1942
|
for(var i = 0, n = resources.length; i < n; i++){
|
|
1738
|
-
// @ts-ignore
|
|
1739
|
-
|
|
1943
|
+
var // @ts-ignore
|
|
1944
|
+
_resources_i;
|
|
1945
|
+
(_resources_i = resources[i]) == null ? void 0 : _resources_i._disassociationSuperResource(this);
|
|
1740
1946
|
}
|
|
1741
1947
|
};
|
|
1742
1948
|
_create_class(GLTFResource, [
|
|
@@ -1927,6 +2133,7 @@ var TextureWrapMode;
|
|
|
1927
2133
|
this.params = params;
|
|
1928
2134
|
this.accessorBufferCache = {};
|
|
1929
2135
|
this.needAnimatorController = false;
|
|
2136
|
+
this./** @internal */ _getPromises = [];
|
|
1930
2137
|
this._resourceCache = new Map();
|
|
1931
2138
|
this._progress = {
|
|
1932
2139
|
taskDetail: {},
|
|
@@ -1951,7 +2158,7 @@ var TextureWrapMode;
|
|
|
1951
2158
|
var _this = this;
|
|
1952
2159
|
var parser = GLTFParserContext._parsers[type];
|
|
1953
2160
|
if (!parser) {
|
|
1954
|
-
return
|
|
2161
|
+
return engineCore.AssetPromise.resolve(null);
|
|
1955
2162
|
}
|
|
1956
2163
|
var cache = this._resourceCache;
|
|
1957
2164
|
var cacheKey = index === undefined ? "" + type : type + ":" + index;
|
|
@@ -1967,7 +2174,7 @@ var TextureWrapMode;
|
|
|
1967
2174
|
if (index === undefined) {
|
|
1968
2175
|
resource = type === 8 ? glTFItems.map(function(_, index) {
|
|
1969
2176
|
return _this.get(type, index);
|
|
1970
|
-
}) :
|
|
2177
|
+
}) : engineCore.AssetPromise.all(glTFItems.map(function(_, index) {
|
|
1971
2178
|
return _this.get(type, index);
|
|
1972
2179
|
}));
|
|
1973
2180
|
} else {
|
|
@@ -1975,12 +2182,15 @@ var TextureWrapMode;
|
|
|
1975
2182
|
isSubAsset && this._handleSubAsset(resource, type, index);
|
|
1976
2183
|
}
|
|
1977
2184
|
} else {
|
|
1978
|
-
resource =
|
|
2185
|
+
resource = engineCore.AssetPromise.resolve(null);
|
|
1979
2186
|
}
|
|
1980
2187
|
} else {
|
|
1981
2188
|
resource = parser.parse(this, index);
|
|
1982
2189
|
isSubAsset && this._handleSubAsset(resource, type, index);
|
|
1983
2190
|
}
|
|
2191
|
+
if (_instanceof(resource, engineCore.AssetPromise)) {
|
|
2192
|
+
this._getPromises.push(resource);
|
|
2193
|
+
}
|
|
1984
2194
|
cache.set(cacheKey, resource);
|
|
1985
2195
|
return resource;
|
|
1986
2196
|
};
|
|
@@ -1989,7 +2199,7 @@ var TextureWrapMode;
|
|
|
1989
2199
|
var promise = this.get(0).then(function(json) {
|
|
1990
2200
|
_this.glTF = json;
|
|
1991
2201
|
_this.needAnimatorController = !!(json.skins || json.animations);
|
|
1992
|
-
return
|
|
2202
|
+
return engineCore.AssetPromise.all([
|
|
1993
2203
|
_this.get(1),
|
|
1994
2204
|
_this.get(5),
|
|
1995
2205
|
_this.get(6),
|
|
@@ -2020,6 +2230,8 @@ var TextureWrapMode;
|
|
|
2020
2230
|
task.total += 1;
|
|
2021
2231
|
taskPromise.then(function() {
|
|
2022
2232
|
_this._setTaskCompleteProgress(++task.loaded, task.total);
|
|
2233
|
+
}, function(e) {
|
|
2234
|
+
engineCore.Logger.error("Failed to complete task", e);
|
|
2023
2235
|
});
|
|
2024
2236
|
};
|
|
2025
2237
|
_proto._handleSubAsset = function _handleSubAsset(resource, type, index) {
|
|
@@ -2052,6 +2264,8 @@ var TextureWrapMode;
|
|
|
2052
2264
|
_this.resourceManager._onSubAssetSuccess(url, "defaultSceneRoot", item);
|
|
2053
2265
|
}
|
|
2054
2266
|
}
|
|
2267
|
+
}).catch(function(e) {
|
|
2268
|
+
engineCore.Logger.error("GLTFParserContext", "Failed to load " + glTFResourceKey + " " + index + ": " + e);
|
|
2055
2269
|
});
|
|
2056
2270
|
}
|
|
2057
2271
|
};
|
|
@@ -2232,13 +2446,15 @@ function registerGLTFParser(pipeline) {
|
|
|
2232
2446
|
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset1, count1));
|
|
2233
2447
|
}
|
|
2234
2448
|
return bufferInfo;
|
|
2449
|
+
}).catch(function(e) {
|
|
2450
|
+
engineCore.Logger.error("GLTFUtil getAccessorBuffer error", e);
|
|
2235
2451
|
});
|
|
2236
2452
|
} else {
|
|
2237
2453
|
var count = accessorCount * dataElementSize;
|
|
2238
2454
|
var data = new TypedArray(count);
|
|
2239
2455
|
var bufferInfo = new BufferInfo(data, false, elementStride);
|
|
2240
2456
|
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(undefined, TypedArray, undefined, count));
|
|
2241
|
-
promise =
|
|
2457
|
+
promise = engineCore.AssetPromise.resolve(bufferInfo);
|
|
2242
2458
|
}
|
|
2243
2459
|
return accessor.sparse ? promise.then(function(bufferInfo) {
|
|
2244
2460
|
return GLTFUtils.processingSparseData(context, accessor, bufferInfo).then(function() {
|
|
@@ -2273,7 +2489,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2273
2489
|
var _accessor_sparse = accessor.sparse, count = _accessor_sparse.count, indices = _accessor_sparse.indices, values = _accessor_sparse.values;
|
|
2274
2490
|
var indicesBufferView = bufferViews[indices.bufferView];
|
|
2275
2491
|
var valuesBufferView = bufferViews[values.bufferView];
|
|
2276
|
-
return
|
|
2492
|
+
return engineCore.AssetPromise.all([
|
|
2277
2493
|
context.get(exports.GLTFParserType.BufferView, indices.bufferView),
|
|
2278
2494
|
context.get(exports.GLTFParserType.BufferView, values.bufferView)
|
|
2279
2495
|
]).then(function(param) {
|
|
@@ -2300,6 +2516,8 @@ function registerGLTFParser(pipeline) {
|
|
|
2300
2516
|
}
|
|
2301
2517
|
}
|
|
2302
2518
|
bufferInfo.data = data;
|
|
2519
|
+
}).catch(function(e) {
|
|
2520
|
+
engineCore.Logger.error("GLTFUtil processingSparseData error", e);
|
|
2303
2521
|
});
|
|
2304
2522
|
};
|
|
2305
2523
|
GLTFUtils.getIndexFormat = function getIndexFormat(type) {
|
|
@@ -3817,11 +4035,10 @@ exports.GLTFExtensionMode = void 0;
|
|
|
3817
4035
|
for(var _len = arguments.length, extra = new Array(_len > 5 ? _len - 5 : 0), _key = 5; _key < _len; _key++){
|
|
3818
4036
|
extra[_key - 5] = arguments[_key];
|
|
3819
4037
|
}
|
|
4038
|
+
var _parser;
|
|
4039
|
+
var _parser1;
|
|
3820
4040
|
var parser = GLTFParser.getExtensionParser(extensionName, exports.GLTFExtensionMode.AdditiveParse);
|
|
3821
|
-
|
|
3822
|
-
var _parser;
|
|
3823
|
-
(_parser = parser).additiveParse.apply(_parser, [].concat(context, parseResource, extensionSchema, ownerSchema, extra));
|
|
3824
|
-
}
|
|
4041
|
+
(_parser1 = parser) == null ? void 0 : (_parser = _parser1).additiveParse.apply(_parser, [].concat(context, parseResource, extensionSchema, ownerSchema, extra));
|
|
3825
4042
|
};
|
|
3826
4043
|
return GLTFParser;
|
|
3827
4044
|
}();
|
|
@@ -3891,7 +4108,7 @@ exports.GLTFAnimationParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3891
4108
|
var animationInfo = context.glTF.animations[index];
|
|
3892
4109
|
var _animationInfo_name = animationInfo.name, name = _animationInfo_name === void 0 ? "AnimationClip" + index : _animationInfo_name;
|
|
3893
4110
|
var animationClipPromise = GLTFParser.executeExtensionsCreateAndParse(animationInfo.extensions, context, animationInfo) || exports.GLTFAnimationParser._parseStandardProperty(context, new engineCore.AnimationClip(name), animationInfo);
|
|
3894
|
-
return
|
|
4111
|
+
return engineCore.AssetPromise.resolve(animationClipPromise).then(function(animationClip) {
|
|
3895
4112
|
GLTFParser.executeExtensionsAdditiveAndParse(animationInfo.extensions, context, animationClip, animationInfo);
|
|
3896
4113
|
return animationClip;
|
|
3897
4114
|
});
|
|
@@ -3903,7 +4120,7 @@ exports.GLTFAnimationParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3903
4120
|
var glTFSampler = samplers[j];
|
|
3904
4121
|
var inputAccessor = accessors[glTFSampler.input];
|
|
3905
4122
|
var outputAccessor = accessors[glTFSampler.output];
|
|
3906
|
-
var promise =
|
|
4123
|
+
var promise = engineCore.AssetPromise.all([
|
|
3907
4124
|
GLTFUtils.getAccessorBuffer(context, bufferViews, inputAccessor),
|
|
3908
4125
|
GLTFUtils.getAccessorBuffer(context, bufferViews, outputAccessor)
|
|
3909
4126
|
]).then(function(bufferInfos) {
|
|
@@ -3954,7 +4171,7 @@ exports.GLTFAnimationParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3954
4171
|
// parse samplers
|
|
3955
4172
|
for(var j = 0, m = len; j < m; j++)_loop(j);
|
|
3956
4173
|
promises.push(context.get(exports.GLTFParserType.Scene));
|
|
3957
|
-
return
|
|
4174
|
+
return engineCore.AssetPromise.all(promises).then(function() {
|
|
3958
4175
|
for(var j = 0, m = channels.length; j < m; j++){
|
|
3959
4176
|
var glTFChannel = channels[j];
|
|
3960
4177
|
var target = glTFChannel.target;
|
|
@@ -4084,7 +4301,7 @@ exports.GLTFBufferParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4084
4301
|
var _proto = GLTFBufferParser.prototype;
|
|
4085
4302
|
_proto.parse = function parse(context, index) {
|
|
4086
4303
|
var buffers = context.glTF.buffers;
|
|
4087
|
-
return context.buffers ?
|
|
4304
|
+
return context.buffers ? engineCore.AssetPromise.resolve(context.buffers[index]) : this._parseSingleBuffer(context, buffers[index]);
|
|
4088
4305
|
};
|
|
4089
4306
|
_proto._parseSingleBuffer = function _parseSingleBuffer(context, bufferInfo) {
|
|
4090
4307
|
var glTFResource = context.glTFResource, contentRestorer = context.contentRestorer, resourceManager = context.resourceManager;
|
|
@@ -4171,18 +4388,15 @@ exports.GLTFMaterialParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4171
4388
|
material.name = materialInfo.name;
|
|
4172
4389
|
exports.GLTFMaterialParser._parseStandardProperty(context, material, materialInfo);
|
|
4173
4390
|
}
|
|
4174
|
-
return
|
|
4175
|
-
|
|
4391
|
+
return engineCore.AssetPromise.resolve(material).then(function(material) {
|
|
4392
|
+
// @ts-ignore
|
|
4393
|
+
material || (material = engine._basicResources._getBlinnPhongMaterial());
|
|
4176
4394
|
GLTFParser.executeExtensionsAdditiveAndParse(materialInfo.extensions, context, material, materialInfo);
|
|
4177
4395
|
// @ts-ignore
|
|
4178
4396
|
material._associationSuperResource(glTFResource);
|
|
4179
4397
|
return material;
|
|
4180
4398
|
});
|
|
4181
4399
|
};
|
|
4182
|
-
/** @internal */ GLTFMaterialParser1._getDefaultMaterial = function _getDefaultMaterial(engine) {
|
|
4183
|
-
var _GLTFMaterialParser;
|
|
4184
|
-
return (_GLTFMaterialParser = exports.GLTFMaterialParser)._defaultMaterial || (_GLTFMaterialParser._defaultMaterial = new engineCore.BlinnPhongMaterial(engine));
|
|
4185
|
-
};
|
|
4186
4400
|
/**
|
|
4187
4401
|
* @internal
|
|
4188
4402
|
*/ GLTFMaterialParser1._checkOtherTextureTransform = function _checkOtherTextureTransform(texture, textureName) {
|
|
@@ -4204,6 +4418,8 @@ exports.GLTFMaterialParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4204
4418
|
context.get(exports.GLTFParserType.Texture, baseColorTexture.index).then(function(texture) {
|
|
4205
4419
|
material.baseTexture = texture;
|
|
4206
4420
|
GLTFParser.executeExtensionsAdditiveAndParse(baseColorTexture.extensions, context, material, baseColorTexture);
|
|
4421
|
+
}).catch(function(e) {
|
|
4422
|
+
engineCore.Logger.error("GLTFMaterialParser: baseColorTexture error", e);
|
|
4207
4423
|
});
|
|
4208
4424
|
}
|
|
4209
4425
|
if (material.constructor === engineCore.PBRMaterial) {
|
|
@@ -4213,6 +4429,8 @@ exports.GLTFMaterialParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4213
4429
|
exports.GLTFMaterialParser._checkOtherTextureTransform(metallicRoughnessTexture, "Roughness metallic");
|
|
4214
4430
|
context.get(exports.GLTFParserType.Texture, metallicRoughnessTexture.index).then(function(texture) {
|
|
4215
4431
|
material.roughnessMetallicTexture = texture;
|
|
4432
|
+
}).catch(function(e) {
|
|
4433
|
+
engineCore.Logger.error("GLTFMaterialParser: metallicRoughnessTexture error", e);
|
|
4216
4434
|
});
|
|
4217
4435
|
}
|
|
4218
4436
|
}
|
|
@@ -4222,6 +4440,8 @@ exports.GLTFMaterialParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4222
4440
|
exports.GLTFMaterialParser._checkOtherTextureTransform(emissiveTexture, "Emissive");
|
|
4223
4441
|
context.get(exports.GLTFParserType.Texture, emissiveTexture.index).then(function(texture) {
|
|
4224
4442
|
material.emissiveTexture = texture;
|
|
4443
|
+
}).catch(function(e) {
|
|
4444
|
+
engineCore.Logger.error("GLTFMaterialParser: emissiveTexture error", e);
|
|
4225
4445
|
});
|
|
4226
4446
|
}
|
|
4227
4447
|
if (emissiveFactor) {
|
|
@@ -4232,6 +4452,8 @@ exports.GLTFMaterialParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4232
4452
|
exports.GLTFMaterialParser._checkOtherTextureTransform(normalTexture, "Normal");
|
|
4233
4453
|
context.get(exports.GLTFParserType.Texture, index).then(function(texture) {
|
|
4234
4454
|
material.normalTexture = texture;
|
|
4455
|
+
}).catch(function(e) {
|
|
4456
|
+
engineCore.Logger.error("GLTFMaterialParser: emissiveTexture error", e);
|
|
4235
4457
|
});
|
|
4236
4458
|
if (scale !== undefined) {
|
|
4237
4459
|
material.normalTextureIntensity = scale;
|
|
@@ -4242,6 +4464,8 @@ exports.GLTFMaterialParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4242
4464
|
exports.GLTFMaterialParser._checkOtherTextureTransform(occlusionTexture, "Occlusion");
|
|
4243
4465
|
context.get(exports.GLTFParserType.Texture, index1).then(function(texture) {
|
|
4244
4466
|
material.occlusionTexture = texture;
|
|
4467
|
+
}).catch(function(e) {
|
|
4468
|
+
engineCore.Logger.error("GLTFMaterialParser: occlusionTexture error", e);
|
|
4245
4469
|
});
|
|
4246
4470
|
if (strength !== undefined) {
|
|
4247
4471
|
material.occlusionTextureIntensity = strength;
|
|
@@ -4286,7 +4510,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4286
4510
|
_proto.parse = function parse(context, index) {
|
|
4287
4511
|
var _loop = function(i, length) {
|
|
4288
4512
|
var gltfPrimitive = meshInfo.primitives[i];
|
|
4289
|
-
primitivePromises[i] = new
|
|
4513
|
+
primitivePromises[i] = new engineCore.AssetPromise(function(resolve, reject) {
|
|
4290
4514
|
var mesh = GLTFParser.executeExtensionsCreateAndParse(gltfPrimitive.extensions, context, gltfPrimitive, meshInfo);
|
|
4291
4515
|
if (mesh) {
|
|
4292
4516
|
if (_instanceof(mesh, engineCore.ModelMesh)) {
|
|
@@ -4307,7 +4531,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4307
4531
|
var meshRestoreInfo = new ModelMeshRestoreInfo();
|
|
4308
4532
|
meshRestoreInfo.mesh = mesh1;
|
|
4309
4533
|
context.contentRestorer.meshes.push(meshRestoreInfo);
|
|
4310
|
-
exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF, context.params.keepMeshData).then(resolve);
|
|
4534
|
+
exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF, context.params.keepMeshData).then(resolve, reject);
|
|
4311
4535
|
}
|
|
4312
4536
|
});
|
|
4313
4537
|
};
|
|
@@ -4316,7 +4540,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4316
4540
|
var engine = glTFResource.engine;
|
|
4317
4541
|
var primitivePromises = new Array();
|
|
4318
4542
|
for(var i = 0, length = meshInfo.primitives.length; i < length; i++)_loop(i);
|
|
4319
|
-
return
|
|
4543
|
+
return engineCore.AssetPromise.all(primitivePromises);
|
|
4320
4544
|
};
|
|
4321
4545
|
/**
|
|
4322
4546
|
* @internal
|
|
@@ -4399,7 +4623,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4399
4623
|
var bufferBindIndex = 0;
|
|
4400
4624
|
var promises = new Array();
|
|
4401
4625
|
for(var attribute in attributes)_loop(attribute);
|
|
4402
|
-
return
|
|
4626
|
+
return engineCore.AssetPromise.all(promises).then(function() {
|
|
4403
4627
|
mesh.setVertexElements(vertexElements);
|
|
4404
4628
|
// Indices
|
|
4405
4629
|
if (indices !== undefined) {
|
|
@@ -4449,7 +4673,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4449
4673
|
var tangentTarget = targets["TANGENT"];
|
|
4450
4674
|
var hasNormal = normalTarget !== undefined;
|
|
4451
4675
|
var hasTangent = tangentTarget !== undefined;
|
|
4452
|
-
var promise =
|
|
4676
|
+
var promise = engineCore.AssetPromise.all([
|
|
4453
4677
|
_this._getBlendShapeData(context, glTF, accessors[targets["POSITION"]]),
|
|
4454
4678
|
hasNormal ? _this._getBlendShapeData(context, glTF, accessors[normalTarget]) : null,
|
|
4455
4679
|
hasTangent ? _this._getBlendShapeData(context, glTF, accessors[tangentTarget]) : null
|
|
@@ -4470,7 +4694,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4470
4694
|
var blendShapeCount = glTFTargets.length;
|
|
4471
4695
|
var blendShapeCollection = new Array(blendShapeCount);
|
|
4472
4696
|
for(var i = 0; i < blendShapeCount; i++)_loop(i);
|
|
4473
|
-
return
|
|
4697
|
+
return engineCore.AssetPromise.all(promises).then(function() {
|
|
4474
4698
|
for(var _iterator = _create_for_of_iterator_helper_loose(blendShapeCollection), _step; !(_step = _iterator()).done;){
|
|
4475
4699
|
var blendShape = _step.value;
|
|
4476
4700
|
mesh.addBlendShape(blendShape.blendShape);
|
|
@@ -4518,7 +4742,7 @@ exports.GLTFSceneParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4518
4742
|
for(var i1 = 0; i1 < sceneNodes.length; i1++){
|
|
4519
4743
|
promises.push(this._parseEntityComponent(context, sceneNodes[i1]));
|
|
4520
4744
|
}
|
|
4521
|
-
return
|
|
4745
|
+
return engineCore.AssetPromise.all(promises).then(function() {
|
|
4522
4746
|
GLTFParser.executeExtensionsAdditiveAndParse(sceneExtensions, context, sceneRoot, sceneInfo);
|
|
4523
4747
|
return sceneRoot;
|
|
4524
4748
|
});
|
|
@@ -4536,7 +4760,7 @@ exports.GLTFSceneParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4536
4760
|
if (meshID !== undefined) {
|
|
4537
4761
|
promise = this._createRenderer(context, entityInfo, entity);
|
|
4538
4762
|
}
|
|
4539
|
-
return
|
|
4763
|
+
return engineCore.AssetPromise.resolve(promise).then(function() {
|
|
4540
4764
|
var promises = [];
|
|
4541
4765
|
var children = entityInfo.children;
|
|
4542
4766
|
if (children) {
|
|
@@ -4544,7 +4768,7 @@ exports.GLTFSceneParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4544
4768
|
promises.push(_this._parseEntityComponent(context, children[i]));
|
|
4545
4769
|
}
|
|
4546
4770
|
}
|
|
4547
|
-
return
|
|
4771
|
+
return engineCore.AssetPromise.all(promises);
|
|
4548
4772
|
});
|
|
4549
4773
|
};
|
|
4550
4774
|
_proto._createCamera = function _createCamera(resource, cameraSchema, entity) {
|
|
@@ -4593,13 +4817,14 @@ exports.GLTFSceneParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4593
4817
|
var _glTFMeshPrimitives_i_material;
|
|
4594
4818
|
materialPromises[i] = context.get(exports.GLTFParserType.Material, (_glTFMeshPrimitives_i_material = glTFMeshPrimitives[i].material) != null ? _glTFMeshPrimitives_i_material : -1);
|
|
4595
4819
|
}
|
|
4596
|
-
return
|
|
4820
|
+
return engineCore.AssetPromise.all([
|
|
4597
4821
|
context.get(exports.GLTFParserType.Mesh, meshID),
|
|
4598
4822
|
skinID !== undefined && context.get(exports.GLTFParserType.Skin, skinID),
|
|
4599
|
-
|
|
4823
|
+
engineCore.AssetPromise.all(materialPromises)
|
|
4600
4824
|
]).then(function(param) {
|
|
4601
4825
|
var _loop = function(i) {
|
|
4602
|
-
|
|
4826
|
+
// @ts-ignore
|
|
4827
|
+
var material = materials[i] || context.glTFResource.engine._basicResources._getBlinnPhongMaterial();
|
|
4603
4828
|
var glTFPrimitive = glTFMeshPrimitives[i];
|
|
4604
4829
|
var mesh = meshes[i];
|
|
4605
4830
|
var renderer = void 0;
|
|
@@ -4629,6 +4854,8 @@ exports.GLTFSceneParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4629
4854
|
};
|
|
4630
4855
|
var meshes = param[0], skin = param[1], materials = param[2];
|
|
4631
4856
|
for(var i = 0; i < rendererCount; i++)_loop(i);
|
|
4857
|
+
}).catch(function(e) {
|
|
4858
|
+
engineCore.Logger.error("GLTFSceneParser: create renderer error", e);
|
|
4632
4859
|
});
|
|
4633
4860
|
};
|
|
4634
4861
|
_proto._computeLocalBounds = function _computeLocalBounds(skinnedMeshRenderer, mesh, bones, rootBone, inverseBindMatrices) {
|
|
@@ -4713,7 +4940,7 @@ exports.GLTFSkinParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4713
4940
|
}
|
|
4714
4941
|
return skin;
|
|
4715
4942
|
});
|
|
4716
|
-
return
|
|
4943
|
+
return engineCore.AssetPromise.resolve(skinPromise);
|
|
4717
4944
|
};
|
|
4718
4945
|
_proto._findSkeletonRootBone = function _findSkeletonRootBone(joints, entities) {
|
|
4719
4946
|
var paths = {};
|
|
@@ -4764,7 +4991,7 @@ exports.GLTFTextureParser = (_GLTFTextureParser = /*#__PURE__*/ function(GLTFPar
|
|
|
4764
4991
|
if (!texture) {
|
|
4765
4992
|
texture = exports.GLTFTextureParser._parseTexture(context, imageIndex, textureIndex, sampler, textureName);
|
|
4766
4993
|
}
|
|
4767
|
-
return
|
|
4994
|
+
return engineCore.AssetPromise.resolve(texture).then(function(texture) {
|
|
4768
4995
|
GLTFParser.executeExtensionsAdditiveAndParse(extensions, context, texture, textureInfo);
|
|
4769
4996
|
// @ts-ignore
|
|
4770
4997
|
texture._associationSuperResource(glTFResource);
|
|
@@ -4811,6 +5038,8 @@ exports.GLTFTextureParser = (_GLTFTextureParser = /*#__PURE__*/ function(GLTFPar
|
|
|
4811
5038
|
context.contentRestorer.bufferTextures.push(bufferTextureRestoreInfo);
|
|
4812
5039
|
return texture;
|
|
4813
5040
|
});
|
|
5041
|
+
}).catch(function(e) {
|
|
5042
|
+
engineCore.Logger.error("GLTFTextureParser: image buffer error", e);
|
|
4814
5043
|
});
|
|
4815
5044
|
}
|
|
4816
5045
|
return texture;
|
|
@@ -4854,7 +5083,7 @@ exports.GLTFValidator = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4854
5083
|
}
|
|
4855
5084
|
}
|
|
4856
5085
|
}
|
|
4857
|
-
return
|
|
5086
|
+
return engineCore.AssetPromise.resolve(null);
|
|
4858
5087
|
};
|
|
4859
5088
|
return GLTFValidator;
|
|
4860
5089
|
}(GLTFParser);
|
|
@@ -4873,6 +5102,8 @@ exports.GLTFBufferViewParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4873
5102
|
var extensions = bufferView.extensions, _bufferView_byteOffset = bufferView.byteOffset, byteOffset = _bufferView_byteOffset === void 0 ? 0 : _bufferView_byteOffset, byteLength = bufferView.byteLength, bufferIndex = bufferView.buffer;
|
|
4874
5103
|
return extensions ? GLTFParser.executeExtensionsCreateAndParse(extensions, context, bufferView) : context.get(exports.GLTFParserType.Buffer, bufferIndex).then(function(buffer) {
|
|
4875
5104
|
return new Uint8Array(buffer, byteOffset, byteLength);
|
|
5105
|
+
}).catch(function(e) {
|
|
5106
|
+
engineCore.Logger.error("GLTFBufferViewParser: buffer error", e);
|
|
4876
5107
|
});
|
|
4877
5108
|
};
|
|
4878
5109
|
return GLTFBufferViewParser;
|
|
@@ -4890,11 +5121,13 @@ exports.GLTFAnimatorControllerParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
4890
5121
|
_proto.parse = function parse(context) {
|
|
4891
5122
|
var _this = this;
|
|
4892
5123
|
if (!context.needAnimatorController) {
|
|
4893
|
-
return
|
|
5124
|
+
return engineCore.AssetPromise.resolve(null);
|
|
4894
5125
|
}
|
|
4895
5126
|
return context.get(exports.GLTFParserType.Animation).then(function(animations) {
|
|
4896
5127
|
var animatorController = _this._createAnimatorController(context, animations);
|
|
4897
|
-
return
|
|
5128
|
+
return engineCore.AssetPromise.resolve(animatorController);
|
|
5129
|
+
}).catch(function(e) {
|
|
5130
|
+
engineCore.Logger.error("GLTFAnimatorControllerParser: animator controller error", e);
|
|
4898
5131
|
});
|
|
4899
5132
|
};
|
|
4900
5133
|
_proto._createAnimatorController = function _createAnimatorController(context, animations) {
|
|
@@ -4925,203 +5158,6 @@ exports.GLTFAnimatorControllerParser = __decorate([
|
|
|
4925
5158
|
registerGLTFParser(exports.GLTFParserType.AnimatorController)
|
|
4926
5159
|
], exports.GLTFAnimatorControllerParser);
|
|
4927
5160
|
|
|
4928
|
-
// Source: https://github.com/zeux/meshoptimizer/blob/master/js/meshopt_decoder.js
|
|
4929
|
-
var ready;
|
|
4930
|
-
function getMeshoptDecoder() {
|
|
4931
|
-
var unpack = function unpack(data) {
|
|
4932
|
-
var result = new Uint8Array(data.length);
|
|
4933
|
-
for(var i = 0; i < data.length; ++i){
|
|
4934
|
-
var ch = data.charCodeAt(i);
|
|
4935
|
-
result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
|
|
4936
|
-
}
|
|
4937
|
-
var write = 0;
|
|
4938
|
-
for(var i1 = 0; i1 < data.length; ++i1){
|
|
4939
|
-
result[write++] = result[i1] < 60 ? wasmpack[result[i1]] : (result[i1] - 60) * 64 + result[++i1];
|
|
4940
|
-
}
|
|
4941
|
-
return result.buffer.slice(0, write);
|
|
4942
|
-
};
|
|
4943
|
-
var decode = function decode(fun, target, count, size, source, filter) {
|
|
4944
|
-
var sbrk = instance.exports.sbrk;
|
|
4945
|
-
var count4 = count + 3 & ~3;
|
|
4946
|
-
var tp = sbrk(count4 * size);
|
|
4947
|
-
var sp = sbrk(source.length);
|
|
4948
|
-
var heap = new Uint8Array(instance.exports.memory.buffer);
|
|
4949
|
-
heap.set(source, sp);
|
|
4950
|
-
var res = fun(tp, count, size, sp, source.length);
|
|
4951
|
-
if (res == 0 && filter) {
|
|
4952
|
-
filter(tp, count4, size);
|
|
4953
|
-
}
|
|
4954
|
-
target.set(heap.subarray(tp, tp + count * size));
|
|
4955
|
-
sbrk(tp - sbrk(0));
|
|
4956
|
-
if (res != 0) {
|
|
4957
|
-
throw new Error("Malformed buffer data: " + res);
|
|
4958
|
-
}
|
|
4959
|
-
};
|
|
4960
|
-
var createWorker = function createWorker(url) {
|
|
4961
|
-
var worker = {
|
|
4962
|
-
object: new Worker(url),
|
|
4963
|
-
pending: 0,
|
|
4964
|
-
requests: {}
|
|
4965
|
-
};
|
|
4966
|
-
worker.object.onmessage = function(event) {
|
|
4967
|
-
var data = event.data;
|
|
4968
|
-
worker.pending -= data.count;
|
|
4969
|
-
worker.requests[data.id][data.action](data.value);
|
|
4970
|
-
delete worker.requests[data.id];
|
|
4971
|
-
};
|
|
4972
|
-
return worker;
|
|
4973
|
-
};
|
|
4974
|
-
var initWorkers = function initWorkers(count) {
|
|
4975
|
-
var source = "var instance; var ready = WebAssembly.instantiate(new Uint8Array([" + new Uint8Array(unpack(wasm)) + "]), {})" + ".then(function(result) {instance = result.instance; instance.exports.__wasm_call_ctors();});\n" + "self.onmessage = workerProcess;\n" + 'function decode(fun, target, count, size, source, filter) {\n const sbrk = instance.exports.sbrk;\n const count4 = (count + 3) & ~3;\n const tp = sbrk(count4 * size);\n const sp = sbrk(source.length);\n const heap = new Uint8Array(instance.exports.memory.buffer);\n heap.set(source, sp);\n const res = fun(tp, count, size, sp, source.length);\n if (res == 0 && filter) {\n filter(tp, count4, size);\n }\n target.set(heap.subarray(tp, tp + count * size));\n sbrk(tp - sbrk(0));\n if (res != 0) {\n throw new Error("Malformed buffer data: " + res);\n }\n }\n' + 'function workerProcess(event) {\n ready.then(function () {\n const data = event.data;\n try {\n const target = new Uint8Array(data.count * data.size);\n decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);\n self.postMessage({ id: data.id, count: data.count, action: "resolve", value: target }, [target.buffer]);\n } catch (error) {\n self.postMessage({\n id: data.id,\n count: data.count,\n action: "reject",\n value: error\n });\n }\n });\n }';
|
|
4976
|
-
var blob = new Blob([
|
|
4977
|
-
source
|
|
4978
|
-
], {
|
|
4979
|
-
type: "text/javascript"
|
|
4980
|
-
});
|
|
4981
|
-
var url = URL.createObjectURL(blob);
|
|
4982
|
-
for(var i = 0; i < count; ++i){
|
|
4983
|
-
workers[i] = createWorker(url);
|
|
4984
|
-
}
|
|
4985
|
-
URL.revokeObjectURL(url);
|
|
4986
|
-
};
|
|
4987
|
-
var decodeWorker = function decodeWorker(count, size, source, mode, filter) {
|
|
4988
|
-
var worker = workers[0];
|
|
4989
|
-
for(var i = 1; i < workers.length; ++i){
|
|
4990
|
-
if (workers[i].pending < worker.pending) {
|
|
4991
|
-
worker = workers[i];
|
|
4992
|
-
}
|
|
4993
|
-
}
|
|
4994
|
-
return new Promise(function(resolve, reject) {
|
|
4995
|
-
var data = new Uint8Array(source);
|
|
4996
|
-
var id = requestId++;
|
|
4997
|
-
worker.pending += count;
|
|
4998
|
-
worker.requests[id] = {
|
|
4999
|
-
resolve: resolve,
|
|
5000
|
-
reject: reject
|
|
5001
|
-
};
|
|
5002
|
-
worker.object.postMessage({
|
|
5003
|
-
id: id,
|
|
5004
|
-
count: count,
|
|
5005
|
-
size: size,
|
|
5006
|
-
source: data,
|
|
5007
|
-
mode: mode,
|
|
5008
|
-
filter: filter
|
|
5009
|
-
}, [
|
|
5010
|
-
data.buffer
|
|
5011
|
-
]);
|
|
5012
|
-
});
|
|
5013
|
-
};
|
|
5014
|
-
if (ready) return ready;
|
|
5015
|
-
var wasm_base = "b9H79Tebbbe8Fv9Gbb9Gvuuuuueu9Giuuub9Geueu9Giuuueuikqbeeedddillviebeoweuec:q;iekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbeY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVbdE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbiL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtblK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbol79IV9Rbrq:P8Yqdbk;3sezu8Jjjjjbcj;eb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Radz1jjjbhwcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhDcbhqinaqae9pmeaDaeaq9RaqaDfae6Egkcsfgocl4cifcd4hxdndndndnaoc9WGgmTmbcbhPcehsawcjdfhzalhHinaraH9Rax6midnaraHaxfgl9RcK6mbczhoinawcj;cbfaogifgoc9WfhOdndndndndnaHaic9WfgAco4fRbbaAci4coG4ciGPlbedibkaO9cb83ibaOcwf9cb83ibxikaOalRblalRbbgAco4gCaCciSgCE86bbaocGfalclfaCfgORbbaAcl4ciGgCaCciSgCE86bbaocVfaOaCfgORbbaAcd4ciGgCaCciSgCE86bbaoc7faOaCfgORbbaAciGgAaAciSgAE86bbaoctfaOaAfgARbbalRbegOco4gCaCciSgCE86bbaoc91faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc4faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc93faAaCfgARbbaOciGgOaOciSgOE86bbaoc94faAaOfgARbbalRbdgOco4gCaCciSgCE86bbaoc95faAaCfgARbbaOcl4ciGgCaCciSgCE86bbaoc96faAaCfgARbbaOcd4ciGgCaCciSgCE86bbaoc97faAaCfgARbbaOciGgOaOciSgOE86bbaoc98faAaOfgORbbalRbiglco4gAaAciSgAE86bbaoc99faOaAfgORbbalcl4ciGgAaAciSgAE86bbaoc9:faOaAfgORbbalcd4ciGgAaAciSgAE86bbaocufaOaAfgoRbbalciGglalciSglE86bbaoalfhlxdkaOalRbwalRbbgAcl4gCaCcsSgCE86bbaocGfalcwfaCfgORbbaAcsGgAaAcsSgAE86bbaocVfaOaAfgORbbalRbegAcl4gCaCcsSgCE86bbaoc7faOaCfgORbbaAcsGgAaAcsSgAE86bbaoctfaOaAfgORbbalRbdgAcl4gCaCcsSgCE86bbaoc91faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc4faOaAfgORbbalRbigAcl4gCaCcsSgCE86bbaoc93faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc94faOaAfgORbbalRblgAcl4gCaCcsSgCE86bbaoc95faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc96faOaAfgORbbalRbvgAcl4gCaCcsSgCE86bbaoc97faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc98faOaAfgORbbalRbogAcl4gCaCcsSgCE86bbaoc99faOaCfgORbbaAcsGgAaAcsSgAE86bbaoc9:faOaAfgORbbalRbrglcl4gAaAcsSgAE86bbaocufaOaAfgoRbbalcsGglalcsSglE86bbaoalfhlxekaOal8Pbb83bbaOcwfalcwf8Pbb83bbalczfhlkdnaiam9pmbaiczfhoaral9RcL0mekkaiam6mialTmidnakTmbawaPfRbbhOcbhoazhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkkazcefhzaPcefgPad6hsalhHaPad9hmexvkkcbhlasceGmdxikalaxad2fhCdnakTmbcbhHcehsawcjdfhminaral9Rax6mialTmdalaxfhlawaHfRbbhOcbhoamhiinaiawcj;cbfaofRbbgAce4cbaAceG9R7aOfgO86bbaiadfhiaocefgoak9hmbkamcefhmaHcefgHad6hsaHad9hmbkaChlxikcbhocehsinaral9Rax6mdalTmealaxfhlaocefgoad6hsadao9hmbkaChlxdkcbhlasceGTmekc9:hoxikabaqad2fawcjdfakad2z1jjjb8Aawawcjdfakcufad2fadz1jjjb8Aakaqfhqalmbkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;ebf8Kjjjjbaok;yzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecjez:jjjjb8AavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:Lvoeue99dud99eud99dndnadcl9hmbaeTmeindndnabcdfgd8Sbb:Yab8Sbbgi:Ygl:l:tabcefgv8Sbbgo:Ygr:l:tgwJbb;:9cawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai86bbdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad86bbdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad86bbabclfhbaecufgembxdkkaeTmbindndnabclfgd8Ueb:Yab8Uebgi:Ygl:l:tabcdfgv8Uebgo:Ygr:l:tgwJb;:FSawawNJbbbbawawJbbbb9GgDEgq:mgkaqaicb9iEalMgwawNakaqaocb9iEarMgqaqNMM:r:vglNJbbbZJbbb:;aDEMgr:lJbbb9p9DTmbar:Ohixekcjjjj94hikadai87ebdndnaqalNJbbbZJbbb:;aqJbbbb9GEMgq:lJbbb9p9DTmbaq:Ohdxekcjjjj94hdkavad87ebdndnawalNJbbbZJbbb:;awJbbbb9GEMgw:lJbbb9p9DTmbaw:Ohdxekcjjjj94hdkabad87ebabcwfhbaecufgembkkk;siliui99iue99dnaeTmbcbhiabhlindndnJ;Zl81Zalcof8UebgvciV:Y:vgoal8Ueb:YNgrJb;:FSNJbbbZJbbb:;arJbbbb9GEMgw:lJbbb9p9DTmbaw:OhDxekcjjjj94hDkalclf8Uebhqalcdf8UebhkabavcefciGaiVcetfaD87ebdndnaoak:YNgwJb;:FSNJbbbZJbbb:;awJbbbb9GEMgx:lJbbb9p9DTmbax:Ohkxekcjjjj94hkkabavcdfciGaiVcetfak87ebdndnaoaq:YNgoJb;:FSNJbbbZJbbb:;aoJbbbb9GEMgx:lJbbb9p9DTmbax:Ohqxekcjjjj94hqkabavcufciGaiVcetfaq87ebdndnJbbjZararN:tawawN:taoaoN:tgrJbbbbarJbbbb9GE:rJb;:FSNJbbbZMgr:lJbbb9p9DTmbar:Ohqxekcjjjj94hqkabavciGaiVcetfaq87ebalcwfhlaiclfhiaecufgembkkk9mbdnadcd4ae2geTmbinababydbgdcwtcw91:Yadce91cjjj;8ifcjjj98G::NUdbabclfhbaecufgembkkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaik;LeeeudndnaeabVciGTmbabhixekdndnadcz9pmbabhixekabhiinaiaeydbBdbaiclfaeclfydbBdbaicwfaecwfydbBdbaicxfaecxfydbBdbaiczfhiaeczfheadc9Wfgdcs0mbkkadcl6mbinaiaeydbBdbaeclfheaiclfhiadc98fgdci0mbkkdnadTmbinaiaeRbb86bbaicefhiaecefheadcufgdmbkkabk;aeedudndnabciGTmbabhixekaecFeGc:b:c:ew2hldndnadcz9pmbabhixekabhiinaialBdbaicxfalBdbaicwfalBdbaiclfalBdbaiczfhiadc9Wfgdcs0mbkkadcl6mbinaialBdbaiclfhiadc98fgdci0mbkkdnadTmbinaiae86bbaicefhiadcufgdmbkkabkkkebcjwklz9Kbb";
|
|
5016
|
-
var wasm_simd = "b9H79TebbbeKl9Gbb9Gvuuuuueu9Giuuub9Geueuikqbbebeedddilve9Weeeviebeoweuec:q;Aekr;leDo9TW9T9VV95dbH9F9F939H79T9F9J9H229F9Jt9VV7bb8A9TW79O9V9Wt9F9KW9J9V9KW9wWVtW949c919M9MWVbdY9TW79O9V9Wt9F9KW9J9V9KW69U9KW949c919M9MWVblE9TW79O9V9Wt9F9KW9J9V9KW69U9KW949tWG91W9U9JWbvL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9p9JtboK9TW79O9V9Wt9F9KW9J9V9KWS9P2tWV9r919HtbrL9TW79O9V9Wt9F9KW9J9V9KWS9P2tWVT949Wbwl79IV9RbDq;t9tqlbzik9:evu8Jjjjjbcz9Rhbcbheincbhdcbhiinabcwfadfaicjuaead4ceGglE86bbaialfhiadcefgdcw9hmbkaec:q:yjjbfai86bbaecitc:q1jjbfab8Piw83ibaecefgecjd9hmbkk;h8JlHud97euo978Jjjjjbcj;kb9Rgv8Kjjjjbc9:hodnadcefal0mbcuhoaiRbbc:Ge9hmbavaialfgrad9Rad;8qbbcj;abad9UhoaicefhldnadTmbaoc;WFbGgocjdaocjd6EhwcbhDinaDae9pmeawaeaD9RaDawfae6Egqcsfgoc9WGgkci2hxakcethmaocl4cifcd4hPabaDad2fhscbhzdnincehHalhOcbhAdninaraO9RaP6miavcj;cbfaAak2fhCaOaPfhlcbhidnakc;ab6mbaral9Rc;Gb6mbcbhoinaCaofhidndndndndnaOaoco4fRbbgXciGPlbedibkaipxbbbbbbbbbbbbbbbbpklbxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklbalczfhlkdndndndndnaXcd4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklzxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklzalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklzalczfhlkdndndndndnaXcl4ciGPlbedibkaipxbbbbbbbbbbbbbbbbpklaxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklaalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaialpbbbpklaalczfhlkdndndndndnaXco4Plbedibkaipxbbbbbbbbbbbbbbbbpkl8WxikaialpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalclfaYpQbfaXc:q:yjjbfRbbfhlxdkaialpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibaXc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgXcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spkl8WalcwfaYpQbfaXc:q:yjjbfRbbfhlxekaialpbbbpkl8Walczfhlkaoc;abfhiaocjefak0meaihoaral9Rc;Fb0mbkkdndnaiak9pmbaici4hoinaral9RcK6mdaCaifhXdndndndndnaOaico4fRbbaocoG4ciGPlbedibkaXpxbbbbbbbbbbbbbbbbpklbxikaXalpbblalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLgQcdp:meaQpmbzeHdOiAlCvXoQrLpxiiiiiiiiiiiiiiiip9ogLpxiiiiiiiiiiiiiiiip8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalclfaYpQbfaKc:q:yjjbfRbbfhlxdkaXalpbbwalpbbbgQclp:meaQpmbzeHdOiAlCvXoQrLpxssssssssssssssssp9ogLpxssssssssssssssssp8JgQp5b9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibaKc:q:yjjbfpbbbgYaYpmbbbbbbbbbbbbbbbbaQp5e9cjF;8;4;W;G;ab9:9cU1:NgKcitc:q1jjbfpbibp9UpmbedilvorzHOACXQLpPaLaQp9spklbalcwfaYpQbfaKc:q:yjjbfRbbfhlxekaXalpbbbpklbalczfhlkaocdfhoaiczfgiak6mbkkalTmbaAci6hHalhOaAcefgohAaoclSmdxekkcbhlaHceGmdkdnakTmbavcjdfazfhiavazfpbdbhYcbhXinaiavcj;cbfaXfgopblbgLcep9TaLpxeeeeeeeeeeeeeeeegQp9op9Hp9rgLaoakfpblbg8Acep9Ta8AaQp9op9Hp9rg8ApmbzeHdOiAlCvXoQrLgEaoamfpblbg3cep9Ta3aQp9op9Hp9rg3aoaxfpblbg5cep9Ta5aQp9op9Hp9rg5pmbzeHdOiAlCvXoQrLg8EpmbezHdiOAlvCXorQLgQaQpmbedibedibedibediaYp9UgYp9AdbbaiadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaEa8EpmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwKDYq8AkEx3m5P8Es8FgLa3a5pmwKDYq8AkEx3m5P8Es8Fg8ApmbezHdiOAlvCXorQLgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfgoaYaLa8ApmwDKYqk8AExm35Ps8E8FgQaQpmbedibedibedibedip9UgYp9AdbbaoadfgoaYaQaQpmlvorlvorlvorlvorp9UgYp9AdbbaoadfgoaYaQaQpmwDqkwDqkwDqkwDqkp9UgYp9AdbbaoadfgoaYaQaQpmxmPsxmPsxmPsxmPsp9UgYp9AdbbaoadfhiaXczfgXak6mbkkazclfgzad6mbkasavcjdfaqad2;8qbbavavcjdfaqcufad2fad;8qbbaqaDfhDc9:hoalmexikkc9:hoxekcbc99aral9Radcaadca0ESEhokavcj;kbf8Kjjjjbaokwbz:bjjjbk;uzeHu8Jjjjjbc;ae9Rgv8Kjjjjbc9:hodnaeci9UgrcHfal0mbcuhoaiRbbgwc;WeGc;Ge9hmbawcsGgDce0mbavc;abfcFecje;8kbavcUf9cu83ibavc8Wf9cu83ibavcyf9cu83ibavcaf9cu83ibavcKf9cu83ibavczf9cu83ibav9cu83iwav9cu83ibaialfc9WfhqaicefgwarfhodnaeTmbcmcsaDceSEhkcbhxcbhmcbhDcbhicbhlindnaoaq9nmbc9:hoxikdndnawRbbgrc;Ve0mbavc;abfalarcl4cu7fcsGcitfgPydlhsaPydbhzdnarcsGgPak9pmbavaiarcu7fcsGcdtfydbaxaPEhraPThPdndnadcd9hmbabaDcetfgHaz87ebaHcdfas87ebaHclfar87ebxekabaDcdtfgHazBdbaHclfasBdbaHcwfarBdbkaxaPfhxavc;abfalcitfgHarBdbaHasBdlavaicdtfarBdbavc;abfalcefcsGglcitfgHazBdbaHarBdlaiaPfhialcefhlxdkdndnaPcsSmbamaPfaPc987fcefhmxekaocefhrao8SbbgPcFeGhHdndnaPcu9mmbarhoxekaocvfhoaHcFbGhHcrhPdninar8SbbgOcFbGaPtaHVhHaOcu9kmearcefhraPcrfgPc8J9hmbxdkkarcefhokaHce4cbaHceG9R7amfhmkdndnadcd9hmbabaDcetfgraz87ebarcdfas87ebarclfam87ebxekabaDcdtfgrazBdbarclfasBdbarcwfamBdbkavc;abfalcitfgramBdbarasBdlavaicdtfamBdbavc;abfalcefcsGglcitfgrazBdbaramBdlaicefhialcefhlxekdnarcpe0mbaxcefgOavaiaqarcsGfRbbgPcl49RcsGcdtfydbaPcz6gHEhravaiaP9RcsGcdtfydbaOaHfgsaPcsGgOEhPaOThOdndnadcd9hmbabaDcetfgzax87ebazcdfar87ebazclfaP87ebxekabaDcdtfgzaxBdbazclfarBdbazcwfaPBdbkavaicdtfaxBdbavc;abfalcitfgzarBdbazaxBdlavaicefgicsGcdtfarBdbavc;abfalcefcsGcitfgzaPBdbazarBdlavaiaHfcsGgicdtfaPBdbavc;abfalcdfcsGglcitfgraxBdbaraPBdlalcefhlaiaOfhiasaOfhxxekaxcbaoRbbgzEgAarc;:eSgrfhsazcsGhCazcl4hXdndnazcs0mbascefhOxekashOavaiaX9RcsGcdtfydbhskdndnaCmbaOcefhxxekaOhxavaiaz9RcsGcdtfydbhOkdndnarTmbaocefhrxekaocdfhrao8SbegHcFeGhPdnaHcu9kmbaocofhAaPcFbGhPcrhodninar8SbbgHcFbGaotaPVhPaHcu9kmearcefhraocrfgoc8J9hmbkaAhrxekarcefhrkaPce4cbaPceG9R7amfgmhAkdndnaXcsSmbarhPxekarcefhPar8SbbgocFeGhHdnaocu9kmbarcvfhsaHcFbGhHcrhodninaP8SbbgrcFbGaotaHVhHarcu9kmeaPcefhPaocrfgoc8J9hmbkashPxekaPcefhPkaHce4cbaHceG9R7amfgmhskdndnaCcsSmbaPhoxekaPcefhoaP8SbbgrcFeGhHdnarcu9kmbaPcvfhOaHcFbGhHcrhrdninao8SbbgPcFbGartaHVhHaPcu9kmeaocefhoarcrfgrc8J9hmbkaOhoxekaocefhokaHce4cbaHceG9R7amfgmhOkdndnadcd9hmbabaDcetfgraA87ebarcdfas87ebarclfaO87ebxekabaDcdtfgraABdbarclfasBdbarcwfaOBdbkavc;abfalcitfgrasBdbaraABdlavaicdtfaABdbavc;abfalcefcsGcitfgraOBdbarasBdlavaicefgicsGcdtfasBdbavc;abfalcdfcsGcitfgraABdbaraOBdlavaiazcz6aXcsSVfgicsGcdtfaOBdbaiaCTaCcsSVfhialcifhlkawcefhwalcsGhlaicsGhiaDcifgDae6mbkkcbc99aoaqSEhokavc;aef8Kjjjjbaok:llevu8Jjjjjbcz9Rhvc9:hodnaecvfal0mbcuhoaiRbbc;:eGc;qe9hmbav9cb83iwaicefhraialfc98fhwdnaeTmbdnadcdSmbcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcdtfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfglBdbaoalBdbaDcefgDae9hmbxdkkcbhDindnaraw6mbc9:skarcefhoar8SbbglcFeGhidndnalcu9mmbaohrxekarcvfhraicFbGhicrhldninao8SbbgdcFbGaltaiVhiadcu9kmeaocefhoalcrfglc8J9hmbxdkkaocefhrkabaDcetfaicd4cbaice4ceG9R7avcwfaiceGcdtVgoydbfgl87ebaoalBdbaDcefgDae9hmbkkcbc99arawSEhokaok:EPliuo97eue978Jjjjjbca9Rhidndnadcl9hmbdnaec98GglTmbcbhvabhdinadadpbbbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpkbbadczfhdavclfgval6mbkkalae9pmeaiaeciGgvcdtgdVcbczad9R;8kbaiabalcdtfglad;8qbbdnavTmbaiaipblbgocKp:RecKp:Sep;6egraocwp:RecKp:Sep;6earp;Geaoczp:RecKp:Sep;6egwp;Gep;Kep;LegDpxbbbbbbbbbbbbbbbbp:2egqarpxbbbjbbbjbbbjbbbjgkp9op9rp;Kegrpxbb;:9cbb;:9cbb;:9cbb;:9cararp;MeaDaDp;Meawaqawakp9op9rp;Kegrarp;Mep;Kep;Kep;Jep;Negwp;Mepxbbn0bbn0bbn0bbn0gqp;KepxFbbbFbbbFbbbFbbbp9oaopxbbbFbbbFbbbFbbbFp9op9qarawp;Meaqp;Kecwp:RepxbFbbbFbbbFbbbFbbp9op9qaDawp;Meaqp;Keczp:RepxbbFbbbFbbbFbbbFbp9op9qpklbkalaiad;8qbbskdnaec98GgxTmbcbhvabhdinadczfglalpbbbgopxbbbbbbFFbbbbbbFFgkp9oadpbbbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpkbbadaDakp9oawaopmbezHdiOAlvCXorQLp9qpkbbadcafhdavclfgvax6mbkkaxae9pmbaiaeciGgvcitgdfcbcaad9R;8kbaiabaxcitfglad;8qbbdnavTmbaiaipblzgopxbbbbbbFFbbbbbbFFgkp9oaipblbgDaopmlvorxmPsCXQL358E8FpxFubbFubbFubbFubbp9op;6eaDaopmbediwDqkzHOAKY8AEgoczp:Sep;6egrp;Geaoczp:Reczp:Sep;6egwp;Gep;Kep;Legopxb;:FSb;:FSb;:FSb;:FSawaopxbbbbbbbbbbbbbbbbp:2egqawpxbbbjbbbjbbbjbbbjgmp9op9rp;Kegwawp;Meaoaop;Mearaqaramp9op9rp;Kegoaop;Mep;Kep;Kep;Jep;Negrp;Mepxbbn0bbn0bbn0bbn0gqp;Keczp:Reawarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9op9qgwaoarp;Meaqp;KepxFFbbFFbbFFbbFFbbp9ogopmwDKYqk8AExm35Ps8E8Fp9qpklzaiaDakp9oawaopmbezHdiOAlvCXorQLp9qpklbkalaiad;8qbbkk;4wllue97euv978Jjjjjbc8W9Rhidnaec98GglTmbcbhvabhoinaiaopbbbgraoczfgwpbbbgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklbaopxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblbpEb:T:j83ibaocwfarp5eaipblbpEe:T:j83ibawaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblbpEd:T:j83ibaocKfakp5eaipblbpEi:T:j83ibaocafhoavclfgval6mbkkdnalae9pmbaiaeciGgvcitgofcbcaao9R;8kbaiabalcitfgwao;8qbbdnavTmbaiaipblbgraipblzgDpmlvorxmPsCXQL358E8Fgqczp:Segkclp:RepklaaipxbbjZbbjZbbjZbbjZpx;Zl81Z;Zl81Z;Zl81Z;Zl81Zakpxibbbibbbibbbibbbp9qp;6ep;NegkaraDpmbediwDqkzHOAKY8AEgrczp:Reczp:Sep;6ep;MegDaDp;Meakarczp:Sep;6ep;Megxaxp;Meakaqczp:Reczp:Sep;6ep;Megqaqp;Mep;Kep;Kep;Lepxbbbbbbbbbbbbbbbbp:4ep;Jepxb;:FSb;:FSb;:FSb;:FSgkp;Mepxbbn0bbn0bbn0bbn0grp;KepxFFbbFFbbFFbbFFbbgmp9oaxakp;Mearp;Keczp:Rep9qgxaqakp;Mearp;Keczp:ReaDakp;Mearp;Keamp9op9qgkpmbezHdiOAlvCXorQLgrp5baipblapEb:T:j83ibaiarp5eaipblapEe:T:j83iwaiaxakpmwDKYqk8AExm35Ps8E8Fgkp5baipblapEd:T:j83izaiakp5eaipblapEi:T:j83iKkawaiao;8qbbkk:Pddiue978Jjjjjbc;ab9Rhidnadcd4ae2glc98GgvTmbcbhdabheinaeaepbbbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepkbbaeczfheadclfgdav6mbkkdnaval9pmbaialciGgdcdtgeVcbc;abae9R;8kbaiabavcdtfgvae;8qbbdnadTmbaiaipblbgocwp:Recwp:Sep;6eaocep:SepxbbjZbbjZbbjZbbjZp:UepxbbjFbbjFbbjFbbjFp9op;Mepklbkavaiae;8qbbkk9teiucbcbydj1jjbgeabcifc98GfgbBdj1jjbdndnabZbcztgd9nmbcuhiabad9RcFFifcz4nbcuSmekaehikaikkkebcjwklz9Tbb";
|
|
5017
|
-
var wasmpack = new Uint8Array([
|
|
5018
|
-
32,
|
|
5019
|
-
0,
|
|
5020
|
-
65,
|
|
5021
|
-
2,
|
|
5022
|
-
1,
|
|
5023
|
-
106,
|
|
5024
|
-
34,
|
|
5025
|
-
33,
|
|
5026
|
-
3,
|
|
5027
|
-
128,
|
|
5028
|
-
11,
|
|
5029
|
-
4,
|
|
5030
|
-
13,
|
|
5031
|
-
64,
|
|
5032
|
-
6,
|
|
5033
|
-
253,
|
|
5034
|
-
10,
|
|
5035
|
-
7,
|
|
5036
|
-
15,
|
|
5037
|
-
116,
|
|
5038
|
-
127,
|
|
5039
|
-
5,
|
|
5040
|
-
8,
|
|
5041
|
-
12,
|
|
5042
|
-
40,
|
|
5043
|
-
16,
|
|
5044
|
-
19,
|
|
5045
|
-
54,
|
|
5046
|
-
20,
|
|
5047
|
-
9,
|
|
5048
|
-
27,
|
|
5049
|
-
255,
|
|
5050
|
-
113,
|
|
5051
|
-
17,
|
|
5052
|
-
42,
|
|
5053
|
-
67,
|
|
5054
|
-
24,
|
|
5055
|
-
23,
|
|
5056
|
-
146,
|
|
5057
|
-
148,
|
|
5058
|
-
18,
|
|
5059
|
-
14,
|
|
5060
|
-
22,
|
|
5061
|
-
45,
|
|
5062
|
-
70,
|
|
5063
|
-
69,
|
|
5064
|
-
56,
|
|
5065
|
-
114,
|
|
5066
|
-
101,
|
|
5067
|
-
21,
|
|
5068
|
-
25,
|
|
5069
|
-
63,
|
|
5070
|
-
75,
|
|
5071
|
-
136,
|
|
5072
|
-
108,
|
|
5073
|
-
28,
|
|
5074
|
-
118,
|
|
5075
|
-
29,
|
|
5076
|
-
73,
|
|
5077
|
-
115
|
|
5078
|
-
]);
|
|
5079
|
-
// @ts-ignore
|
|
5080
|
-
var wasm = engineCore.SystemInfo._detectSIMDSupported() ? wasm_simd : wasm_base;
|
|
5081
|
-
var instance;
|
|
5082
|
-
ready = WebAssembly.instantiate(unpack(wasm)).then(function(result) {
|
|
5083
|
-
instance = result.instance;
|
|
5084
|
-
instance.exports.__wasm_call_ctors();
|
|
5085
|
-
}).then(function() {
|
|
5086
|
-
return {
|
|
5087
|
-
workerCount: 4,
|
|
5088
|
-
ready: ready,
|
|
5089
|
-
useWorkers: function useWorkers(workerCount) {
|
|
5090
|
-
this.workerCount = workerCount != null ? workerCount : this.workerCount;
|
|
5091
|
-
initWorkers(this.workerCount);
|
|
5092
|
-
},
|
|
5093
|
-
decodeGltfBuffer: function decodeGltfBuffer(count, stride, source, mode, filter) {
|
|
5094
|
-
if (this.workerCount > 0 && workers.length === 0) this.useWorkers();
|
|
5095
|
-
if (workers.length > 0) return decodeWorker(count, stride, source, decoders[mode], filters[filter]);
|
|
5096
|
-
return ready.then(function() {
|
|
5097
|
-
var target = new Uint8Array(count * stride);
|
|
5098
|
-
decode(instance.exports[decoders[mode]], target, count, stride, source, instance.exports[filters[filter]]);
|
|
5099
|
-
return target;
|
|
5100
|
-
});
|
|
5101
|
-
},
|
|
5102
|
-
release: function release() {
|
|
5103
|
-
for(var i = 0; i < workers.length; i++){
|
|
5104
|
-
workers[i].object.terminate();
|
|
5105
|
-
}
|
|
5106
|
-
}
|
|
5107
|
-
};
|
|
5108
|
-
});
|
|
5109
|
-
var filters = {
|
|
5110
|
-
NONE: "",
|
|
5111
|
-
OCTAHEDRAL: "meshopt_decodeFilterOct",
|
|
5112
|
-
QUATERNION: "meshopt_decodeFilterQuat",
|
|
5113
|
-
EXPONENTIAL: "meshopt_decodeFilterExp"
|
|
5114
|
-
};
|
|
5115
|
-
var decoders = {
|
|
5116
|
-
ATTRIBUTES: "meshopt_decodeVertexBuffer",
|
|
5117
|
-
TRIANGLES: "meshopt_decodeIndexBuffer",
|
|
5118
|
-
INDICES: "meshopt_decodeIndexSequence"
|
|
5119
|
-
};
|
|
5120
|
-
var workers = [];
|
|
5121
|
-
var requestId = 0;
|
|
5122
|
-
return ready;
|
|
5123
|
-
}
|
|
5124
|
-
|
|
5125
5161
|
exports.GLTFLoader = /*#__PURE__*/ function(Loader1) {
|
|
5126
5162
|
_inherits(GLTFLoader, Loader1);
|
|
5127
5163
|
function GLTFLoader() {
|
|
@@ -5145,10 +5181,19 @@ exports.GLTFLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
5145
5181
|
var context = new GLTFParserContext(glTFResource, resourceManager, _extends({
|
|
5146
5182
|
keepMeshData: false
|
|
5147
5183
|
}, params));
|
|
5148
|
-
return new engineCore.AssetPromise(function(resolve, reject, setTaskCompleteProgress, setTaskDetailProgress) {
|
|
5184
|
+
return new engineCore.AssetPromise(function(resolve, reject, setTaskCompleteProgress, setTaskDetailProgress, onTaskCancel) {
|
|
5149
5185
|
context._setTaskCompleteProgress = setTaskCompleteProgress;
|
|
5150
5186
|
context._setTaskDetailProgress = setTaskDetailProgress;
|
|
5151
|
-
|
|
5187
|
+
onTaskCancel(function() {
|
|
5188
|
+
var getPromises = context._getPromises;
|
|
5189
|
+
for(var i = 0, n = getPromises.length; i < n; i++){
|
|
5190
|
+
getPromises[i].cancel();
|
|
5191
|
+
}
|
|
5192
|
+
});
|
|
5193
|
+
context.parse().then(resolve).catch(function(e) {
|
|
5194
|
+
glTFResource.destroy();
|
|
5195
|
+
reject(e);
|
|
5196
|
+
});
|
|
5152
5197
|
});
|
|
5153
5198
|
};
|
|
5154
5199
|
/**
|
|
@@ -6697,18 +6742,24 @@ var KHR_materials_clearcoat = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
|
6697
6742
|
exports.GLTFMaterialParser._checkOtherTextureTransform(clearcoatTexture, "Clear coat");
|
|
6698
6743
|
context.get(exports.GLTFParserType.Texture, clearcoatTexture.index).then(function(texture) {
|
|
6699
6744
|
material.clearCoatTexture = texture;
|
|
6745
|
+
}).catch(function(e) {
|
|
6746
|
+
engineCore.Logger.error("KHR_materials_clearcoat: clearcoat texture error", e);
|
|
6700
6747
|
});
|
|
6701
6748
|
}
|
|
6702
6749
|
if (clearcoatRoughnessTexture) {
|
|
6703
6750
|
exports.GLTFMaterialParser._checkOtherTextureTransform(clearcoatRoughnessTexture, "Clear coat roughness");
|
|
6704
6751
|
context.get(exports.GLTFParserType.Texture, clearcoatRoughnessTexture.index).then(function(texture) {
|
|
6705
6752
|
material.clearCoatRoughnessTexture = texture;
|
|
6753
|
+
}).catch(function(e) {
|
|
6754
|
+
engineCore.Logger.error("KHR_materials_clearcoat: clearcoat roughness texture error", e);
|
|
6706
6755
|
});
|
|
6707
6756
|
}
|
|
6708
6757
|
if (clearcoatNormalTexture) {
|
|
6709
6758
|
exports.GLTFMaterialParser._checkOtherTextureTransform(clearcoatNormalTexture, "Clear coat normal");
|
|
6710
6759
|
context.get(exports.GLTFParserType.Texture, clearcoatNormalTexture.index).then(function(texture) {
|
|
6711
6760
|
material.clearCoatNormalTexture = texture;
|
|
6761
|
+
}).catch(function(e) {
|
|
6762
|
+
engineCore.Logger.error("KHR_materials_clearcoat: clearcoat normal texture error", e);
|
|
6712
6763
|
});
|
|
6713
6764
|
}
|
|
6714
6765
|
};
|
|
@@ -6751,6 +6802,8 @@ var KHR_materials_pbrSpecularGlossiness = /*#__PURE__*/ function(GLTFExtensionPa
|
|
|
6751
6802
|
context.get(exports.GLTFParserType.Texture, diffuseTexture.index).then(function(texture) {
|
|
6752
6803
|
material.baseTexture = texture;
|
|
6753
6804
|
GLTFParser.executeExtensionsAdditiveAndParse(diffuseTexture.extensions, context, material, diffuseTexture);
|
|
6805
|
+
}).catch(function(e) {
|
|
6806
|
+
engineCore.Logger.error("KHR_materials_pbrSpecularGlossiness: diffuse texture error", e);
|
|
6754
6807
|
});
|
|
6755
6808
|
}
|
|
6756
6809
|
if (specularFactor) {
|
|
@@ -6763,6 +6816,8 @@ var KHR_materials_pbrSpecularGlossiness = /*#__PURE__*/ function(GLTFExtensionPa
|
|
|
6763
6816
|
exports.GLTFMaterialParser._checkOtherTextureTransform(specularGlossinessTexture, "Specular glossiness");
|
|
6764
6817
|
context.get(exports.GLTFParserType.Texture, specularGlossinessTexture.index).then(function(texture) {
|
|
6765
6818
|
material.specularGlossinessTexture = texture;
|
|
6819
|
+
}).catch(function(e) {
|
|
6820
|
+
engineCore.Logger.error("KHR_materials_pbrSpecularGlossiness: specular glossiness texture error", e);
|
|
6766
6821
|
});
|
|
6767
6822
|
}
|
|
6768
6823
|
material.name = ownerSchema.name;
|
|
@@ -6811,6 +6866,8 @@ var KHR_materials_variants = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
|
6811
6866
|
return variantNames[index].name;
|
|
6812
6867
|
})
|
|
6813
6868
|
});
|
|
6869
|
+
}).catch(function(e) {
|
|
6870
|
+
engineCore.Logger.error("KHR_materials_variants: material error", e);
|
|
6814
6871
|
});
|
|
6815
6872
|
};
|
|
6816
6873
|
var _glTFResource;
|
|
@@ -6845,57 +6902,49 @@ var KHR_texture_basisu = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
|
6845
6902
|
}
|
|
6846
6903
|
var _proto = KHR_texture_basisu.prototype;
|
|
6847
6904
|
_proto.createAndParse = function createAndParse(context, schema, textureInfo) {
|
|
6848
|
-
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
|
|
6853
|
-
|
|
6854
|
-
|
|
6855
|
-
|
|
6856
|
-
|
|
6857
|
-
|
|
6858
|
-
|
|
6859
|
-
|
|
6860
|
-
|
|
6861
|
-
|
|
6862
|
-
|
|
6863
|
-
|
|
6864
|
-
|
|
6865
|
-
|
|
6905
|
+
var glTF = context.glTF, glTFResource = context.glTFResource;
|
|
6906
|
+
var engine = glTFResource.engine, url = glTFResource.url;
|
|
6907
|
+
var sampler = textureInfo.sampler, textureName = textureInfo.name;
|
|
6908
|
+
var source = schema.source;
|
|
6909
|
+
var _glTF_images_source = glTF.images[source], uri = _glTF_images_source.uri, bufferViewIndex = _glTF_images_source.bufferView, mimeType = _glTF_images_source.mimeType, imageName = _glTF_images_source.name;
|
|
6910
|
+
var samplerInfo = sampler !== undefined && GLTFUtils.getSamplerInfo(glTF.samplers[sampler]);
|
|
6911
|
+
if (uri) {
|
|
6912
|
+
var index = uri.lastIndexOf(".");
|
|
6913
|
+
var promise = engine.resourceManager.load({
|
|
6914
|
+
url: engineCore.Utils.resolveAbsoluteUrl(url, uri),
|
|
6915
|
+
type: engineCore.AssetType.KTX2
|
|
6916
|
+
}).onProgress(undefined, context._onTaskDetail).then(function(texture) {
|
|
6917
|
+
if (!texture.name) {
|
|
6918
|
+
texture.name = textureName || imageName || "texture_" + index;
|
|
6919
|
+
}
|
|
6920
|
+
if (sampler !== undefined) {
|
|
6921
|
+
GLTFUtils.parseSampler(texture, samplerInfo);
|
|
6922
|
+
}
|
|
6923
|
+
return texture;
|
|
6924
|
+
});
|
|
6925
|
+
context._addTaskCompletePromise(promise);
|
|
6926
|
+
return promise;
|
|
6927
|
+
} else {
|
|
6928
|
+
var bufferView = glTF.bufferViews[bufferViewIndex];
|
|
6929
|
+
return new engineCore.AssetPromise(function(resolve, reject) {
|
|
6930
|
+
context.get(exports.GLTFParserType.Buffer, bufferView.buffer).then(function(buffer) {
|
|
6931
|
+
var imageBuffer = new Uint8Array(buffer, bufferView.byteOffset, bufferView.byteLength);
|
|
6932
|
+
exports.KTX2Loader._parseBuffer(imageBuffer, engine).then(function(param) {
|
|
6933
|
+
var engine = param.engine, result = param.result, targetFormat = param.targetFormat, params = param.params;
|
|
6934
|
+
var texture = exports.KTX2Loader._createTextureByBuffer(engine, result, targetFormat, params);
|
|
6935
|
+
texture.name = textureName || imageName || "texture_" + bufferViewIndex;
|
|
6866
6936
|
if (sampler !== undefined) {
|
|
6867
6937
|
GLTFUtils.parseSampler(texture, samplerInfo);
|
|
6868
6938
|
}
|
|
6869
|
-
|
|
6870
|
-
|
|
6871
|
-
|
|
6872
|
-
|
|
6873
|
-
|
|
6874
|
-
|
|
6875
|
-
|
|
6876
|
-
} else {
|
|
6877
|
-
bufferView = glTF.bufferViews[bufferViewIndex];
|
|
6878
|
-
return [
|
|
6879
|
-
2,
|
|
6880
|
-
context.get(exports.GLTFParserType.Buffer, bufferView.buffer).then(function(buffer) {
|
|
6881
|
-
var imageBuffer = new Uint8Array(buffer, bufferView.byteOffset, bufferView.byteLength);
|
|
6882
|
-
return exports.KTX2Loader._parseBuffer(imageBuffer, engine).then(function(param) {
|
|
6883
|
-
var engine = param.engine, result = param.result, targetFormat = param.targetFormat, params = param.params;
|
|
6884
|
-
return exports.KTX2Loader._createTextureByBuffer(engine, result, targetFormat, params);
|
|
6885
|
-
}).then(function(texture) {
|
|
6886
|
-
texture.name = textureName || imageName || "texture_" + bufferViewIndex;
|
|
6887
|
-
if (sampler !== undefined) {
|
|
6888
|
-
GLTFUtils.parseSampler(texture, samplerInfo);
|
|
6889
|
-
}
|
|
6890
|
-
var bufferTextureRestoreInfo = new BufferTextureRestoreInfo(texture, bufferView, mimeType);
|
|
6891
|
-
context.contentRestorer.bufferTextures.push(bufferTextureRestoreInfo);
|
|
6892
|
-
return texture;
|
|
6893
|
-
});
|
|
6894
|
-
})
|
|
6895
|
-
];
|
|
6896
|
-
}
|
|
6939
|
+
var bufferTextureRestoreInfo = new BufferTextureRestoreInfo(texture, bufferView, mimeType);
|
|
6940
|
+
context.contentRestorer.bufferTextures.push(bufferTextureRestoreInfo);
|
|
6941
|
+
resolve(texture);
|
|
6942
|
+
}).catch(reject);
|
|
6943
|
+
}).catch(function(e) {
|
|
6944
|
+
engineCore.Logger.error("KHR_texture_basisu: buffer error", e);
|
|
6945
|
+
});
|
|
6897
6946
|
});
|
|
6898
|
-
}
|
|
6947
|
+
}
|
|
6899
6948
|
};
|
|
6900
6949
|
return KHR_texture_basisu;
|
|
6901
6950
|
}(GLTFExtensionParser);
|
|
@@ -6985,6 +7034,8 @@ var EXT_meshopt_compression = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
|
6985
7034
|
return getMeshoptDecoder().then(function(decoder) {
|
|
6986
7035
|
return decoder.decodeGltfBuffer(schema.count, schema.byteStride, new Uint8Array(arrayBuffer, schema.byteOffset, schema.byteLength), schema.mode, schema.filter);
|
|
6987
7036
|
});
|
|
7037
|
+
}).catch(function(e) {
|
|
7038
|
+
engineCore.Logger.error("EXT_meshopt_compression: buffer error", e);
|
|
6988
7039
|
});
|
|
6989
7040
|
};
|
|
6990
7041
|
return EXT_meshopt_compression;
|
|
@@ -7007,6 +7058,8 @@ var KHR_materials_anisotropy = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
|
7007
7058
|
exports.GLTFMaterialParser._checkOtherTextureTransform(anisotropyTexture, "Anisotropy texture");
|
|
7008
7059
|
context.get(exports.GLTFParserType.Texture, anisotropyTexture.index).then(function(texture) {
|
|
7009
7060
|
material.anisotropyTexture = texture;
|
|
7061
|
+
}).catch(function(e) {
|
|
7062
|
+
engineCore.Logger.error("KHR_materials_anisotropy: anisotropy texture error", e);
|
|
7010
7063
|
});
|
|
7011
7064
|
}
|
|
7012
7065
|
};
|
|
@@ -7034,19 +7087,10 @@ var EXT_texture_webp = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
|
7034
7087
|
}
|
|
7035
7088
|
var _proto = EXT_texture_webp.prototype;
|
|
7036
7089
|
_proto.createAndParse = function createAndParse(context, schema, textureInfo, textureIndex) {
|
|
7037
|
-
var
|
|
7038
|
-
|
|
7039
|
-
|
|
7040
|
-
|
|
7041
|
-
webPIndex = schema.source;
|
|
7042
|
-
sampler = textureInfo.sampler, tmp = textureInfo.source, fallbackIndex = tmp === void 0 ? 0 : tmp, textureName = textureInfo.name;
|
|
7043
|
-
texture = exports.GLTFTextureParser._parseTexture(context, _this._supportWebP ? webPIndex : fallbackIndex, textureIndex, sampler, textureName);
|
|
7044
|
-
return [
|
|
7045
|
-
2,
|
|
7046
|
-
texture
|
|
7047
|
-
];
|
|
7048
|
-
});
|
|
7049
|
-
})();
|
|
7090
|
+
var webPIndex = schema.source;
|
|
7091
|
+
var sampler = textureInfo.sampler, tmp = textureInfo.source, fallbackIndex = tmp === void 0 ? 0 : tmp, textureName = textureInfo.name;
|
|
7092
|
+
var texture = exports.GLTFTextureParser._parseTexture(context, this._supportWebP ? webPIndex : fallbackIndex, textureIndex, sampler, textureName);
|
|
7093
|
+
return texture;
|
|
7050
7094
|
};
|
|
7051
7095
|
return EXT_texture_webp;
|
|
7052
7096
|
}(GLTFExtensionParser);
|