@galacean/engine-loader 1.2.0-alpha.9 → 1.2.0-beta.1
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 +160 -219
- package/dist/main.js.map +1 -1
- package/dist/miniprogram.js +160 -219
- package/dist/module.js +160 -219
- package/dist/module.js.map +1 -1
- package/package.json +4 -4
- package/types/GLTFContentRestorer.d.ts +7 -6
- package/types/gltf/GLTFUtils.d.ts +5 -9
- package/types/gltf/parser/GLTFMeshParser.d.ts +7 -6
- package/types/gltf/parser/GLTFSchemaParser.d.ts +0 -1
- package/types/resource-deserialize/resources/schema/SceneSchema.d.ts +9 -1
package/dist/miniprogram.js
CHANGED
|
@@ -1007,9 +1007,9 @@ var HierarchyParser = /*#__PURE__*/ function() {
|
|
|
1007
1007
|
}
|
|
1008
1008
|
components.set(path + ":" + name + "/" + componentIndexMap[name]++, component);
|
|
1009
1009
|
});
|
|
1010
|
-
for(var i = 0
|
|
1010
|
+
for(var i = 0, n = entity.children.length; i < n; i++){
|
|
1011
1011
|
var child = entity.children[i];
|
|
1012
|
-
var childPath = path ? path + "/" +
|
|
1012
|
+
var childPath = path ? path + "/" + i : "" + i;
|
|
1013
1013
|
this._traverseAddEntityToMap(child, context, childPath);
|
|
1014
1014
|
}
|
|
1015
1015
|
};
|
|
@@ -2165,111 +2165,68 @@ function registerGLTFParser(pipeline) {
|
|
|
2165
2165
|
};
|
|
2166
2166
|
GLTFUtils.getAccessorBuffer = function getAccessorBuffer(context, bufferViews, accessor) {
|
|
2167
2167
|
var componentType = accessor.componentType;
|
|
2168
|
-
var
|
|
2169
|
-
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
|
|
2174
|
-
|
|
2175
|
-
var
|
|
2176
|
-
var
|
|
2177
|
-
|
|
2178
|
-
|
|
2179
|
-
|
|
2180
|
-
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
var
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
var
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2168
|
+
var TypedArray = GLTFUtils.getComponentType(componentType);
|
|
2169
|
+
var dataElementSize = GLTFUtils.getAccessorTypeSize(accessor.type);
|
|
2170
|
+
var dataElementBytes = TypedArray.BYTES_PER_ELEMENT;
|
|
2171
|
+
var elementStride = dataElementSize * dataElementBytes;
|
|
2172
|
+
var accessorCount = accessor.count;
|
|
2173
|
+
var promise;
|
|
2174
|
+
if (accessor.bufferView !== undefined) {
|
|
2175
|
+
var bufferViewIndex = accessor.bufferView;
|
|
2176
|
+
var bufferView = bufferViews[bufferViewIndex];
|
|
2177
|
+
promise = context.get(exports.GLTFParserType.BufferView, accessor.bufferView).then(function(bufferViewData) {
|
|
2178
|
+
var bufferIndex = bufferView.buffer;
|
|
2179
|
+
var _bufferViewData_byteOffset;
|
|
2180
|
+
var bufferByteOffset = (_bufferViewData_byteOffset = bufferViewData.byteOffset) != null ? _bufferViewData_byteOffset : 0;
|
|
2181
|
+
var _accessor_byteOffset;
|
|
2182
|
+
var byteOffset = (_accessor_byteOffset = accessor.byteOffset) != null ? _accessor_byteOffset : 0;
|
|
2183
|
+
var bufferStride = bufferView.byteStride;
|
|
2184
|
+
var bufferInfo;
|
|
2185
|
+
// According to the glTF official documentation only byteStride not undefined is allowed
|
|
2186
|
+
if (bufferStride !== undefined && bufferStride !== elementStride) {
|
|
2187
|
+
var bufferSlice = Math.floor(byteOffset / bufferStride);
|
|
2188
|
+
var bufferCacheKey = bufferViewIndex + ":" + componentType + ":" + bufferSlice + ":" + accessorCount;
|
|
2189
|
+
var accessorBufferCache = context.accessorBufferCache;
|
|
2190
|
+
bufferInfo = accessorBufferCache[bufferCacheKey];
|
|
2191
|
+
if (!bufferInfo) {
|
|
2192
|
+
var offset = bufferByteOffset + bufferSlice * bufferStride;
|
|
2193
|
+
var count = accessorCount * (bufferStride / dataElementBytes);
|
|
2194
|
+
var data = new TypedArray(bufferViewData.buffer, offset, count);
|
|
2195
|
+
accessorBufferCache[bufferCacheKey] = bufferInfo = new BufferInfo(data, true, bufferStride);
|
|
2196
|
+
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset, count));
|
|
2197
|
+
}
|
|
2198
|
+
} else {
|
|
2199
|
+
var offset1 = bufferByteOffset + byteOffset;
|
|
2200
|
+
var count1 = accessorCount * dataElementSize;
|
|
2201
|
+
var data1 = new TypedArray(bufferViewData.buffer, offset1, count1);
|
|
2202
|
+
bufferInfo = new BufferInfo(data1, false, elementStride);
|
|
2203
|
+
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset1, count1));
|
|
2194
2204
|
}
|
|
2195
|
-
|
|
2196
|
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
});
|
|
2205
|
+
return bufferInfo;
|
|
2206
|
+
});
|
|
2207
|
+
} else {
|
|
2208
|
+
var count = accessorCount * dataElementSize;
|
|
2209
|
+
var data = new TypedArray(count);
|
|
2210
|
+
var bufferInfo = new BufferInfo(data, false, elementStride);
|
|
2211
|
+
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(undefined, TypedArray, undefined, count));
|
|
2212
|
+
promise = Promise.resolve(bufferInfo);
|
|
2213
|
+
}
|
|
2214
|
+
return accessor.sparse ? promise.then(function(bufferInfo) {
|
|
2215
|
+
return GLTFUtils.processingSparseData(context, accessor, bufferInfo).then(function() {
|
|
2216
|
+
return bufferInfo;
|
|
2217
|
+
});
|
|
2218
|
+
}) : promise;
|
|
2209
2219
|
};
|
|
2210
|
-
GLTFUtils.bufferToVector3Array = function bufferToVector3Array(
|
|
2211
|
-
var
|
|
2212
|
-
var
|
|
2213
|
-
var
|
|
2214
|
-
var
|
|
2220
|
+
GLTFUtils.bufferToVector3Array = function bufferToVector3Array(buffer, byteOffset, count, normalized, componentType) {
|
|
2221
|
+
var baseOffset = byteOffset / buffer.BYTES_PER_ELEMENT;
|
|
2222
|
+
var stride = buffer.length / count;
|
|
2223
|
+
var vertices = new Array(count);
|
|
2224
|
+
var factor = normalized ? GLTFUtils.getNormalizedComponentScale(componentType) : 1;
|
|
2215
2225
|
for(var i = 0; i < count; i++){
|
|
2216
|
-
var index =
|
|
2217
|
-
|
|
2226
|
+
var index = baseOffset + i * stride;
|
|
2227
|
+
vertices[i] = new miniprogram$1.Vector3(buffer[index] * factor, buffer[index + 1] * factor, buffer[index + 2] * factor);
|
|
2218
2228
|
}
|
|
2219
|
-
return
|
|
2220
|
-
};
|
|
2221
|
-
/**
|
|
2222
|
-
* @deprecated
|
|
2223
|
-
* Get accessor data.
|
|
2224
|
-
*/ GLTFUtils.getAccessorData = function getAccessorData(glTF, accessor, buffers) {
|
|
2225
|
-
var bufferViews = glTF.bufferViews;
|
|
2226
|
-
var bufferView = bufferViews[accessor.bufferView];
|
|
2227
|
-
var arrayBuffer = buffers[bufferView.buffer];
|
|
2228
|
-
var accessorByteOffset = accessor.hasOwnProperty("byteOffset") ? accessor.byteOffset : 0;
|
|
2229
|
-
var bufferViewByteOffset = bufferView.hasOwnProperty("byteOffset") ? bufferView.byteOffset : 0;
|
|
2230
|
-
var byteOffset = accessorByteOffset + bufferViewByteOffset;
|
|
2231
|
-
var accessorTypeSize = GLTFUtils.getAccessorTypeSize(accessor.type);
|
|
2232
|
-
var length = accessorTypeSize * accessor.count;
|
|
2233
|
-
var _bufferView_byteStride;
|
|
2234
|
-
var byteStride = (_bufferView_byteStride = bufferView.byteStride) != null ? _bufferView_byteStride : 0;
|
|
2235
|
-
var arrayType = GLTFUtils.getComponentType(accessor.componentType);
|
|
2236
|
-
var uint8Array;
|
|
2237
|
-
if (byteStride) {
|
|
2238
|
-
var accessorByteSize = accessorTypeSize * arrayType.BYTES_PER_ELEMENT;
|
|
2239
|
-
uint8Array = new Uint8Array(accessor.count * accessorByteSize);
|
|
2240
|
-
var originalBufferView = new Uint8Array(arrayBuffer, bufferViewByteOffset, bufferView.byteLength);
|
|
2241
|
-
for(var i = 0; i < accessor.count; i++){
|
|
2242
|
-
for(var j = 0; j < accessorByteSize; j++){
|
|
2243
|
-
uint8Array[i * accessorByteSize + j] = originalBufferView[i * byteStride + accessorByteOffset + j];
|
|
2244
|
-
}
|
|
2245
|
-
}
|
|
2246
|
-
} else {
|
|
2247
|
-
uint8Array = new Uint8Array(arrayBuffer.slice(byteOffset, byteOffset + length * arrayType.BYTES_PER_ELEMENT));
|
|
2248
|
-
}
|
|
2249
|
-
var typedArray = new arrayType(uint8Array.buffer);
|
|
2250
|
-
if (accessor.sparse) {
|
|
2251
|
-
var _accessor_sparse = accessor.sparse, count = _accessor_sparse.count, indices = _accessor_sparse.indices, values = _accessor_sparse.values;
|
|
2252
|
-
var indicesBufferView = bufferViews[indices.bufferView];
|
|
2253
|
-
var valuesBufferView = bufferViews[values.bufferView];
|
|
2254
|
-
var indicesArrayBuffer = buffers[indicesBufferView.buffer];
|
|
2255
|
-
var valuesArrayBuffer = buffers[valuesBufferView.buffer];
|
|
2256
|
-
var _indices_byteOffset, _indicesBufferView_byteOffset;
|
|
2257
|
-
var indicesByteOffset = ((_indices_byteOffset = indices.byteOffset) != null ? _indices_byteOffset : 0) + ((_indicesBufferView_byteOffset = indicesBufferView.byteOffset) != null ? _indicesBufferView_byteOffset : 0);
|
|
2258
|
-
var indicesByteLength = indicesBufferView.byteLength;
|
|
2259
|
-
var _values_byteOffset, _valuesBufferView_byteOffset;
|
|
2260
|
-
var valuesByteOffset = ((_values_byteOffset = values.byteOffset) != null ? _values_byteOffset : 0) + ((_valuesBufferView_byteOffset = valuesBufferView.byteOffset) != null ? _valuesBufferView_byteOffset : 0);
|
|
2261
|
-
var valuesByteLength = valuesBufferView.byteLength;
|
|
2262
|
-
var indicesType = GLTFUtils.getComponentType(indices.componentType);
|
|
2263
|
-
var indicesArray = new indicesType(indicesArrayBuffer, indicesByteOffset, indicesByteLength / indicesType.BYTES_PER_ELEMENT);
|
|
2264
|
-
var valuesArray = new arrayType(valuesArrayBuffer, valuesByteOffset, valuesByteLength / arrayType.BYTES_PER_ELEMENT);
|
|
2265
|
-
for(var i1 = 0; i1 < count; i1++){
|
|
2266
|
-
var replaceIndex = indicesArray[i1];
|
|
2267
|
-
for(var j1 = 0; j1 < accessorTypeSize; j1++){
|
|
2268
|
-
typedArray[replaceIndex * accessorTypeSize + j1] = valuesArray[i1 * accessorTypeSize + j1];
|
|
2269
|
-
}
|
|
2270
|
-
}
|
|
2271
|
-
}
|
|
2272
|
-
return typedArray;
|
|
2229
|
+
return vertices;
|
|
2273
2230
|
};
|
|
2274
2231
|
GLTFUtils.getBufferViewData = function getBufferViewData(bufferView, buffers) {
|
|
2275
2232
|
var _bufferView_byteOffset = bufferView.byteOffset, byteOffset = _bufferView_byteOffset === void 0 ? 0 : _bufferView_byteOffset;
|
|
@@ -2403,7 +2360,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2403
2360
|
};
|
|
2404
2361
|
/**
|
|
2405
2362
|
* Parse the glb format.
|
|
2406
|
-
*/ GLTFUtils.parseGLB = function parseGLB(context,
|
|
2363
|
+
*/ GLTFUtils.parseGLB = function parseGLB(context, originBuffer) {
|
|
2407
2364
|
var UINT32_LENGTH = 4;
|
|
2408
2365
|
var GLB_HEADER_MAGIC = 0x46546c67; // 'glTF'
|
|
2409
2366
|
var GLB_HEADER_LENGTH = 12;
|
|
@@ -2411,7 +2368,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2411
2368
|
JSON: 0x4e4f534a,
|
|
2412
2369
|
BIN: 0x004e4942
|
|
2413
2370
|
};
|
|
2414
|
-
var dataView = new DataView(
|
|
2371
|
+
var dataView = new DataView(originBuffer);
|
|
2415
2372
|
// read header
|
|
2416
2373
|
var header = {
|
|
2417
2374
|
magic: dataView.getUint32(0, true),
|
|
@@ -2419,8 +2376,9 @@ function registerGLTFParser(pipeline) {
|
|
|
2419
2376
|
length: dataView.getUint32(2 * UINT32_LENGTH, true)
|
|
2420
2377
|
};
|
|
2421
2378
|
if (header.magic !== GLB_HEADER_MAGIC) {
|
|
2422
|
-
|
|
2423
|
-
|
|
2379
|
+
return {
|
|
2380
|
+
originBuffer: originBuffer
|
|
2381
|
+
};
|
|
2424
2382
|
}
|
|
2425
2383
|
// read main data
|
|
2426
2384
|
var chunkLength = dataView.getUint32(GLB_HEADER_LENGTH, true);
|
|
@@ -2430,7 +2388,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2430
2388
|
console.error("Invalid glb chunk type. Expected 0x4E4F534A, found 0x" + chunkType.toString(16));
|
|
2431
2389
|
return null;
|
|
2432
2390
|
}
|
|
2433
|
-
var glTFData = new Uint8Array(
|
|
2391
|
+
var glTFData = new Uint8Array(originBuffer, GLB_HEADER_LENGTH + 2 * UINT32_LENGTH, chunkLength);
|
|
2434
2392
|
var glTF = JSON.parse(miniprogram.Utils.decodeText(glTFData));
|
|
2435
2393
|
// read all buffers
|
|
2436
2394
|
var buffers = [];
|
|
@@ -2444,7 +2402,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2444
2402
|
return null;
|
|
2445
2403
|
}
|
|
2446
2404
|
var currentOffset = byteOffset + 2 * UINT32_LENGTH;
|
|
2447
|
-
var buffer =
|
|
2405
|
+
var buffer = originBuffer.slice(currentOffset, currentOffset + chunkLength);
|
|
2448
2406
|
buffers.push(buffer);
|
|
2449
2407
|
restoreGLBBufferSlice.push(new miniprogram$1.Vector2(currentOffset, chunkLength));
|
|
2450
2408
|
byteOffset += chunkLength + 2 * UINT32_LENGTH;
|
|
@@ -3583,16 +3541,16 @@ exports.KTX2Transcoder = void 0;
|
|
|
3583
3541
|
var frame = restoreInfo.blendShape.frames[0];
|
|
3584
3542
|
var position = restoreInfo.position;
|
|
3585
3543
|
var positionData = _this._getBufferData(buffers, position.buffer);
|
|
3586
|
-
frame.deltaPositions = GLTFUtils.bufferToVector3Array(positionData, position.
|
|
3544
|
+
frame.deltaPositions = GLTFUtils.bufferToVector3Array(positionData, position.byteOffset, position.count, position.normalized, position.componentType);
|
|
3587
3545
|
if (restoreInfo.normal) {
|
|
3588
3546
|
var normal = restoreInfo.normal;
|
|
3589
3547
|
var normalData = _this._getBufferData(buffers, normal.buffer);
|
|
3590
|
-
frame.deltaNormals = GLTFUtils.bufferToVector3Array(normalData, normal.
|
|
3548
|
+
frame.deltaNormals = GLTFUtils.bufferToVector3Array(normalData, normal.byteOffset, normal.count, normal.normalized, normal.componentType);
|
|
3591
3549
|
}
|
|
3592
3550
|
if (restoreInfo.tangent) {
|
|
3593
3551
|
var tangent = restoreInfo.tangent;
|
|
3594
3552
|
var tangentData = _this._getBufferData(buffers, tangent.buffer);
|
|
3595
|
-
frame.deltaTangents = GLTFUtils.bufferToVector3Array(tangentData, tangent.
|
|
3553
|
+
frame.deltaTangents = GLTFUtils.bufferToVector3Array(tangentData, tangent.byteOffset, tangent.count, tangent.normalized, tangent.componentType);
|
|
3596
3554
|
}
|
|
3597
3555
|
}
|
|
3598
3556
|
mesh.uploadData(true);
|
|
@@ -3604,8 +3562,13 @@ exports.KTX2Transcoder = void 0;
|
|
|
3604
3562
|
};
|
|
3605
3563
|
_proto._getBufferData = function _getBufferData(buffers, restoreInfo) {
|
|
3606
3564
|
var main = restoreInfo.main;
|
|
3607
|
-
var
|
|
3608
|
-
|
|
3565
|
+
var data;
|
|
3566
|
+
if (main) {
|
|
3567
|
+
var buffer = buffers[main.bufferIndex];
|
|
3568
|
+
data = new main.TypedArray(buffer, main.byteOffset, main.length);
|
|
3569
|
+
} else {
|
|
3570
|
+
data = new main.TypedArray(main.length);
|
|
3571
|
+
}
|
|
3609
3572
|
var sparseCount = restoreInfo.sparseCount;
|
|
3610
3573
|
if (sparseCount) {
|
|
3611
3574
|
var sparseIndex = restoreInfo.sparseIndices;
|
|
@@ -3678,11 +3641,12 @@ exports.KTX2Transcoder = void 0;
|
|
|
3678
3641
|
};
|
|
3679
3642
|
/**
|
|
3680
3643
|
* @internal
|
|
3681
|
-
*/ var BlendShapeDataRestoreInfo = function BlendShapeDataRestoreInfo(buffer,
|
|
3644
|
+
*/ var BlendShapeDataRestoreInfo = function BlendShapeDataRestoreInfo(buffer, byteOffset, count, normalized, componentType) {
|
|
3682
3645
|
this.buffer = buffer;
|
|
3683
|
-
this.stride = stride;
|
|
3684
3646
|
this.byteOffset = byteOffset;
|
|
3685
3647
|
this.count = count;
|
|
3648
|
+
this.normalized = normalized;
|
|
3649
|
+
this.componentType = componentType;
|
|
3686
3650
|
};
|
|
3687
3651
|
|
|
3688
3652
|
/**
|
|
@@ -3858,23 +3822,20 @@ exports.GLTFSchemaParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3858
3822
|
var requestConfig = {
|
|
3859
3823
|
type: "arraybuffer"
|
|
3860
3824
|
};
|
|
3861
|
-
|
|
3862
|
-
contentRestorer.isGLB = isGLB;
|
|
3863
|
-
var promise = isGLB ? miniprogram.request(url, requestConfig).onProgress(undefined, context._onTaskDetail).then(function(glb) {
|
|
3825
|
+
return miniprogram.request(url, requestConfig).onProgress(undefined, context._onTaskDetail).then(function(buffer) {
|
|
3864
3826
|
restoreBufferRequests.push(new BufferRequestInfo(url, requestConfig));
|
|
3865
|
-
return GLTFUtils.parseGLB(context,
|
|
3866
|
-
}).then(function(
|
|
3867
|
-
var
|
|
3868
|
-
|
|
3869
|
-
|
|
3870
|
-
|
|
3871
|
-
|
|
3872
|
-
|
|
3873
|
-
|
|
3874
|
-
|
|
3875
|
-
|
|
3876
|
-
|
|
3877
|
-
return url.substring(index + 1, index + 4) === "glb";
|
|
3827
|
+
return GLTFUtils.parseGLB(context, buffer);
|
|
3828
|
+
}).then(function(result) {
|
|
3829
|
+
var _result;
|
|
3830
|
+
if ((_result = result) == null ? void 0 : _result.glTF) {
|
|
3831
|
+
contentRestorer.isGLB = true;
|
|
3832
|
+
context.buffers = result.buffers;
|
|
3833
|
+
return result.glTF;
|
|
3834
|
+
} else {
|
|
3835
|
+
contentRestorer.isGLB = false;
|
|
3836
|
+
return JSON.parse(miniprogram.Utils.decodeText(new Uint8Array(result.originBuffer)));
|
|
3837
|
+
}
|
|
3838
|
+
});
|
|
3878
3839
|
};
|
|
3879
3840
|
return GLTFSchemaParser;
|
|
3880
3841
|
}(GLTFParser);
|
|
@@ -3934,13 +3895,13 @@ exports.GLTFAnimationParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3934
3895
|
break;
|
|
3935
3896
|
}
|
|
3936
3897
|
input[input.length - 1];
|
|
3937
|
-
sampleDataCollection
|
|
3898
|
+
sampleDataCollection[j] = {
|
|
3938
3899
|
type: outputAccessor.type,
|
|
3939
3900
|
interpolation: samplerInterpolation,
|
|
3940
3901
|
input: input,
|
|
3941
3902
|
output: output,
|
|
3942
3903
|
outputSize: outputStride
|
|
3943
|
-
}
|
|
3904
|
+
};
|
|
3944
3905
|
});
|
|
3945
3906
|
promises.push(promise);
|
|
3946
3907
|
};
|
|
@@ -3948,11 +3909,12 @@ exports.GLTFAnimationParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3948
3909
|
var glTF = context.glTF;
|
|
3949
3910
|
var accessors = glTF.accessors, bufferViews = glTF.bufferViews;
|
|
3950
3911
|
var channels = animationInfo.channels, samplers = animationInfo.samplers;
|
|
3951
|
-
var
|
|
3912
|
+
var len = samplers.length;
|
|
3913
|
+
var sampleDataCollection = new Array(len);
|
|
3952
3914
|
var entities = context.get(exports.GLTFParserType.Entity);
|
|
3953
3915
|
var promises = new Array();
|
|
3954
3916
|
// parse samplers
|
|
3955
|
-
for(var j = 0, m =
|
|
3917
|
+
for(var j = 0, m = len; j < m; j++)_loop(j);
|
|
3956
3918
|
promises.push(context.get(exports.GLTFParserType.Scene));
|
|
3957
3919
|
return Promise.all(promises).then(function() {
|
|
3958
3920
|
for(var j = 0, m = channels.length; j < m; j++){
|
|
@@ -4310,23 +4272,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4310
4272
|
var meshRestoreInfo = new ModelMeshRestoreInfo();
|
|
4311
4273
|
meshRestoreInfo.mesh = mesh1;
|
|
4312
4274
|
context.contentRestorer.meshes.push(meshRestoreInfo);
|
|
4313
|
-
exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF,
|
|
4314
|
-
return null;
|
|
4315
|
-
}, function(attributeName, shapeIndex) {
|
|
4316
|
-
var shapeAccessorIdx = gltfPrimitive.targets[shapeIndex];
|
|
4317
|
-
var attributeAccessorIdx = shapeAccessorIdx[attributeName];
|
|
4318
|
-
if (attributeAccessorIdx) {
|
|
4319
|
-
var accessor = glTF.accessors[attributeAccessorIdx];
|
|
4320
|
-
return GLTFUtils.getAccessorBuffer(context, context.glTF.bufferViews, accessor);
|
|
4321
|
-
} else {
|
|
4322
|
-
return null;
|
|
4323
|
-
}
|
|
4324
|
-
}, function() {
|
|
4325
|
-
var indexAccessor = glTF.accessors[gltfPrimitive.indices];
|
|
4326
|
-
return context.get(exports.GLTFParserType.Buffer).then(function(buffers) {
|
|
4327
|
-
return GLTFUtils.getAccessorData(glTF, indexAccessor, buffers);
|
|
4328
|
-
});
|
|
4329
|
-
}, context.params.keepMeshData).then(resolve);
|
|
4275
|
+
exports.GLTFMeshParser._parseMeshFromGLTFPrimitive(context, mesh1, meshRestoreInfo, meshInfo, gltfPrimitive, glTF, context.params.keepMeshData).then(resolve);
|
|
4330
4276
|
}
|
|
4331
4277
|
});
|
|
4332
4278
|
};
|
|
@@ -4339,7 +4285,7 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4339
4285
|
};
|
|
4340
4286
|
/**
|
|
4341
4287
|
* @internal
|
|
4342
|
-
*/ GLTFMeshParser1._parseMeshFromGLTFPrimitive = function _parseMeshFromGLTFPrimitive(context, mesh, meshRestoreInfo, gltfMesh, gltfPrimitive, gltf,
|
|
4288
|
+
*/ GLTFMeshParser1._parseMeshFromGLTFPrimitive = function _parseMeshFromGLTFPrimitive(context, mesh, meshRestoreInfo, gltfMesh, gltfPrimitive, gltf, keepMeshData) {
|
|
4343
4289
|
var _loop = function(attribute) {
|
|
4344
4290
|
var accessor = accessors[attributes[attribute]];
|
|
4345
4291
|
var promise = GLTFUtils.getAccessorBuffer(context, gltf.bufferViews, accessor).then(function(accessorBuffer) {
|
|
@@ -4434,61 +4380,68 @@ exports.GLTFMeshParser = (_GLTFMeshParser = /*#__PURE__*/ function(GLTFParser1)
|
|
|
4434
4380
|
}
|
|
4435
4381
|
// BlendShapes
|
|
4436
4382
|
if (targets) {
|
|
4437
|
-
promises.push(exports.GLTFMeshParser._createBlendShape(mesh, meshRestoreInfo, gltfMesh,
|
|
4383
|
+
promises.push(exports.GLTFMeshParser._createBlendShape(context, mesh, meshRestoreInfo, gltfMesh, gltfPrimitive, targets));
|
|
4438
4384
|
}
|
|
4439
4385
|
return Promise.all(promises).then(function() {
|
|
4440
4386
|
mesh.uploadData(!keepMeshData);
|
|
4441
|
-
return
|
|
4387
|
+
return mesh;
|
|
4442
4388
|
});
|
|
4443
4389
|
});
|
|
4444
4390
|
};
|
|
4391
|
+
GLTFMeshParser1._getBlendShapeData = function _getBlendShapeData(context, glTF, accessor) {
|
|
4392
|
+
return GLTFUtils.getAccessorBuffer(context, glTF.bufferViews, accessor).then(function(bufferInfo) {
|
|
4393
|
+
var buffer = bufferInfo.data;
|
|
4394
|
+
var _accessor_byteOffset;
|
|
4395
|
+
var byteOffset = bufferInfo.interleaved ? ((_accessor_byteOffset = accessor.byteOffset) != null ? _accessor_byteOffset : 0) % bufferInfo.stride : 0;
|
|
4396
|
+
var count = accessor.count, normalized = accessor.normalized, componentType = accessor.componentType;
|
|
4397
|
+
var vertices = GLTFUtils.bufferToVector3Array(buffer, byteOffset, count, normalized, componentType);
|
|
4398
|
+
var restoreInfo = new BlendShapeDataRestoreInfo(bufferInfo.restoreInfo, byteOffset, count, normalized, componentType);
|
|
4399
|
+
return {
|
|
4400
|
+
vertices: vertices,
|
|
4401
|
+
restoreInfo: restoreInfo
|
|
4402
|
+
};
|
|
4403
|
+
});
|
|
4404
|
+
};
|
|
4445
4405
|
/**
|
|
4446
4406
|
* @internal
|
|
4447
|
-
*/ GLTFMeshParser1._createBlendShape = function _createBlendShape(mesh, meshRestoreInfo, glTFMesh,
|
|
4448
|
-
var _loop = function(i
|
|
4407
|
+
*/ GLTFMeshParser1._createBlendShape = function _createBlendShape(context, mesh, meshRestoreInfo, glTFMesh, gltfPrimitive, glTFTargets) {
|
|
4408
|
+
var _this = this, _loop = function(i) {
|
|
4409
|
+
var blendShapeData = {};
|
|
4410
|
+
blendShapeCollection[i] = blendShapeData;
|
|
4449
4411
|
var name = blendShapeNames ? blendShapeNames[i] : "blendShape" + i;
|
|
4412
|
+
var targets = gltfPrimitive.targets[i];
|
|
4413
|
+
var normalTarget = targets["NORMAL"];
|
|
4414
|
+
var tangentTarget = targets["TANGENT"];
|
|
4415
|
+
var hasNormal = normalTarget !== undefined;
|
|
4416
|
+
var hasTangent = tangentTarget !== undefined;
|
|
4450
4417
|
var promise = Promise.all([
|
|
4451
|
-
|
|
4452
|
-
|
|
4453
|
-
|
|
4454
|
-
]).then(function(
|
|
4455
|
-
var
|
|
4456
|
-
var
|
|
4457
|
-
var tanBufferInfo = infos[2];
|
|
4458
|
-
var target = glTFTargets[i];
|
|
4459
|
-
var posAccessor;
|
|
4460
|
-
var norAccessor;
|
|
4461
|
-
var tanAccessor;
|
|
4462
|
-
var positions = null;
|
|
4463
|
-
if (posBufferInfo) {
|
|
4464
|
-
posAccessor = accessors[target["POSITION"]];
|
|
4465
|
-
var _posAccessor_byteOffset;
|
|
4466
|
-
positions = GLTFUtils.bufferToVector3Array(posBufferInfo.data, posBufferInfo.stride, (_posAccessor_byteOffset = posAccessor.byteOffset) != null ? _posAccessor_byteOffset : 0, posAccessor.count);
|
|
4467
|
-
}
|
|
4468
|
-
var normals = null;
|
|
4469
|
-
if (norBufferInfo) {
|
|
4470
|
-
norAccessor = accessors[target["NORMAL"]];
|
|
4471
|
-
var _norAccessor_byteOffset;
|
|
4472
|
-
normals = GLTFUtils.bufferToVector3Array(norBufferInfo.data, norBufferInfo.stride, (_norAccessor_byteOffset = norAccessor.byteOffset) != null ? _norAccessor_byteOffset : 0, norAccessor.count);
|
|
4473
|
-
}
|
|
4474
|
-
var tangents = null;
|
|
4475
|
-
if (tanBufferInfo) {
|
|
4476
|
-
tanAccessor = accessors[target["NORMAL"]];
|
|
4477
|
-
var _tanAccessor_byteOffset;
|
|
4478
|
-
tangents = GLTFUtils.bufferToVector3Array(tanBufferInfo.data, tanBufferInfo.stride, (_tanAccessor_byteOffset = tanAccessor.byteOffset) != null ? _tanAccessor_byteOffset : 0, tanAccessor.count);
|
|
4479
|
-
}
|
|
4418
|
+
_this._getBlendShapeData(context, glTF, accessors[targets["POSITION"]]),
|
|
4419
|
+
hasNormal ? _this._getBlendShapeData(context, glTF, accessors[normalTarget]) : null,
|
|
4420
|
+
hasTangent ? _this._getBlendShapeData(context, glTF, accessors[tangentTarget]) : null
|
|
4421
|
+
]).then(function(vertices) {
|
|
4422
|
+
var _tangentData;
|
|
4423
|
+
var positionData = vertices[0], normalData = vertices[1], tangentData = vertices[2];
|
|
4480
4424
|
var blendShape = new miniprogram.BlendShape(name);
|
|
4481
|
-
blendShape.addFrame(1.0,
|
|
4482
|
-
|
|
4483
|
-
|
|
4484
|
-
meshRestoreInfo.blendShapes.push(new BlendShapeRestoreInfo(blendShape, new BlendShapeDataRestoreInfo(posBufferInfo.restoreInfo, posBufferInfo.stride, (_posAccessor_byteOffset1 = posAccessor.byteOffset) != null ? _posAccessor_byteOffset1 : 0, posAccessor.count), norBufferInfo ? new BlendShapeDataRestoreInfo(norBufferInfo.restoreInfo, norBufferInfo.stride, (_norAccessor_byteOffset1 = norAccessor.byteOffset) != null ? _norAccessor_byteOffset1 : 0, norAccessor.count) : null, tanBufferInfo ? new BlendShapeDataRestoreInfo(tanBufferInfo.restoreInfo, tanBufferInfo.stride, (_tanAccessor_byteOffset1 = tanAccessor.byteOffset) != null ? _tanAccessor_byteOffset1 : 0, tanAccessor.count) : null));
|
|
4425
|
+
blendShape.addFrame(1.0, positionData.vertices, hasNormal ? normalData.vertices : null, hasTangent ? tangentData.vertices : null);
|
|
4426
|
+
blendShapeData.blendShape = blendShape;
|
|
4427
|
+
blendShapeData.restoreInfo = new BlendShapeRestoreInfo(blendShape, positionData.restoreInfo, hasNormal ? normalData.restoreInfo : null, hasTangent ? (_tangentData = tangentData) == null ? void 0 : _tangentData.restoreInfo : null);
|
|
4485
4428
|
});
|
|
4486
4429
|
promises.push(promise);
|
|
4487
4430
|
};
|
|
4431
|
+
var glTF = context.glTF;
|
|
4432
|
+
var accessors = glTF.accessors;
|
|
4488
4433
|
var blendShapeNames = glTFMesh.extras ? glTFMesh.extras.targetNames : null;
|
|
4489
4434
|
var promises = new Array();
|
|
4490
|
-
|
|
4491
|
-
|
|
4435
|
+
var blendShapeCount = glTFTargets.length;
|
|
4436
|
+
var blendShapeCollection = new Array(blendShapeCount);
|
|
4437
|
+
for(var i = 0; i < blendShapeCount; i++)_loop(i);
|
|
4438
|
+
return Promise.all(promises).then(function() {
|
|
4439
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(blendShapeCollection), _step; !(_step = _iterator()).done;){
|
|
4440
|
+
var blendShape = _step.value;
|
|
4441
|
+
mesh.addBlendShape(blendShape.blendShape);
|
|
4442
|
+
meshRestoreInfo.blendShapes.push(blendShape.restoreInfo);
|
|
4443
|
+
}
|
|
4444
|
+
});
|
|
4492
4445
|
};
|
|
4493
4446
|
return GLTFMeshParser1;
|
|
4494
4447
|
}(GLTFParser), function() {
|
|
@@ -4932,7 +4885,7 @@ var MeshoptDecoder = function() {
|
|
|
4932
4885
|
return worker;
|
|
4933
4886
|
};
|
|
4934
4887
|
var initWorkers = function initWorkers(count) {
|
|
4935
|
-
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();})
|
|
4888
|
+
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 }';
|
|
4936
4889
|
var blob = new engineMiniprogramAdapter.Blob([
|
|
4937
4890
|
source
|
|
4938
4891
|
], {
|
|
@@ -4971,30 +4924,6 @@ var MeshoptDecoder = function() {
|
|
|
4971
4924
|
]);
|
|
4972
4925
|
});
|
|
4973
4926
|
};
|
|
4974
|
-
var workerProcess = function workerProcess(event) {
|
|
4975
|
-
ready.then(function() {
|
|
4976
|
-
var data = event.data;
|
|
4977
|
-
try {
|
|
4978
|
-
var target = new Uint8Array(data.count * data.size);
|
|
4979
|
-
decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);
|
|
4980
|
-
self.postMessage({
|
|
4981
|
-
id: data.id,
|
|
4982
|
-
count: data.count,
|
|
4983
|
-
action: "resolve",
|
|
4984
|
-
value: target
|
|
4985
|
-
}, [
|
|
4986
|
-
target.buffer
|
|
4987
|
-
]);
|
|
4988
|
-
} catch (error) {
|
|
4989
|
-
self.postMessage({
|
|
4990
|
-
id: data.id,
|
|
4991
|
-
count: data.count,
|
|
4992
|
-
action: "reject",
|
|
4993
|
-
value: error
|
|
4994
|
-
});
|
|
4995
|
-
}
|
|
4996
|
-
});
|
|
4997
|
-
};
|
|
4998
4927
|
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";
|
|
4999
4928
|
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";
|
|
5000
4929
|
var wasmpack = new Uint8Array([
|
|
@@ -6278,7 +6207,7 @@ var SceneLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
6278
6207
|
// parse ambient light
|
|
6279
6208
|
var ambient = data.scene.ambient;
|
|
6280
6209
|
if (ambient) {
|
|
6281
|
-
var useCustomAmbient = ambient.specularMode ===
|
|
6210
|
+
var useCustomAmbient = ambient.specularMode === exports.SpecularMode.Custom;
|
|
6282
6211
|
var useSH = ambient.diffuseMode === miniprogram.DiffuseMode.SphericalHarmonics;
|
|
6283
6212
|
scene.ambientLight.diffuseIntensity = ambient.diffuseIntensity;
|
|
6284
6213
|
scene.ambientLight.specularIntensity = ambient.specularIntensity;
|
|
@@ -6306,6 +6235,7 @@ var SceneLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
6306
6235
|
}));
|
|
6307
6236
|
}
|
|
6308
6237
|
}
|
|
6238
|
+
// parse background
|
|
6309
6239
|
var background = data.scene.background;
|
|
6310
6240
|
scene.background.mode = background.mode;
|
|
6311
6241
|
switch(scene.background.mode){
|
|
@@ -6349,6 +6279,17 @@ var SceneLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
6349
6279
|
var _shadow_shadowTwoCascadeSplits;
|
|
6350
6280
|
scene.shadowTwoCascadeSplits = (_shadow_shadowTwoCascadeSplits = shadow.shadowTwoCascadeSplits) != null ? _shadow_shadowTwoCascadeSplits : scene.shadowTwoCascadeSplits;
|
|
6351
6281
|
shadow.shadowFourCascadeSplits && scene.shadowFourCascadeSplits.copyFrom(shadow.shadowFourCascadeSplits);
|
|
6282
|
+
var _shadow_shadowFadeBorder;
|
|
6283
|
+
scene.shadowFadeBorder = (_shadow_shadowFadeBorder = shadow.shadowFadeBorder) != null ? _shadow_shadowFadeBorder : scene.shadowFadeBorder;
|
|
6284
|
+
}
|
|
6285
|
+
// parse fog
|
|
6286
|
+
var fog = data.scene.fog;
|
|
6287
|
+
if (fog) {
|
|
6288
|
+
if (fog.fogMode != undefined) scene.fogMode = fog.fogMode;
|
|
6289
|
+
if (fog.fogStart != undefined) scene.fogStart = fog.fogStart;
|
|
6290
|
+
if (fog.fogEnd != undefined) scene.fogEnd = fog.fogEnd;
|
|
6291
|
+
if (fog.fogDensity != undefined) scene.fogDensity = fog.fogDensity;
|
|
6292
|
+
if (fog.fogColor != undefined) scene.fogColor.copyFrom(fog.fogColor);
|
|
6352
6293
|
}
|
|
6353
6294
|
return Promise.all(promises).then(function() {
|
|
6354
6295
|
resolve(scene);
|