@galacean/engine-loader 1.2.0-alpha.0 → 1.2.0-alpha.10
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 +853 -463
- package/dist/main.js.map +1 -1
- package/dist/miniprogram.js +852 -463
- package/dist/module.js +841 -452
- package/dist/module.js.map +1 -1
- package/package.json +4 -5
- package/types/GLTFLoader.d.ts +7 -1
- package/types/PrimitiveMeshLoader.d.ts +1 -0
- package/types/gltf/GLTFSchema.d.ts +1 -1
- package/types/gltf/GLTFUtils.d.ts +5 -4
- package/types/gltf/extensions/EXT_meshopt_compression.d.ts +13 -0
- package/types/gltf/extensions/GLTFExtensionParser.d.ts +1 -1
- package/types/gltf/extensions/GLTFExtensionSchema.d.ts +10 -10
- package/types/gltf/extensions/MeshoptDecoder.d.ts +8 -0
- package/types/gltf/extensions/index.d.ts +1 -1
- package/types/gltf/index.d.ts +2 -1
- package/types/gltf/parser/GLTFBufferViewParser.d.ts +5 -0
- package/types/gltf/parser/GLTFParser.d.ts +1 -1
- package/types/gltf/parser/GLTFParserContext.d.ts +7 -6
- package/types/gltf/parser/GLTFSchemaParser.d.ts +0 -1
- package/types/gltf/parser/index.d.ts +2 -1
- package/types/index.d.ts +3 -1
- package/types/ktx2/KTX2Loader.d.ts +4 -3
- package/types/resource-deserialize/index.d.ts +2 -1
- package/types/resource-deserialize/resources/animationClip/AnimationClipDecoder.d.ts +0 -1
- package/types/resource-deserialize/resources/parser/HierarchyParser.d.ts +36 -0
- package/types/resource-deserialize/resources/parser/ParserContext.d.ts +29 -0
- package/types/resource-deserialize/resources/parser/ReflectionParser.d.ts +4 -4
- package/types/resource-deserialize/resources/prefab/PrefabParser.d.ts +13 -4
- package/types/resource-deserialize/resources/prefab/PrefabParserContext.d.ts +5 -0
- package/types/resource-deserialize/resources/scene/SceneParser.d.ts +3 -17
- package/types/resource-deserialize/resources/scene/SceneParserContext.d.ts +6 -12
- package/types/resource-deserialize/resources/schema/BasicSchema.d.ts +26 -1
- package/types/resource-deserialize/resources/schema/SceneSchema.d.ts +1 -0
package/dist/miniprogram.js
CHANGED
|
@@ -6,7 +6,6 @@ var miniprogram = require('@galacean/engine-core/dist/miniprogram');
|
|
|
6
6
|
var miniprogram$1 = require('@galacean/engine-math/dist/miniprogram');
|
|
7
7
|
var engineMiniprogramAdapter = require('@galacean/engine-miniprogram-adapter');
|
|
8
8
|
var miniprogram$2 = require('@galacean/engine-rhi-webgl/dist/miniprogram');
|
|
9
|
-
var miniprogram$3 = require('@galacean/engine-draco/dist/miniprogram');
|
|
10
9
|
|
|
11
10
|
function _extends() {
|
|
12
11
|
_extends = Object.assign || function assign(target) {
|
|
@@ -539,6 +538,8 @@ var ReflectionParser = /*#__PURE__*/ function() {
|
|
|
539
538
|
if (position) entity.transform.position.copyFrom(position);
|
|
540
539
|
if (rotation) entity.transform.rotation.copyFrom(rotation);
|
|
541
540
|
if (scale) entity.transform.scale.copyFrom(scale);
|
|
541
|
+
var _entityConfig_layer;
|
|
542
|
+
entity.layer = (_entityConfig_layer = entityConfig.layer) != null ? _entityConfig_layer : entity.layer;
|
|
542
543
|
return entity;
|
|
543
544
|
});
|
|
544
545
|
};
|
|
@@ -640,8 +641,7 @@ var ReflectionParser = /*#__PURE__*/ function() {
|
|
|
640
641
|
var assetRefId = entityConfig.assetRefId;
|
|
641
642
|
var engine = this._context.engine;
|
|
642
643
|
if (assetRefId) {
|
|
643
|
-
return engine.resourceManager
|
|
644
|
-
.getResourceByRef({
|
|
644
|
+
return engine.resourceManager.getResourceByRef({
|
|
645
645
|
refId: assetRefId,
|
|
646
646
|
key: entityConfig.key,
|
|
647
647
|
isClone: entityConfig.isClone
|
|
@@ -672,37 +672,372 @@ var ReflectionParser = /*#__PURE__*/ function() {
|
|
|
672
672
|
ReflectionParser.customParseComponentHandles = new Map();
|
|
673
673
|
})();
|
|
674
674
|
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
675
|
+
/**
|
|
676
|
+
* Parser context
|
|
677
|
+
* @export
|
|
678
|
+
* @abstract
|
|
679
|
+
* @class ParserContext
|
|
680
|
+
* @template T
|
|
681
|
+
* @template I
|
|
682
|
+
*/ var ParserContext = /*#__PURE__*/ function() {
|
|
683
|
+
function ParserContext(originalData, engine, target) {
|
|
684
|
+
this.originalData = originalData;
|
|
685
|
+
this.engine = engine;
|
|
686
|
+
this.target = target;
|
|
687
|
+
this.entityMap = new Map();
|
|
688
|
+
this.components = new Map();
|
|
689
|
+
this.assets = new Map();
|
|
690
|
+
this.entityConfigMap = new Map();
|
|
691
|
+
this.rootIds = [];
|
|
692
|
+
this.strippedIds = [];
|
|
693
|
+
this.resourceManager = engine.resourceManager;
|
|
694
|
+
}
|
|
695
|
+
var _proto = ParserContext.prototype;
|
|
696
|
+
/**
|
|
697
|
+
* Destroy the context.
|
|
698
|
+
* @abstract
|
|
699
|
+
* @memberof ParserContext
|
|
700
|
+
*/ _proto.destroy = function destroy() {
|
|
701
|
+
this.entityMap.clear();
|
|
702
|
+
this.components.clear();
|
|
703
|
+
this.assets.clear();
|
|
704
|
+
this.entityConfigMap.clear();
|
|
705
|
+
this.rootIds.length = 0;
|
|
706
|
+
};
|
|
707
|
+
return ParserContext;
|
|
708
|
+
}();
|
|
709
|
+
|
|
710
|
+
var PrefabParserContext = /*#__PURE__*/ function(ParserContext1) {
|
|
711
|
+
_inherits(PrefabParserContext, ParserContext1);
|
|
712
|
+
function PrefabParserContext() {
|
|
713
|
+
return ParserContext1.apply(this, arguments);
|
|
714
|
+
}
|
|
715
|
+
return PrefabParserContext;
|
|
716
|
+
}(ParserContext);
|
|
717
|
+
|
|
718
|
+
function _array_like_to_array(arr, len) {
|
|
719
|
+
if (len == null || len > arr.length) len = arr.length;
|
|
720
|
+
|
|
721
|
+
for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
|
|
722
|
+
|
|
723
|
+
return arr2;
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
function _unsupported_iterable_to_array(o, minLen) {
|
|
727
|
+
if (!o) return;
|
|
728
|
+
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
729
|
+
|
|
730
|
+
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
731
|
+
|
|
732
|
+
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
733
|
+
if (n === "Map" || n === "Set") return Array.from(n);
|
|
734
|
+
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
735
|
+
}
|
|
736
|
+
|
|
737
|
+
function _create_for_of_iterator_helper_loose(o, allowArrayLike) {
|
|
738
|
+
var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
|
|
739
|
+
|
|
740
|
+
if (it) return (it = it.call(o)).next.bind(it);
|
|
741
|
+
// Fallback for engines without symbol support
|
|
742
|
+
if (Array.isArray(o) || (it = _unsupported_iterable_to_array(o)) || allowArrayLike && o && typeof o.length === "number") {
|
|
743
|
+
if (it) o = it;
|
|
744
|
+
|
|
745
|
+
var i = 0;
|
|
746
|
+
|
|
747
|
+
return function() {
|
|
748
|
+
if (i >= o.length) return { done: true };
|
|
749
|
+
|
|
750
|
+
return { done: false, value: o[i++] };
|
|
751
|
+
};
|
|
752
|
+
}
|
|
753
|
+
|
|
754
|
+
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
755
|
+
}
|
|
756
|
+
|
|
757
|
+
var HierarchyParser = /*#__PURE__*/ function() {
|
|
758
|
+
function HierarchyParser(context) {
|
|
759
|
+
var _this = this;
|
|
760
|
+
this.context = context;
|
|
761
|
+
this.prefabContextMap = new WeakMap();
|
|
762
|
+
this.prefabPromiseMap = new Map();
|
|
763
|
+
this._engine = this.context.engine;
|
|
764
|
+
this._organizeEntities = this._organizeEntities.bind(this);
|
|
765
|
+
this._parseComponents = this._parseComponents.bind(this);
|
|
766
|
+
this._parsePrefabModification = this._parsePrefabModification.bind(this);
|
|
767
|
+
this._parsePrefabRemovedEntities = this._parsePrefabRemovedEntities.bind(this);
|
|
768
|
+
this._parsePrefabRemovedComponents = this._parsePrefabRemovedComponents.bind(this);
|
|
769
|
+
this._clearAndResolve = this._clearAndResolve.bind(this);
|
|
770
|
+
this.promise = new Promise(function(resolve, reject) {
|
|
771
|
+
_this._reject = reject;
|
|
772
|
+
_this._resolve = resolve;
|
|
773
|
+
});
|
|
774
|
+
this._reflectionParser = new ReflectionParser(context);
|
|
775
|
+
}
|
|
776
|
+
var _proto = HierarchyParser.prototype;
|
|
777
|
+
/** start parse the scene or prefab or others */ _proto.start = function start() {
|
|
778
|
+
this._parseEntities().then(this._organizeEntities).then(this._parseComponents).then(this._parsePrefabModification).then(this._parsePrefabRemovedEntities).then(this._parsePrefabRemovedComponents).then(this._clearAndResolve).then(this._resolve).catch(this._reject);
|
|
779
|
+
};
|
|
780
|
+
_proto._parseEntities = function _parseEntities() {
|
|
781
|
+
var _this = this;
|
|
782
|
+
var entitiesConfig = this.context.originalData.entities;
|
|
783
|
+
var entityConfigMap = this.context.entityConfigMap;
|
|
784
|
+
var entityMap = this.context.entityMap;
|
|
785
|
+
var engine = this._engine;
|
|
786
|
+
var promises = entitiesConfig.map(function(entityConfig) {
|
|
787
|
+
var _entityConfig_strippedId;
|
|
788
|
+
var id = (_entityConfig_strippedId = entityConfig.strippedId) != null ? _entityConfig_strippedId : entityConfig.id;
|
|
789
|
+
entityConfig.id = id;
|
|
790
|
+
entityConfigMap.set(id, entityConfig);
|
|
791
|
+
return _this._getEntityByConfig(entityConfig, engine);
|
|
792
|
+
});
|
|
793
|
+
return Promise.all(promises).then(function(entities) {
|
|
794
|
+
for(var i = 0, l = entities.length; i < l; i++){
|
|
795
|
+
entityMap.set(entitiesConfig[i].id, entities[i]);
|
|
796
|
+
}
|
|
797
|
+
return entities;
|
|
798
|
+
});
|
|
799
|
+
};
|
|
800
|
+
_proto._parseComponents = function _parseComponents() {
|
|
801
|
+
var entitiesConfig = this.context.originalData.entities;
|
|
802
|
+
var entityMap = this.context.entityMap;
|
|
803
|
+
var components = this.context.components;
|
|
804
|
+
var promises = [];
|
|
805
|
+
for(var i = 0, l = entitiesConfig.length; i < l; i++){
|
|
806
|
+
var entityConfig = entitiesConfig[i];
|
|
807
|
+
var entity = entityMap.get(entityConfig.id);
|
|
808
|
+
for(var i1 = 0; i1 < entityConfig.components.length; i1++){
|
|
809
|
+
var componentConfig = entityConfig.components[i1];
|
|
810
|
+
var key = !componentConfig.refId ? componentConfig.class : componentConfig.refId;
|
|
811
|
+
var component = entity.addComponent(miniprogram.Loader.getClass(key));
|
|
812
|
+
components.set(componentConfig.id, component);
|
|
813
|
+
var promise = this._reflectionParser.parsePropsAndMethods(component, componentConfig);
|
|
814
|
+
promises.push(promise);
|
|
815
|
+
}
|
|
816
|
+
}
|
|
817
|
+
return Promise.all(promises);
|
|
818
|
+
};
|
|
819
|
+
_proto._parsePrefabModification = function _parsePrefabModification() {
|
|
820
|
+
var _loop = function(i, l) {
|
|
821
|
+
var _modifications;
|
|
822
|
+
var entityConfig = entitiesConfig[i];
|
|
823
|
+
var id = entityConfig.id, modifications = entityConfig.modifications;
|
|
824
|
+
if ((_modifications = modifications) == null ? void 0 : _modifications.length) {
|
|
825
|
+
var _promises;
|
|
826
|
+
var rootEntity = entityMap.get(id);
|
|
827
|
+
(_promises = promises).push.apply(_promises, [].concat(modifications.map(function(modification) {
|
|
828
|
+
var target = modification.target, props = modification.props, methods = modification.methods;
|
|
829
|
+
var entityId = target.entityId, componentId = target.componentId;
|
|
830
|
+
var context = _this.prefabContextMap.get(rootEntity);
|
|
831
|
+
var targetEntity = context.entityMap.get(entityId);
|
|
832
|
+
var targetComponent = context.components.get(componentId);
|
|
833
|
+
if (targetComponent) {
|
|
834
|
+
return _this._reflectionParser.parsePropsAndMethods(targetComponent, {
|
|
835
|
+
props: props,
|
|
836
|
+
methods: methods
|
|
837
|
+
});
|
|
838
|
+
} else if (targetEntity) {
|
|
839
|
+
return Promise.resolve(_this._applyEntityData(targetEntity, props));
|
|
840
|
+
}
|
|
841
|
+
})));
|
|
842
|
+
}
|
|
843
|
+
};
|
|
844
|
+
var _this = this;
|
|
845
|
+
var entitiesConfig = this.context.originalData.entities;
|
|
846
|
+
var entityMap = this.context.entityMap;
|
|
847
|
+
var promises = [];
|
|
848
|
+
for(var i = 0, l = entitiesConfig.length; i < l; i++)_loop(i);
|
|
849
|
+
return Promise.all(promises);
|
|
850
|
+
};
|
|
851
|
+
_proto._parsePrefabRemovedEntities = function _parsePrefabRemovedEntities() {
|
|
852
|
+
var _loop = function(i, l) {
|
|
853
|
+
var _removedEntities;
|
|
854
|
+
var entityConfig = entitiesConfig[i];
|
|
855
|
+
var id = entityConfig.id, removedEntities = entityConfig.removedEntities;
|
|
856
|
+
if ((_removedEntities = removedEntities) == null ? void 0 : _removedEntities.length) {
|
|
857
|
+
var _promises;
|
|
858
|
+
var rootEntity = entityMap.get(id);
|
|
859
|
+
(_promises = promises).push.apply(_promises, [].concat(removedEntities.map(function(target) {
|
|
860
|
+
var entityId = target.entityId;
|
|
861
|
+
var context = _this.prefabContextMap.get(rootEntity);
|
|
862
|
+
var targetEntity = context.entityMap.get(entityId);
|
|
863
|
+
if (targetEntity) {
|
|
864
|
+
targetEntity.destroy();
|
|
865
|
+
}
|
|
866
|
+
})));
|
|
867
|
+
}
|
|
868
|
+
};
|
|
869
|
+
var _this = this;
|
|
870
|
+
var entitiesConfig = this.context.originalData.entities;
|
|
871
|
+
var entityMap = this.context.entityMap;
|
|
872
|
+
var promises = [];
|
|
873
|
+
for(var i = 0, l = entitiesConfig.length; i < l; i++)_loop(i);
|
|
874
|
+
return Promise.all(promises);
|
|
875
|
+
};
|
|
876
|
+
_proto._parsePrefabRemovedComponents = function _parsePrefabRemovedComponents() {
|
|
877
|
+
var _loop = function(i, l) {
|
|
878
|
+
var _removedComponents;
|
|
879
|
+
var entityConfig = entitiesConfig[i];
|
|
880
|
+
var id = entityConfig.id, removedComponents = entityConfig.removedComponents;
|
|
881
|
+
if ((_removedComponents = removedComponents) == null ? void 0 : _removedComponents.length) {
|
|
882
|
+
var _promises;
|
|
883
|
+
var rootEntity = entityMap.get(id);
|
|
884
|
+
(_promises = promises).concat.apply(_promises, [].concat(removedComponents.map(function(target) {
|
|
885
|
+
var componentId = target.componentId;
|
|
886
|
+
var context = _this.prefabContextMap.get(rootEntity);
|
|
887
|
+
var targetComponent = context.components.get(componentId);
|
|
888
|
+
if (targetComponent) {
|
|
889
|
+
targetComponent.destroy();
|
|
890
|
+
}
|
|
891
|
+
})));
|
|
892
|
+
}
|
|
893
|
+
};
|
|
894
|
+
var _this = this;
|
|
895
|
+
var entitiesConfig = this.context.originalData.entities;
|
|
896
|
+
var entityMap = this.context.entityMap;
|
|
897
|
+
var promises = [];
|
|
898
|
+
for(var i = 0, l = entitiesConfig.length; i < l; i++)_loop(i);
|
|
899
|
+
return Promise.all(promises);
|
|
900
|
+
};
|
|
901
|
+
_proto._clearAndResolve = function _clearAndResolve() {
|
|
902
|
+
var target = this.context.target;
|
|
903
|
+
return target;
|
|
904
|
+
};
|
|
905
|
+
_proto._organizeEntities = function _organizeEntities() {
|
|
906
|
+
var _this_context = this.context, rootIds = _this_context.rootIds, strippedIds = _this_context.strippedIds;
|
|
907
|
+
var parentIds = rootIds.concat(strippedIds);
|
|
908
|
+
for(var _iterator = _create_for_of_iterator_helper_loose(parentIds), _step; !(_step = _iterator()).done;){
|
|
909
|
+
var parentId = _step.value;
|
|
910
|
+
this._parseChildren(parentId);
|
|
911
|
+
}
|
|
912
|
+
for(var i = 0; i < rootIds.length; i++){
|
|
913
|
+
this.handleRootEntity(rootIds[i]);
|
|
914
|
+
}
|
|
915
|
+
};
|
|
916
|
+
_proto._getEntityByConfig = function _getEntityByConfig(entityConfig, engine) {
|
|
917
|
+
var _this = this;
|
|
918
|
+
var entityPromise;
|
|
919
|
+
if (entityConfig.assetRefId) {
|
|
920
|
+
entityPromise = this._parseGLTF(entityConfig, engine);
|
|
921
|
+
} else if (entityConfig.strippedId) {
|
|
922
|
+
entityPromise = this._parseStrippedEntity(entityConfig);
|
|
923
|
+
} else {
|
|
924
|
+
entityPromise = this._parseEntity(entityConfig, engine);
|
|
925
|
+
}
|
|
926
|
+
return entityPromise.then(function(entity) {
|
|
927
|
+
return _this._applyEntityData(entity, entityConfig);
|
|
928
|
+
});
|
|
929
|
+
};
|
|
930
|
+
_proto._parseEntity = function _parseEntity(entityConfig, engine) {
|
|
931
|
+
var entity = new miniprogram.Entity(engine, entityConfig.name);
|
|
932
|
+
if (!entityConfig.parent) this.context.rootIds.push(entityConfig.id);
|
|
933
|
+
return Promise.resolve(entity);
|
|
934
|
+
};
|
|
935
|
+
_proto._parseGLTF = function _parseGLTF(entityConfig, engine) {
|
|
936
|
+
var _this = this;
|
|
937
|
+
var assetRefId = entityConfig.assetRefId;
|
|
938
|
+
var context = new ParserContext(null, engine);
|
|
939
|
+
return engine.resourceManager// @ts-ignore
|
|
940
|
+
.getResourceByRef({
|
|
941
|
+
refId: assetRefId
|
|
942
|
+
}).then(function(glTFResource) {
|
|
943
|
+
var entity = glTFResource.instantiateSceneRoot();
|
|
944
|
+
if (!entityConfig.parent) _this.context.rootIds.push(entityConfig.id);
|
|
945
|
+
_this._traverseAddEntityToMap(entity, context, "");
|
|
946
|
+
_this.prefabContextMap.set(entity, context);
|
|
947
|
+
var cbArray = _this.prefabPromiseMap.get(entityConfig.id);
|
|
948
|
+
cbArray && cbArray.forEach(function(cb) {
|
|
949
|
+
cb.resolve(context);
|
|
950
|
+
});
|
|
951
|
+
return entity;
|
|
952
|
+
});
|
|
953
|
+
};
|
|
954
|
+
_proto._parseStrippedEntity = function _parseStrippedEntity(entityConfig) {
|
|
955
|
+
var _this = this;
|
|
956
|
+
this.context.strippedIds.push(entityConfig.id);
|
|
957
|
+
return new Promise(function(resolve, reject) {
|
|
958
|
+
var _this_prefabPromiseMap_get;
|
|
959
|
+
var cbArray = (_this_prefabPromiseMap_get = _this.prefabPromiseMap.get(entityConfig.prefabInstanceId)) != null ? _this_prefabPromiseMap_get : [];
|
|
960
|
+
cbArray.push({
|
|
961
|
+
resolve: resolve,
|
|
962
|
+
reject: reject
|
|
963
|
+
});
|
|
964
|
+
_this.prefabPromiseMap.set(entityConfig.prefabInstanceId, cbArray);
|
|
965
|
+
}).then(function(context) {
|
|
966
|
+
var entityId = entityConfig.prefabSource.entityId;
|
|
967
|
+
return context.entityMap.get(entityId);
|
|
968
|
+
});
|
|
969
|
+
};
|
|
970
|
+
_proto._parseChildren = function _parseChildren(parentId) {
|
|
971
|
+
var _this_context = this.context, entityConfigMap = _this_context.entityConfigMap, entityMap = _this_context.entityMap;
|
|
972
|
+
var children = entityConfigMap.get(parentId).children;
|
|
679
973
|
if (children && children.length > 0) {
|
|
680
|
-
var parent =
|
|
974
|
+
var parent = entityMap.get(parentId);
|
|
681
975
|
for(var i = 0; i < children.length; i++){
|
|
682
976
|
var childId = children[i];
|
|
683
|
-
var entity =
|
|
977
|
+
var entity = entityMap.get(childId);
|
|
684
978
|
parent.addChild(entity);
|
|
685
|
-
this.
|
|
979
|
+
this._parseChildren(childId);
|
|
686
980
|
}
|
|
687
981
|
}
|
|
688
982
|
};
|
|
689
|
-
|
|
983
|
+
_proto._applyEntityData = function _applyEntityData(entity, entityConfig) {
|
|
984
|
+
if (entityConfig === void 0) entityConfig = {};
|
|
985
|
+
var _entityConfig_isActive;
|
|
986
|
+
entity.isActive = (_entityConfig_isActive = entityConfig.isActive) != null ? _entityConfig_isActive : entity.isActive;
|
|
987
|
+
var _entityConfig_name;
|
|
988
|
+
entity.name = (_entityConfig_name = entityConfig.name) != null ? _entityConfig_name : entity.name;
|
|
989
|
+
var position = entityConfig.position, rotation = entityConfig.rotation, scale = entityConfig.scale;
|
|
990
|
+
if (position) entity.transform.position.copyFrom(position);
|
|
991
|
+
if (rotation) entity.transform.rotation.copyFrom(rotation);
|
|
992
|
+
if (scale) entity.transform.scale.copyFrom(scale);
|
|
993
|
+
return entity;
|
|
994
|
+
};
|
|
995
|
+
_proto._traverseAddEntityToMap = function _traverseAddEntityToMap(entity, context, path) {
|
|
996
|
+
var entityMap = context.entityMap, components = context.components;
|
|
997
|
+
var componentsMap = {};
|
|
998
|
+
var componentIndexMap = {};
|
|
999
|
+
entityMap.set(path, entity);
|
|
1000
|
+
// @ts-ignore
|
|
1001
|
+
entity._components.forEach(function(component) {
|
|
1002
|
+
// @ts-ignore
|
|
1003
|
+
var name = miniprogram.Loader.getClassName(component.constructor);
|
|
1004
|
+
if (!componentsMap[name]) {
|
|
1005
|
+
componentsMap[name] = entity.getComponents(component.constructor, []);
|
|
1006
|
+
componentIndexMap[name] = 0;
|
|
1007
|
+
}
|
|
1008
|
+
components.set(path + ":" + name + "/" + componentIndexMap[name]++, component);
|
|
1009
|
+
});
|
|
1010
|
+
for(var i = 0, n = entity.children.length; i < n; i++){
|
|
1011
|
+
var child = entity.children[i];
|
|
1012
|
+
var childPath = path ? path + "/" + i : "" + i;
|
|
1013
|
+
this._traverseAddEntityToMap(child, context, childPath);
|
|
1014
|
+
}
|
|
1015
|
+
};
|
|
1016
|
+
return HierarchyParser;
|
|
690
1017
|
}();
|
|
691
1018
|
|
|
692
|
-
var
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
|
|
705
|
-
|
|
1019
|
+
var PrefabParser = /*#__PURE__*/ function(HierarchyParser1) {
|
|
1020
|
+
_inherits(PrefabParser, HierarchyParser1);
|
|
1021
|
+
function PrefabParser() {
|
|
1022
|
+
return HierarchyParser1.apply(this, arguments);
|
|
1023
|
+
}
|
|
1024
|
+
var _proto = PrefabParser.prototype;
|
|
1025
|
+
_proto.handleRootEntity = function handleRootEntity(id) {
|
|
1026
|
+
this.context.target = this.context.entityMap.get(id);
|
|
1027
|
+
};
|
|
1028
|
+
/**
|
|
1029
|
+
* Parse prefab data.
|
|
1030
|
+
* @param engine - the engine of the parser context
|
|
1031
|
+
* @param prefabData - prefab data which is exported by editor
|
|
1032
|
+
* @returns a promise of prefab
|
|
1033
|
+
*/ PrefabParser.parse = function parse(engine, prefabData) {
|
|
1034
|
+
var context = new PrefabParserContext(prefabData, engine);
|
|
1035
|
+
var parser = new PrefabParser(context);
|
|
1036
|
+
parser.start();
|
|
1037
|
+
return parser;
|
|
1038
|
+
};
|
|
1039
|
+
return PrefabParser;
|
|
1040
|
+
}(HierarchyParser);
|
|
706
1041
|
|
|
707
1042
|
exports.InterpolableValueType = void 0;
|
|
708
1043
|
(function(InterpolableValueType) {
|
|
@@ -736,7 +1071,7 @@ exports.AnimationClipDecoder = /*#__PURE__*/ function() {
|
|
|
736
1071
|
for(var i1 = 0; i1 < curveBindingsLen; ++i1){
|
|
737
1072
|
var relativePath = bufferReader.nextStr();
|
|
738
1073
|
var componentStr = bufferReader.nextStr();
|
|
739
|
-
var componentType =
|
|
1074
|
+
var componentType = miniprogram.Loader.getClass(componentStr);
|
|
740
1075
|
var property = bufferReader.nextStr();
|
|
741
1076
|
var getProperty = bufferReader.nextStr();
|
|
742
1077
|
var curve = void 0;
|
|
@@ -915,145 +1250,28 @@ exports.SpecularMode = void 0;
|
|
|
915
1250
|
SpecularMode["Custom"] = "Custom";
|
|
916
1251
|
})(exports.SpecularMode || (exports.SpecularMode = {}));
|
|
917
1252
|
|
|
918
|
-
function
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
if (!o) return;
|
|
928
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
929
|
-
|
|
930
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
931
|
-
|
|
932
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
933
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
934
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
935
|
-
}
|
|
936
|
-
|
|
937
|
-
function _create_for_of_iterator_helper_loose(o, allowArrayLike) {
|
|
938
|
-
var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
|
|
939
|
-
|
|
940
|
-
if (it) return (it = it.call(o)).next.bind(it);
|
|
941
|
-
// Fallback for engines without symbol support
|
|
942
|
-
if (Array.isArray(o) || (it = _unsupported_iterable_to_array(o)) || allowArrayLike && o && typeof o.length === "number") {
|
|
943
|
-
if (it) o = it;
|
|
944
|
-
|
|
945
|
-
var i = 0;
|
|
946
|
-
|
|
947
|
-
return function() {
|
|
948
|
-
if (i >= o.length) return { done: true };
|
|
949
|
-
|
|
950
|
-
return { done: false, value: o[i++] };
|
|
951
|
-
};
|
|
952
|
-
}
|
|
953
|
-
|
|
954
|
-
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
955
|
-
}
|
|
956
|
-
|
|
957
|
-
var SceneParserContext = /*#__PURE__*/ function() {
|
|
958
|
-
function SceneParserContext(originalData, scene) {
|
|
959
|
-
this.originalData = originalData;
|
|
960
|
-
this.scene = scene;
|
|
961
|
-
this.entityMap = new Map();
|
|
962
|
-
this.components = new Map();
|
|
963
|
-
this.assets = new Map();
|
|
964
|
-
this.entityConfigMap = new Map();
|
|
965
|
-
this.rootIds = [];
|
|
966
|
-
this.engine = scene.engine;
|
|
967
|
-
this.resourceManager = scene.engine.resourceManager;
|
|
1253
|
+
var SceneParserContext = /*#__PURE__*/ function(ParserContext1) {
|
|
1254
|
+
_inherits(SceneParserContext, ParserContext1);
|
|
1255
|
+
function SceneParserContext(originalData, engine, scene) {
|
|
1256
|
+
var _this;
|
|
1257
|
+
_this = ParserContext1.call(this, originalData, engine, scene) || this;
|
|
1258
|
+
_this.originalData = originalData;
|
|
1259
|
+
_this.engine = engine;
|
|
1260
|
+
_this.scene = scene;
|
|
1261
|
+
return _this;
|
|
968
1262
|
}
|
|
969
|
-
var _proto = SceneParserContext.prototype;
|
|
970
|
-
_proto.destroy = function destroy() {
|
|
971
|
-
this.entityMap.clear();
|
|
972
|
-
this.components.clear();
|
|
973
|
-
this.assets.clear();
|
|
974
|
-
this.entityConfigMap.clear();
|
|
975
|
-
this.rootIds.length = 0;
|
|
976
|
-
};
|
|
977
1263
|
return SceneParserContext;
|
|
978
|
-
}();
|
|
1264
|
+
}(ParserContext);
|
|
979
1265
|
|
|
980
|
-
/** @Internal */ var SceneParser = /*#__PURE__*/ function() {
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
this
|
|
984
|
-
this._engine = context.scene.engine;
|
|
985
|
-
this._organizeEntities = this._organizeEntities.bind(this);
|
|
986
|
-
this._parseComponents = this._parseComponents.bind(this);
|
|
987
|
-
this._clearAndResolveScene = this._clearAndResolveScene.bind(this);
|
|
988
|
-
this.promise = new Promise(function(resolve, reject) {
|
|
989
|
-
_this._reject = reject;
|
|
990
|
-
_this._resolve = resolve;
|
|
991
|
-
});
|
|
992
|
-
this._reflectionParser = new ReflectionParser(context);
|
|
1266
|
+
/** @Internal */ var SceneParser = /*#__PURE__*/ function(HierarchyParser1) {
|
|
1267
|
+
_inherits(SceneParser, HierarchyParser1);
|
|
1268
|
+
function SceneParser() {
|
|
1269
|
+
return HierarchyParser1.apply(this, arguments);
|
|
993
1270
|
}
|
|
994
1271
|
var _proto = SceneParser.prototype;
|
|
995
|
-
|
|
996
|
-
this.
|
|
997
|
-
|
|
998
|
-
_proto._parseEntities = function _parseEntities() {
|
|
999
|
-
var _this = this;
|
|
1000
|
-
var entitiesConfig = this.context.originalData.entities;
|
|
1001
|
-
var entityConfigMap = this.context.entityConfigMap;
|
|
1002
|
-
var entitiesMap = this.context.entityMap;
|
|
1003
|
-
var rootIds = this.context.rootIds;
|
|
1004
|
-
this._engine;
|
|
1005
|
-
var promises = entitiesConfig.map(function(entityConfig) {
|
|
1006
|
-
entityConfigMap.set(entityConfig.id, entityConfig);
|
|
1007
|
-
// record root entities
|
|
1008
|
-
if (!entityConfig.parent) rootIds.push(entityConfig.id);
|
|
1009
|
-
return _this._reflectionParser.parseEntity(entityConfig);
|
|
1010
|
-
});
|
|
1011
|
-
return Promise.all(promises).then(function(entities) {
|
|
1012
|
-
for(var i = 0, l = entities.length; i < l; i++){
|
|
1013
|
-
entitiesMap.set(entitiesConfig[i].id, entities[i]);
|
|
1014
|
-
}
|
|
1015
|
-
return entities;
|
|
1016
|
-
});
|
|
1017
|
-
};
|
|
1018
|
-
_proto._organizeEntities = function _organizeEntities() {
|
|
1019
|
-
var _this_context = this.context, entityConfigMap = _this_context.entityConfigMap, entityMap = _this_context.entityMap, scene = _this_context.scene, rootIds = _this_context.rootIds;
|
|
1020
|
-
for(var _iterator = _create_for_of_iterator_helper_loose(rootIds), _step; !(_step = _iterator()).done;){
|
|
1021
|
-
var rootId = _step.value;
|
|
1022
|
-
PrefabParser.parseChildren(entityConfigMap, entityMap, rootId);
|
|
1023
|
-
}
|
|
1024
|
-
var rootEntities = rootIds.map(function(id) {
|
|
1025
|
-
return entityMap.get(id);
|
|
1026
|
-
});
|
|
1027
|
-
for(var i = 0; i < rootEntities.length; i++){
|
|
1028
|
-
scene.addRootEntity(rootEntities[i]);
|
|
1029
|
-
}
|
|
1030
|
-
};
|
|
1031
|
-
_proto._parseComponents = function _parseComponents() {
|
|
1032
|
-
var entitiesConfig = this.context.originalData.entities;
|
|
1033
|
-
var entityMap = this.context.entityMap;
|
|
1034
|
-
var promises = [];
|
|
1035
|
-
for(var i = 0, l = entitiesConfig.length; i < l; i++){
|
|
1036
|
-
var entityConfig = entitiesConfig[i];
|
|
1037
|
-
var entity = entityMap.get(entityConfig.id);
|
|
1038
|
-
for(var i1 = 0; i1 < entityConfig.components.length; i1++){
|
|
1039
|
-
var componentConfig = entityConfig.components[i1];
|
|
1040
|
-
var key = !componentConfig.refId ? componentConfig.class : componentConfig.refId;
|
|
1041
|
-
var component = void 0;
|
|
1042
|
-
// TODO: remove hack code when support additional edit
|
|
1043
|
-
if (key === "Animator") {
|
|
1044
|
-
component = entity.getComponent(miniprogram.Loader.getClass(key));
|
|
1045
|
-
}
|
|
1046
|
-
component = component || entity.addComponent(miniprogram.Loader.getClass(key));
|
|
1047
|
-
var promise = this._reflectionParser.parsePropsAndMethods(component, componentConfig);
|
|
1048
|
-
promises.push(promise);
|
|
1049
|
-
}
|
|
1050
|
-
}
|
|
1051
|
-
return Promise.all(promises);
|
|
1052
|
-
};
|
|
1053
|
-
_proto._clearAndResolveScene = function _clearAndResolveScene() {
|
|
1054
|
-
var scene = this.context.scene;
|
|
1055
|
-
this.context.destroy();
|
|
1056
|
-
return scene;
|
|
1272
|
+
_proto.handleRootEntity = function handleRootEntity(id) {
|
|
1273
|
+
var _this_context = this.context, target = _this_context.target, entityMap = _this_context.entityMap;
|
|
1274
|
+
target.addRootEntity(entityMap.get(id));
|
|
1057
1275
|
};
|
|
1058
1276
|
/**
|
|
1059
1277
|
* Parse scene data.
|
|
@@ -1062,13 +1280,13 @@ var SceneParserContext = /*#__PURE__*/ function() {
|
|
|
1062
1280
|
* @returns a promise of scene
|
|
1063
1281
|
*/ SceneParser.parse = function parse(engine, sceneData) {
|
|
1064
1282
|
var scene = new miniprogram.Scene(engine);
|
|
1065
|
-
var context = new SceneParserContext(sceneData, scene);
|
|
1283
|
+
var context = new SceneParserContext(sceneData, engine, scene);
|
|
1066
1284
|
var parser = new SceneParser(context);
|
|
1067
1285
|
parser.start();
|
|
1068
1286
|
return parser.promise;
|
|
1069
1287
|
};
|
|
1070
1288
|
return SceneParser;
|
|
1071
|
-
}();
|
|
1289
|
+
}(HierarchyParser);
|
|
1072
1290
|
|
|
1073
1291
|
exports.MeshLoader = /*#__PURE__*/ function(Loader1) {
|
|
1074
1292
|
_inherits(MeshLoader, Loader1);
|
|
@@ -1173,7 +1391,7 @@ var AnimationClipLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
1173
1391
|
resourceManager// @ts-ignore
|
|
1174
1392
|
.getResourceByRef(value).then(function(asset) {
|
|
1175
1393
|
keyframe.value = asset;
|
|
1176
|
-
resolve(keyframe);
|
|
1394
|
+
resolve(keyframe.value);
|
|
1177
1395
|
});
|
|
1178
1396
|
});
|
|
1179
1397
|
} else {
|
|
@@ -1535,7 +1753,7 @@ FontLoader = __decorate([
|
|
|
1535
1753
|
* Float
|
|
1536
1754
|
*/ "FLOAT"] = 5126] = "FLOAT";
|
|
1537
1755
|
})(AccessorComponentType || (AccessorComponentType = {}));
|
|
1538
|
-
|
|
1756
|
+
exports.AccessorType = void 0;
|
|
1539
1757
|
(function(AccessorType) {
|
|
1540
1758
|
AccessorType[/**
|
|
1541
1759
|
* Scalar
|
|
@@ -1558,7 +1776,7 @@ var AccessorType;
|
|
|
1558
1776
|
AccessorType[/**
|
|
1559
1777
|
* Matrix4x4
|
|
1560
1778
|
*/ "MAT4"] = "MAT4";
|
|
1561
|
-
})(AccessorType || (AccessorType = {}));
|
|
1779
|
+
})(exports.AccessorType || (exports.AccessorType = {}));
|
|
1562
1780
|
var AnimationChannelTargetPath;
|
|
1563
1781
|
(function(AnimationChannelTargetPath) {
|
|
1564
1782
|
AnimationChannelTargetPath[/**
|
|
@@ -1707,7 +1925,7 @@ var TextureWrapMode;
|
|
|
1707
1925
|
var glTFItems = this.glTF[glTFSchemaMap[type]];
|
|
1708
1926
|
if (glTFItems && (index === undefined || glTFItems[index])) {
|
|
1709
1927
|
if (index === undefined) {
|
|
1710
|
-
resource = type ===
|
|
1928
|
+
resource = type === 8 ? glTFItems.map(function(_, index) {
|
|
1711
1929
|
return _this.get(type, index);
|
|
1712
1930
|
}) : Promise.all(glTFItems.map(function(_, index) {
|
|
1713
1931
|
return _this.get(type, index);
|
|
@@ -1729,11 +1947,11 @@ var TextureWrapMode;
|
|
|
1729
1947
|
_this.glTF = json;
|
|
1730
1948
|
return Promise.all([
|
|
1731
1949
|
_this.get(1),
|
|
1732
|
-
_this.get(4),
|
|
1733
1950
|
_this.get(5),
|
|
1734
1951
|
_this.get(6),
|
|
1735
|
-
_this.get(
|
|
1952
|
+
_this.get(7),
|
|
1736
1953
|
_this.get(9),
|
|
1954
|
+
_this.get(10),
|
|
1737
1955
|
_this.get(2)
|
|
1738
1956
|
]).then(function() {
|
|
1739
1957
|
var glTFResource = _this.glTFResource;
|
|
@@ -1783,7 +2001,7 @@ var TextureWrapMode;
|
|
|
1783
2001
|
var _this = this;
|
|
1784
2002
|
var glTFResourceKey = glTFResourceMap[type];
|
|
1785
2003
|
if (!glTFResourceKey) return;
|
|
1786
|
-
if (type ===
|
|
2004
|
+
if (type === 8) {
|
|
1787
2005
|
var _this_glTFResource, _glTFResourceKey;
|
|
1788
2006
|
((_this_glTFResource = this.glTFResource)[_glTFResourceKey = glTFResourceKey] || (_this_glTFResource[_glTFResourceKey] = []))[index] = resource;
|
|
1789
2007
|
} else {
|
|
@@ -1791,7 +2009,7 @@ var TextureWrapMode;
|
|
|
1791
2009
|
resource.then(function(item) {
|
|
1792
2010
|
var _this_glTFResource, _glTFResourceKey;
|
|
1793
2011
|
((_this_glTFResource = _this.glTFResource)[_glTFResourceKey = glTFResourceKey] || (_this_glTFResource[_glTFResourceKey] = []))[index] = item;
|
|
1794
|
-
if (type ===
|
|
2012
|
+
if (type === 7) {
|
|
1795
2013
|
for(var i = 0, length = item.length; i < length; i++){
|
|
1796
2014
|
var mesh = item[i];
|
|
1797
2015
|
// @ts-ignore
|
|
@@ -1831,17 +2049,18 @@ exports.GLTFParserType = void 0;
|
|
|
1831
2049
|
GLTFParserType[GLTFParserType["Validator"] = 1] = "Validator";
|
|
1832
2050
|
GLTFParserType[GLTFParserType["Scene"] = 2] = "Scene";
|
|
1833
2051
|
GLTFParserType[GLTFParserType["Buffer"] = 3] = "Buffer";
|
|
1834
|
-
GLTFParserType[GLTFParserType["
|
|
1835
|
-
GLTFParserType[GLTFParserType["
|
|
1836
|
-
GLTFParserType[GLTFParserType["
|
|
1837
|
-
GLTFParserType[GLTFParserType["
|
|
1838
|
-
GLTFParserType[GLTFParserType["
|
|
1839
|
-
GLTFParserType[GLTFParserType["
|
|
2052
|
+
GLTFParserType[GLTFParserType["BufferView"] = 4] = "BufferView";
|
|
2053
|
+
GLTFParserType[GLTFParserType["Texture"] = 5] = "Texture";
|
|
2054
|
+
GLTFParserType[GLTFParserType["Material"] = 6] = "Material";
|
|
2055
|
+
GLTFParserType[GLTFParserType["Mesh"] = 7] = "Mesh";
|
|
2056
|
+
GLTFParserType[GLTFParserType["Entity"] = 8] = "Entity";
|
|
2057
|
+
GLTFParserType[GLTFParserType["Skin"] = 9] = "Skin";
|
|
2058
|
+
GLTFParserType[GLTFParserType["Animation"] = 10] = "Animation";
|
|
1840
2059
|
})(exports.GLTFParserType || (exports.GLTFParserType = {}));
|
|
1841
2060
|
var _obj;
|
|
1842
|
-
var glTFSchemaMap = (_obj = {}, _obj[2] = "scenes", _obj[3] = "buffers", _obj[
|
|
2061
|
+
var glTFSchemaMap = (_obj = {}, _obj[2] = "scenes", _obj[3] = "buffers", _obj[5] = "textures", _obj[6] = "materials", _obj[7] = "meshes", _obj[8] = "nodes", _obj[9] = "skins", _obj[10] = "animations", _obj[4] = "bufferViews", _obj);
|
|
1843
2062
|
var _obj1;
|
|
1844
|
-
var glTFResourceMap = (_obj1 = {}, _obj1[2] = "_sceneRoots", _obj1[
|
|
2063
|
+
var glTFResourceMap = (_obj1 = {}, _obj1[2] = "_sceneRoots", _obj1[5] = "textures", _obj1[6] = "materials", _obj1[7] = "meshes", _obj1[8] = "entities", _obj1[9] = "skins", _obj1[10] = "animations", _obj1);
|
|
1845
2064
|
function registerGLTFParser(pipeline) {
|
|
1846
2065
|
return function(Parser) {
|
|
1847
2066
|
var parser = new Parser();
|
|
@@ -1895,19 +2114,19 @@ function registerGLTFParser(pipeline) {
|
|
|
1895
2114
|
* Get the number of bytes occupied by accessor type.
|
|
1896
2115
|
*/ GLTFUtils.getAccessorTypeSize = function getAccessorTypeSize(accessorType) {
|
|
1897
2116
|
switch(accessorType){
|
|
1898
|
-
case AccessorType.SCALAR:
|
|
2117
|
+
case exports.AccessorType.SCALAR:
|
|
1899
2118
|
return 1;
|
|
1900
|
-
case AccessorType.VEC2:
|
|
2119
|
+
case exports.AccessorType.VEC2:
|
|
1901
2120
|
return 2;
|
|
1902
|
-
case AccessorType.VEC3:
|
|
2121
|
+
case exports.AccessorType.VEC3:
|
|
1903
2122
|
return 3;
|
|
1904
|
-
case AccessorType.VEC4:
|
|
2123
|
+
case exports.AccessorType.VEC4:
|
|
1905
2124
|
return 4;
|
|
1906
|
-
case AccessorType.MAT2:
|
|
2125
|
+
case exports.AccessorType.MAT2:
|
|
1907
2126
|
return 4;
|
|
1908
|
-
case AccessorType.MAT3:
|
|
2127
|
+
case exports.AccessorType.MAT3:
|
|
1909
2128
|
return 9;
|
|
1910
|
-
case AccessorType.MAT4:
|
|
2129
|
+
case exports.AccessorType.MAT4:
|
|
1911
2130
|
return 16;
|
|
1912
2131
|
}
|
|
1913
2132
|
};
|
|
@@ -1947,11 +2166,10 @@ function registerGLTFParser(pipeline) {
|
|
|
1947
2166
|
GLTFUtils.getAccessorBuffer = function getAccessorBuffer(context, bufferViews, accessor) {
|
|
1948
2167
|
var componentType = accessor.componentType;
|
|
1949
2168
|
var bufferView = bufferViews[accessor.bufferView];
|
|
1950
|
-
return context.get(exports.GLTFParserType.
|
|
2169
|
+
return context.get(exports.GLTFParserType.BufferView, accessor.bufferView).then(function(bufferViewData) {
|
|
1951
2170
|
var bufferIndex = bufferView.buffer;
|
|
1952
|
-
var
|
|
1953
|
-
var
|
|
1954
|
-
var bufferByteOffset = (_bufferView_byteOffset = bufferView.byteOffset) != null ? _bufferView_byteOffset : 0;
|
|
2171
|
+
var _bufferViewData_byteOffset;
|
|
2172
|
+
var bufferByteOffset = (_bufferViewData_byteOffset = bufferViewData.byteOffset) != null ? _bufferViewData_byteOffset : 0;
|
|
1955
2173
|
var _accessor_byteOffset;
|
|
1956
2174
|
var byteOffset = (_accessor_byteOffset = accessor.byteOffset) != null ? _accessor_byteOffset : 0;
|
|
1957
2175
|
var TypedArray = GLTFUtils.getComponentType(componentType);
|
|
@@ -1970,19 +2188,21 @@ function registerGLTFParser(pipeline) {
|
|
|
1970
2188
|
if (!bufferInfo) {
|
|
1971
2189
|
var offset = bufferByteOffset + bufferSlice * bufferStride;
|
|
1972
2190
|
var count = accessorCount * (bufferStride / dataElementBytes);
|
|
1973
|
-
var data = new TypedArray(buffer, offset, count);
|
|
2191
|
+
var data = new TypedArray(bufferViewData.buffer, offset, count);
|
|
1974
2192
|
accessorBufferCache[bufferCacheKey] = bufferInfo = new BufferInfo(data, true, bufferStride);
|
|
1975
2193
|
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset, count));
|
|
1976
2194
|
}
|
|
1977
2195
|
} else {
|
|
1978
2196
|
var offset1 = bufferByteOffset + byteOffset;
|
|
1979
2197
|
var count1 = accessorCount * dataElementSize;
|
|
1980
|
-
var data1 = new TypedArray(buffer, offset1, count1);
|
|
2198
|
+
var data1 = new TypedArray(bufferViewData.buffer, offset1, count1);
|
|
1981
2199
|
bufferInfo = new BufferInfo(data1, false, elementStride);
|
|
1982
2200
|
bufferInfo.restoreInfo = new BufferDataRestoreInfo(new RestoreDataAccessor(bufferIndex, TypedArray, offset1, count1));
|
|
1983
2201
|
}
|
|
1984
2202
|
if (accessor.sparse) {
|
|
1985
|
-
GLTFUtils.processingSparseData(
|
|
2203
|
+
return GLTFUtils.processingSparseData(context, accessor, bufferInfo).then(function() {
|
|
2204
|
+
return bufferInfo;
|
|
2205
|
+
});
|
|
1986
2206
|
}
|
|
1987
2207
|
return bufferInfo;
|
|
1988
2208
|
});
|
|
@@ -2058,40 +2278,43 @@ function registerGLTFParser(pipeline) {
|
|
|
2058
2278
|
};
|
|
2059
2279
|
/**
|
|
2060
2280
|
* Get accessor data.
|
|
2061
|
-
*/ GLTFUtils.processingSparseData = function processingSparseData(
|
|
2281
|
+
*/ GLTFUtils.processingSparseData = function processingSparseData(context, accessor, bufferInfo) {
|
|
2062
2282
|
var restoreInfo = bufferInfo.restoreInfo;
|
|
2283
|
+
var bufferViews = context.glTF.bufferViews;
|
|
2063
2284
|
var accessorTypeSize = GLTFUtils.getAccessorTypeSize(accessor.type);
|
|
2064
2285
|
var TypedArray = GLTFUtils.getComponentType(accessor.componentType);
|
|
2065
2286
|
var data = bufferInfo.data.slice();
|
|
2066
2287
|
var _accessor_sparse = accessor.sparse, count = _accessor_sparse.count, indices = _accessor_sparse.indices, values = _accessor_sparse.values;
|
|
2067
2288
|
var indicesBufferView = bufferViews[indices.bufferView];
|
|
2068
2289
|
var valuesBufferView = bufferViews[values.bufferView];
|
|
2069
|
-
|
|
2070
|
-
|
|
2071
|
-
|
|
2072
|
-
|
|
2073
|
-
|
|
2074
|
-
|
|
2075
|
-
|
|
2076
|
-
|
|
2077
|
-
|
|
2078
|
-
|
|
2079
|
-
|
|
2080
|
-
|
|
2081
|
-
|
|
2082
|
-
|
|
2083
|
-
|
|
2084
|
-
|
|
2085
|
-
|
|
2086
|
-
|
|
2087
|
-
|
|
2088
|
-
|
|
2089
|
-
var
|
|
2090
|
-
|
|
2091
|
-
|
|
2290
|
+
return Promise.all([
|
|
2291
|
+
context.get(exports.GLTFParserType.BufferView, indices.bufferView),
|
|
2292
|
+
context.get(exports.GLTFParserType.BufferView, values.bufferView)
|
|
2293
|
+
]).then(function(param) {
|
|
2294
|
+
var indicesUint8Array = param[0], valuesUin8Array = param[1];
|
|
2295
|
+
var _indices_byteOffset, _indicesUint8Array_byteOffset;
|
|
2296
|
+
var indicesByteOffset = ((_indices_byteOffset = indices.byteOffset) != null ? _indices_byteOffset : 0) + ((_indicesUint8Array_byteOffset = indicesUint8Array.byteOffset) != null ? _indicesUint8Array_byteOffset : 0);
|
|
2297
|
+
var indicesByteLength = indicesUint8Array.byteLength;
|
|
2298
|
+
var _values_byteOffset, _valuesUin8Array_byteOffset;
|
|
2299
|
+
var valuesByteOffset = ((_values_byteOffset = values.byteOffset) != null ? _values_byteOffset : 0) + ((_valuesUin8Array_byteOffset = valuesUin8Array.byteOffset) != null ? _valuesUin8Array_byteOffset : 0);
|
|
2300
|
+
var valuesByteLength = valuesUin8Array.byteLength;
|
|
2301
|
+
restoreInfo.typeSize = accessorTypeSize;
|
|
2302
|
+
restoreInfo.sparseCount = count;
|
|
2303
|
+
var IndexTypeArray = GLTFUtils.getComponentType(indices.componentType);
|
|
2304
|
+
var indexLength = indicesByteLength / IndexTypeArray.BYTES_PER_ELEMENT;
|
|
2305
|
+
var indicesArray = new IndexTypeArray(indicesUint8Array.buffer, indicesByteOffset, indexLength);
|
|
2306
|
+
restoreInfo.sparseIndices = new RestoreDataAccessor(indicesBufferView.buffer, IndexTypeArray, indicesByteOffset, indexLength);
|
|
2307
|
+
var valueLength = valuesByteLength / TypedArray.BYTES_PER_ELEMENT;
|
|
2308
|
+
var valuesArray = new TypedArray(valuesUin8Array.buffer, valuesByteOffset, valueLength);
|
|
2309
|
+
restoreInfo.sparseValues = new RestoreDataAccessor(valuesBufferView.buffer, TypedArray, valuesByteOffset, valueLength);
|
|
2310
|
+
for(var i = 0; i < count; i++){
|
|
2311
|
+
var replaceIndex = indicesArray[i];
|
|
2312
|
+
for(var j = 0; j < accessorTypeSize; j++){
|
|
2313
|
+
data[replaceIndex * accessorTypeSize + j] = valuesArray[i * accessorTypeSize + j];
|
|
2314
|
+
}
|
|
2092
2315
|
}
|
|
2093
|
-
|
|
2094
|
-
|
|
2316
|
+
bufferInfo.data = data;
|
|
2317
|
+
});
|
|
2095
2318
|
};
|
|
2096
2319
|
GLTFUtils.getIndexFormat = function getIndexFormat(type) {
|
|
2097
2320
|
switch(type){
|
|
@@ -2180,7 +2403,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2180
2403
|
};
|
|
2181
2404
|
/**
|
|
2182
2405
|
* Parse the glb format.
|
|
2183
|
-
*/ GLTFUtils.parseGLB = function parseGLB(context,
|
|
2406
|
+
*/ GLTFUtils.parseGLB = function parseGLB(context, originBuffer) {
|
|
2184
2407
|
var UINT32_LENGTH = 4;
|
|
2185
2408
|
var GLB_HEADER_MAGIC = 0x46546c67; // 'glTF'
|
|
2186
2409
|
var GLB_HEADER_LENGTH = 12;
|
|
@@ -2188,7 +2411,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2188
2411
|
JSON: 0x4e4f534a,
|
|
2189
2412
|
BIN: 0x004e4942
|
|
2190
2413
|
};
|
|
2191
|
-
var dataView = new DataView(
|
|
2414
|
+
var dataView = new DataView(originBuffer);
|
|
2192
2415
|
// read header
|
|
2193
2416
|
var header = {
|
|
2194
2417
|
magic: dataView.getUint32(0, true),
|
|
@@ -2196,8 +2419,9 @@ function registerGLTFParser(pipeline) {
|
|
|
2196
2419
|
length: dataView.getUint32(2 * UINT32_LENGTH, true)
|
|
2197
2420
|
};
|
|
2198
2421
|
if (header.magic !== GLB_HEADER_MAGIC) {
|
|
2199
|
-
|
|
2200
|
-
|
|
2422
|
+
return {
|
|
2423
|
+
originBuffer: originBuffer
|
|
2424
|
+
};
|
|
2201
2425
|
}
|
|
2202
2426
|
// read main data
|
|
2203
2427
|
var chunkLength = dataView.getUint32(GLB_HEADER_LENGTH, true);
|
|
@@ -2207,7 +2431,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2207
2431
|
console.error("Invalid glb chunk type. Expected 0x4E4F534A, found 0x" + chunkType.toString(16));
|
|
2208
2432
|
return null;
|
|
2209
2433
|
}
|
|
2210
|
-
var glTFData = new Uint8Array(
|
|
2434
|
+
var glTFData = new Uint8Array(originBuffer, GLB_HEADER_LENGTH + 2 * UINT32_LENGTH, chunkLength);
|
|
2211
2435
|
var glTF = JSON.parse(miniprogram.Utils.decodeText(glTFData));
|
|
2212
2436
|
// read all buffers
|
|
2213
2437
|
var buffers = [];
|
|
@@ -2221,7 +2445,7 @@ function registerGLTFParser(pipeline) {
|
|
|
2221
2445
|
return null;
|
|
2222
2446
|
}
|
|
2223
2447
|
var currentOffset = byteOffset + 2 * UINT32_LENGTH;
|
|
2224
|
-
var buffer =
|
|
2448
|
+
var buffer = originBuffer.slice(currentOffset, currentOffset + chunkLength);
|
|
2225
2449
|
buffers.push(buffer);
|
|
2226
2450
|
restoreGLBBufferSlice.push(new miniprogram$1.Vector2(currentOffset, chunkLength));
|
|
2227
2451
|
byteOffset += chunkLength + 2 * UINT32_LENGTH;
|
|
@@ -3113,8 +3337,9 @@ exports.KTX2Loader = (_KTX2Loader = /*#__PURE__*/ function(Loader1) {
|
|
|
3113
3337
|
});
|
|
3114
3338
|
};
|
|
3115
3339
|
/**
|
|
3116
|
-
*
|
|
3117
|
-
|
|
3340
|
+
* Release ktx2 transcoder worker.
|
|
3341
|
+
* @remarks If use loader after releasing, we should release again.
|
|
3342
|
+
*/ KTX2Loader1.release = function release() {
|
|
3118
3343
|
if (this._binomialLLCTranscoder) this._binomialLLCTranscoder.destroy();
|
|
3119
3344
|
if (this._khronosTranscoder) this._khronosTranscoder.destroy();
|
|
3120
3345
|
this._binomialLLCTranscoder = null;
|
|
@@ -3634,23 +3859,20 @@ exports.GLTFSchemaParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
|
3634
3859
|
var requestConfig = {
|
|
3635
3860
|
type: "arraybuffer"
|
|
3636
3861
|
};
|
|
3637
|
-
|
|
3638
|
-
contentRestorer.isGLB = isGLB;
|
|
3639
|
-
var promise = isGLB ? miniprogram.request(url, requestConfig).onProgress(undefined, context._onTaskDetail).then(function(glb) {
|
|
3862
|
+
return miniprogram.request(url, requestConfig).onProgress(undefined, context._onTaskDetail).then(function(buffer) {
|
|
3640
3863
|
restoreBufferRequests.push(new BufferRequestInfo(url, requestConfig));
|
|
3641
|
-
return GLTFUtils.parseGLB(context,
|
|
3642
|
-
}).then(function(
|
|
3643
|
-
var
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
return url.substring(index + 1, index + 4) === "glb";
|
|
3864
|
+
return GLTFUtils.parseGLB(context, buffer);
|
|
3865
|
+
}).then(function(result) {
|
|
3866
|
+
var _result;
|
|
3867
|
+
if ((_result = result) == null ? void 0 : _result.glTF) {
|
|
3868
|
+
contentRestorer.isGLB = true;
|
|
3869
|
+
context.buffers = result.buffers;
|
|
3870
|
+
return result.glTF;
|
|
3871
|
+
} else {
|
|
3872
|
+
contentRestorer.isGLB = false;
|
|
3873
|
+
return JSON.parse(miniprogram.Utils.decodeText(new Uint8Array(result.originBuffer)));
|
|
3874
|
+
}
|
|
3875
|
+
});
|
|
3654
3876
|
};
|
|
3655
3877
|
return GLTFSchemaParser;
|
|
3656
3878
|
}(GLTFParser);
|
|
@@ -4644,12 +4866,255 @@ exports.GLTFValidator = __decorate([
|
|
|
4644
4866
|
registerGLTFParser(exports.GLTFParserType.Validator)
|
|
4645
4867
|
], exports.GLTFValidator);
|
|
4646
4868
|
|
|
4647
|
-
|
|
4869
|
+
exports.GLTFBufferViewParser = /*#__PURE__*/ function(GLTFParser1) {
|
|
4870
|
+
_inherits(GLTFBufferViewParser, GLTFParser1);
|
|
4871
|
+
function GLTFBufferViewParser() {
|
|
4872
|
+
return GLTFParser1.apply(this, arguments);
|
|
4873
|
+
}
|
|
4874
|
+
var _proto = GLTFBufferViewParser.prototype;
|
|
4875
|
+
_proto.parse = function parse(context, index) {
|
|
4876
|
+
var bufferView = context.glTF.bufferViews[index];
|
|
4877
|
+
var extensions = bufferView.extensions, _bufferView_byteOffset = bufferView.byteOffset, byteOffset = _bufferView_byteOffset === void 0 ? 0 : _bufferView_byteOffset, byteLength = bufferView.byteLength, bufferIndex = bufferView.buffer;
|
|
4878
|
+
return extensions ? GLTFParser.executeExtensionsCreateAndParse(extensions, context, bufferView) : context.get(exports.GLTFParserType.Buffer, bufferIndex).then(function(buffer) {
|
|
4879
|
+
return new Uint8Array(buffer, byteOffset, byteLength);
|
|
4880
|
+
});
|
|
4881
|
+
};
|
|
4882
|
+
return GLTFBufferViewParser;
|
|
4883
|
+
}(GLTFParser);
|
|
4884
|
+
exports.GLTFBufferViewParser = __decorate([
|
|
4885
|
+
registerGLTFParser(exports.GLTFParserType.BufferView)
|
|
4886
|
+
], exports.GLTFBufferViewParser);
|
|
4887
|
+
|
|
4888
|
+
var MeshoptDecoder = function() {
|
|
4889
|
+
var unpack = function unpack(data) {
|
|
4890
|
+
var result = new Uint8Array(data.length);
|
|
4891
|
+
for(var i = 0; i < data.length; ++i){
|
|
4892
|
+
var ch = data.charCodeAt(i);
|
|
4893
|
+
result[i] = ch > 96 ? ch - 97 : ch > 64 ? ch - 39 : ch + 4;
|
|
4894
|
+
}
|
|
4895
|
+
var write = 0;
|
|
4896
|
+
for(var i1 = 0; i1 < data.length; ++i1){
|
|
4897
|
+
result[write++] = result[i1] < 60 ? wasmpack[result[i1]] : (result[i1] - 60) * 64 + result[++i1];
|
|
4898
|
+
}
|
|
4899
|
+
return result.buffer.slice(0, write);
|
|
4900
|
+
};
|
|
4901
|
+
var decode = function decode(fun, target, count, size, source, filter) {
|
|
4902
|
+
var sbrk = instance.exports.sbrk;
|
|
4903
|
+
var count4 = count + 3 & ~3;
|
|
4904
|
+
var tp = sbrk(count4 * size);
|
|
4905
|
+
var sp = sbrk(source.length);
|
|
4906
|
+
var heap = new Uint8Array(instance.exports.memory.buffer);
|
|
4907
|
+
heap.set(source, sp);
|
|
4908
|
+
var res = fun(tp, count, size, sp, source.length);
|
|
4909
|
+
if (res == 0 && filter) {
|
|
4910
|
+
filter(tp, count4, size);
|
|
4911
|
+
}
|
|
4912
|
+
target.set(heap.subarray(tp, tp + count * size));
|
|
4913
|
+
sbrk(tp - sbrk(0));
|
|
4914
|
+
if (res != 0) {
|
|
4915
|
+
throw new Error("Malformed buffer data: " + res);
|
|
4916
|
+
}
|
|
4917
|
+
};
|
|
4918
|
+
var createWorker = function createWorker(url) {
|
|
4919
|
+
var worker = {
|
|
4920
|
+
object: new Worker(url),
|
|
4921
|
+
pending: 0,
|
|
4922
|
+
requests: {}
|
|
4923
|
+
};
|
|
4924
|
+
worker.object.onmessage = function(event) {
|
|
4925
|
+
var data = event.data;
|
|
4926
|
+
worker.pending -= data.count;
|
|
4927
|
+
worker.requests[data.id][data.action](data.value);
|
|
4928
|
+
delete worker.requests[data.id];
|
|
4929
|
+
};
|
|
4930
|
+
return worker;
|
|
4931
|
+
};
|
|
4932
|
+
var initWorkers = function initWorkers(count) {
|
|
4933
|
+
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();});" + "self.onmessage = workerProcess;" + decode.toString() + workerProcess.toString();
|
|
4934
|
+
var blob = new engineMiniprogramAdapter.Blob([
|
|
4935
|
+
source
|
|
4936
|
+
], {
|
|
4937
|
+
type: "text/javascript"
|
|
4938
|
+
});
|
|
4939
|
+
var url = engineMiniprogramAdapter.URL.createObjectURL(blob);
|
|
4940
|
+
for(var i = 0; i < count; ++i){
|
|
4941
|
+
workers[i] = createWorker(url);
|
|
4942
|
+
}
|
|
4943
|
+
engineMiniprogramAdapter.URL.revokeObjectURL(url);
|
|
4944
|
+
};
|
|
4945
|
+
var decodeWorker = function decodeWorker(count, size, source, mode, filter) {
|
|
4946
|
+
var worker = workers[0];
|
|
4947
|
+
for(var i = 1; i < workers.length; ++i){
|
|
4948
|
+
if (workers[i].pending < worker.pending) {
|
|
4949
|
+
worker = workers[i];
|
|
4950
|
+
}
|
|
4951
|
+
}
|
|
4952
|
+
return new Promise(function(resolve, reject) {
|
|
4953
|
+
var data = new Uint8Array(source);
|
|
4954
|
+
var id = requestId++;
|
|
4955
|
+
worker.pending += count;
|
|
4956
|
+
worker.requests[id] = {
|
|
4957
|
+
resolve: resolve,
|
|
4958
|
+
reject: reject
|
|
4959
|
+
};
|
|
4960
|
+
worker.object.postMessage({
|
|
4961
|
+
id: id,
|
|
4962
|
+
count: count,
|
|
4963
|
+
size: size,
|
|
4964
|
+
source: data,
|
|
4965
|
+
mode: mode,
|
|
4966
|
+
filter: filter
|
|
4967
|
+
}, [
|
|
4968
|
+
data.buffer
|
|
4969
|
+
]);
|
|
4970
|
+
});
|
|
4971
|
+
};
|
|
4972
|
+
var workerProcess = function workerProcess(event) {
|
|
4973
|
+
ready.then(function() {
|
|
4974
|
+
var data = event.data;
|
|
4975
|
+
try {
|
|
4976
|
+
var target = new Uint8Array(data.count * data.size);
|
|
4977
|
+
decode(instance.exports[data.mode], target, data.count, data.size, data.source, instance.exports[data.filter]);
|
|
4978
|
+
self.postMessage({
|
|
4979
|
+
id: data.id,
|
|
4980
|
+
count: data.count,
|
|
4981
|
+
action: "resolve",
|
|
4982
|
+
value: target
|
|
4983
|
+
}, [
|
|
4984
|
+
target.buffer
|
|
4985
|
+
]);
|
|
4986
|
+
} catch (error) {
|
|
4987
|
+
self.postMessage({
|
|
4988
|
+
id: data.id,
|
|
4989
|
+
count: data.count,
|
|
4990
|
+
action: "reject",
|
|
4991
|
+
value: error
|
|
4992
|
+
});
|
|
4993
|
+
}
|
|
4994
|
+
});
|
|
4995
|
+
};
|
|
4996
|
+
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";
|
|
4997
|
+
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";
|
|
4998
|
+
var wasmpack = new Uint8Array([
|
|
4999
|
+
32,
|
|
5000
|
+
0,
|
|
5001
|
+
65,
|
|
5002
|
+
2,
|
|
5003
|
+
1,
|
|
5004
|
+
106,
|
|
5005
|
+
34,
|
|
5006
|
+
33,
|
|
5007
|
+
3,
|
|
5008
|
+
128,
|
|
5009
|
+
11,
|
|
5010
|
+
4,
|
|
5011
|
+
13,
|
|
5012
|
+
64,
|
|
5013
|
+
6,
|
|
5014
|
+
253,
|
|
5015
|
+
10,
|
|
5016
|
+
7,
|
|
5017
|
+
15,
|
|
5018
|
+
116,
|
|
5019
|
+
127,
|
|
5020
|
+
5,
|
|
5021
|
+
8,
|
|
5022
|
+
12,
|
|
5023
|
+
40,
|
|
5024
|
+
16,
|
|
5025
|
+
19,
|
|
5026
|
+
54,
|
|
5027
|
+
20,
|
|
5028
|
+
9,
|
|
5029
|
+
27,
|
|
5030
|
+
255,
|
|
5031
|
+
113,
|
|
5032
|
+
17,
|
|
5033
|
+
42,
|
|
5034
|
+
67,
|
|
5035
|
+
24,
|
|
5036
|
+
23,
|
|
5037
|
+
146,
|
|
5038
|
+
148,
|
|
5039
|
+
18,
|
|
5040
|
+
14,
|
|
5041
|
+
22,
|
|
5042
|
+
45,
|
|
5043
|
+
70,
|
|
5044
|
+
69,
|
|
5045
|
+
56,
|
|
5046
|
+
114,
|
|
5047
|
+
101,
|
|
5048
|
+
21,
|
|
5049
|
+
25,
|
|
5050
|
+
63,
|
|
5051
|
+
75,
|
|
5052
|
+
136,
|
|
5053
|
+
108,
|
|
5054
|
+
28,
|
|
5055
|
+
118,
|
|
5056
|
+
29,
|
|
5057
|
+
73,
|
|
5058
|
+
115
|
|
5059
|
+
]);
|
|
5060
|
+
// @ts-ignore
|
|
5061
|
+
var wasm = miniprogram.SystemInfo._detectSIMDSupported() ? wasm_simd : wasm_base;
|
|
5062
|
+
var instance;
|
|
5063
|
+
var ready = WebAssembly.instantiate(unpack(wasm), {}).then(function(result) {
|
|
5064
|
+
instance = result.instance;
|
|
5065
|
+
instance.exports.__wasm_call_ctors();
|
|
5066
|
+
});
|
|
5067
|
+
var filters = {
|
|
5068
|
+
NONE: "",
|
|
5069
|
+
OCTAHEDRAL: "meshopt_decodeFilterOct",
|
|
5070
|
+
QUATERNION: "meshopt_decodeFilterQuat",
|
|
5071
|
+
EXPONENTIAL: "meshopt_decodeFilterExp"
|
|
5072
|
+
};
|
|
5073
|
+
var decoders = {
|
|
5074
|
+
ATTRIBUTES: "meshopt_decodeVertexBuffer",
|
|
5075
|
+
TRIANGLES: "meshopt_decodeIndexBuffer",
|
|
5076
|
+
INDICES: "meshopt_decodeIndexSequence"
|
|
5077
|
+
};
|
|
5078
|
+
var workers = [];
|
|
5079
|
+
var requestId = 0;
|
|
5080
|
+
return {
|
|
5081
|
+
workerCount: 4,
|
|
5082
|
+
ready: ready,
|
|
5083
|
+
useWorkers: function useWorkers() {
|
|
5084
|
+
initWorkers(this.workerCount);
|
|
5085
|
+
},
|
|
5086
|
+
decodeGltfBuffer: function decodeGltfBuffer(count, stride, source, mode, filter) {
|
|
5087
|
+
if (this.workerCount > 0 && workers.length === 0) this.useWorkers();
|
|
5088
|
+
if (workers.length > 0) return decodeWorker(count, stride, source, decoders[mode], filters[filter]);
|
|
5089
|
+
return ready.then(function() {
|
|
5090
|
+
var target = new Uint8Array(count * stride);
|
|
5091
|
+
decode(instance.exports[decoders[mode]], target, count, stride, source, instance.exports[filters[filter]]);
|
|
5092
|
+
return target;
|
|
5093
|
+
});
|
|
5094
|
+
},
|
|
5095
|
+
release: function release() {
|
|
5096
|
+
for(var i = 0; i < workers.length; i++){
|
|
5097
|
+
workers[i].object.terminate();
|
|
5098
|
+
}
|
|
5099
|
+
}
|
|
5100
|
+
};
|
|
5101
|
+
}();
|
|
5102
|
+
|
|
5103
|
+
exports.GLTFLoader = /*#__PURE__*/ function(Loader1) {
|
|
4648
5104
|
_inherits(GLTFLoader, Loader1);
|
|
4649
5105
|
function GLTFLoader() {
|
|
4650
5106
|
return Loader1.apply(this, arguments);
|
|
4651
5107
|
}
|
|
4652
5108
|
var _proto = GLTFLoader.prototype;
|
|
5109
|
+
_proto.initialize = function initialize(_, configuration) {
|
|
5110
|
+
var _configuration_glTF;
|
|
5111
|
+
var meshOptOptions = (_configuration_glTF = configuration.glTF) == null ? void 0 : _configuration_glTF.meshOpt;
|
|
5112
|
+
if (meshOptOptions) {
|
|
5113
|
+
MeshoptDecoder.workerCount = meshOptOptions.workerCount;
|
|
5114
|
+
MeshoptDecoder.useWorkers();
|
|
5115
|
+
}
|
|
5116
|
+
return Promise.resolve();
|
|
5117
|
+
};
|
|
4653
5118
|
_proto.load = function load(item, resourceManager) {
|
|
4654
5119
|
var url = item.url;
|
|
4655
5120
|
var params = item.params;
|
|
@@ -4663,14 +5128,20 @@ var GLTFLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
4663
5128
|
context.parse().then(resolve).catch(reject);
|
|
4664
5129
|
});
|
|
4665
5130
|
};
|
|
5131
|
+
/**
|
|
5132
|
+
* Release glTF loader memory(includes meshopt workers).
|
|
5133
|
+
* @remarks If use loader after releasing, we should release again.
|
|
5134
|
+
*/ GLTFLoader.release = function release() {
|
|
5135
|
+
MeshoptDecoder.release();
|
|
5136
|
+
};
|
|
4666
5137
|
return GLTFLoader;
|
|
4667
5138
|
}(miniprogram.Loader);
|
|
4668
|
-
GLTFLoader = __decorate([
|
|
5139
|
+
exports.GLTFLoader = __decorate([
|
|
4669
5140
|
miniprogram.resourceLoader(miniprogram.AssetType.GLTF, [
|
|
4670
5141
|
"gltf",
|
|
4671
5142
|
"glb"
|
|
4672
5143
|
])
|
|
4673
|
-
], GLTFLoader);
|
|
5144
|
+
], exports.GLTFLoader);
|
|
4674
5145
|
|
|
4675
5146
|
var _HDRLoader;
|
|
4676
5147
|
var PI = Math.PI;
|
|
@@ -5372,6 +5843,86 @@ MeshLoader = __decorate([
|
|
|
5372
5843
|
])
|
|
5373
5844
|
], MeshLoader);
|
|
5374
5845
|
|
|
5846
|
+
var PrimitiveMeshLoader = /*#__PURE__*/ function(Loader1) {
|
|
5847
|
+
_inherits(PrimitiveMeshLoader, Loader1);
|
|
5848
|
+
function PrimitiveMeshLoader() {
|
|
5849
|
+
return Loader1.apply(this, arguments);
|
|
5850
|
+
}
|
|
5851
|
+
var _proto = PrimitiveMeshLoader.prototype;
|
|
5852
|
+
_proto.load = function load(item, param) {
|
|
5853
|
+
var engine = param.engine;
|
|
5854
|
+
return this.request(item.url, _extends({}, item, {
|
|
5855
|
+
type: "json"
|
|
5856
|
+
})).then(function(data) {
|
|
5857
|
+
switch(data.type){
|
|
5858
|
+
case "sphere":
|
|
5859
|
+
return miniprogram.PrimitiveMesh.createSubdivisionSurfaceSphere(engine, data.sphereRadius, data.sphereStep);
|
|
5860
|
+
case "capsule":
|
|
5861
|
+
return miniprogram.PrimitiveMesh.createCapsule(engine, data.capsuleRadius, data.capsuleHeight, data.capsuleRadialSegments, data.capsuleHeightSegments);
|
|
5862
|
+
case "cone":
|
|
5863
|
+
return miniprogram.PrimitiveMesh.createCone(engine, data.coneRadius, data.coneHeight, data.coneRadialSegment, data.coneHeightSegment);
|
|
5864
|
+
case "cuboid":
|
|
5865
|
+
return miniprogram.PrimitiveMesh.createCuboid(engine, data.cuboidWidth, data.cuboidHeight, data.cuboidDepth);
|
|
5866
|
+
case "cylinder":
|
|
5867
|
+
return miniprogram.PrimitiveMesh.createCylinder(engine, data.cylinderRadiusTop, data.cylinderRadiusBottom, data.cylinderHeight, data.cylinderRadialSegment, data.cylinderHeightSegment);
|
|
5868
|
+
case "plane":
|
|
5869
|
+
return miniprogram.PrimitiveMesh.createPlane(engine, data.planeWidth, data.planeHeight, data.planeHorizontalSegments, data.planeVerticalSegments);
|
|
5870
|
+
case "torus":
|
|
5871
|
+
return miniprogram.PrimitiveMesh.createTorus(engine, data.torusRadius, data.torusTubeRadius, data.torusRadialSegments, data.torusTubularSegments, data.torusArc);
|
|
5872
|
+
}
|
|
5873
|
+
});
|
|
5874
|
+
};
|
|
5875
|
+
return PrimitiveMeshLoader;
|
|
5876
|
+
}(miniprogram.Loader);
|
|
5877
|
+
PrimitiveMeshLoader = __decorate([
|
|
5878
|
+
miniprogram.resourceLoader(miniprogram.AssetType.PrimitiveMesh, [
|
|
5879
|
+
"mesh"
|
|
5880
|
+
], false)
|
|
5881
|
+
], PrimitiveMeshLoader);
|
|
5882
|
+
var /** @internal */ PrimitiveMeshType;
|
|
5883
|
+
(function(PrimitiveMeshType) {
|
|
5884
|
+
PrimitiveMeshType["Sphere"] = "sphere";
|
|
5885
|
+
PrimitiveMeshType["Cuboid"] = "cuboid";
|
|
5886
|
+
PrimitiveMeshType["Plane"] = "plane";
|
|
5887
|
+
PrimitiveMeshType["Cylinder"] = "cylinder";
|
|
5888
|
+
PrimitiveMeshType["Torus"] = "torus";
|
|
5889
|
+
PrimitiveMeshType["Cone"] = "cone";
|
|
5890
|
+
PrimitiveMeshType["Capsule"] = "capsule";
|
|
5891
|
+
})(PrimitiveMeshType || (PrimitiveMeshType = {}));
|
|
5892
|
+
|
|
5893
|
+
var ProjectLoader = /*#__PURE__*/ function(Loader1) {
|
|
5894
|
+
_inherits(ProjectLoader, Loader1);
|
|
5895
|
+
function ProjectLoader() {
|
|
5896
|
+
return Loader1.apply(this, arguments);
|
|
5897
|
+
}
|
|
5898
|
+
var _proto = ProjectLoader.prototype;
|
|
5899
|
+
_proto.load = function load(item, resourceManager) {
|
|
5900
|
+
var _this = this;
|
|
5901
|
+
var engine = resourceManager.engine;
|
|
5902
|
+
return new miniprogram.AssetPromise(function(resolve, reject) {
|
|
5903
|
+
_this.request(item.url, {
|
|
5904
|
+
type: "json"
|
|
5905
|
+
}).then(function(data) {
|
|
5906
|
+
// @ts-ignore
|
|
5907
|
+
engine.resourceManager.initVirtualResources(data.files);
|
|
5908
|
+
return resourceManager.load({
|
|
5909
|
+
type: miniprogram.AssetType.Scene,
|
|
5910
|
+
url: data.scene
|
|
5911
|
+
}).then(function(scene) {
|
|
5912
|
+
engine.sceneManager.activeScene = scene;
|
|
5913
|
+
resolve();
|
|
5914
|
+
});
|
|
5915
|
+
}).catch(reject);
|
|
5916
|
+
});
|
|
5917
|
+
};
|
|
5918
|
+
return ProjectLoader;
|
|
5919
|
+
}(miniprogram.Loader);
|
|
5920
|
+
ProjectLoader = __decorate([
|
|
5921
|
+
miniprogram.resourceLoader(miniprogram.AssetType.Project, [
|
|
5922
|
+
"proj"
|
|
5923
|
+
], false)
|
|
5924
|
+
], ProjectLoader);
|
|
5925
|
+
|
|
5375
5926
|
var SourceFontLoader = /*#__PURE__*/ function(Loader1) {
|
|
5376
5927
|
_inherits(SourceFontLoader, Loader1);
|
|
5377
5928
|
function SourceFontLoader() {
|
|
@@ -5492,7 +6043,7 @@ var SpriteAtlasLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
5492
6043
|
};
|
|
5493
6044
|
_proto._makeSprite = function _makeSprite(engine, config, texture) {
|
|
5494
6045
|
// Generate a SpriteAtlas object.
|
|
5495
|
-
var region = config.region, atlasRegionOffset = config.atlasRegionOffset, atlasRegion = config.atlasRegion, pivot = config.pivot, border = config.border;
|
|
6046
|
+
var region = config.region, atlasRegionOffset = config.atlasRegionOffset, atlasRegion = config.atlasRegion, pivot = config.pivot, border = config.border, width = config.width, height = config.height;
|
|
5496
6047
|
var sprite = new miniprogram.Sprite(engine, texture, region ? this._tempRect.set(region.x, region.y, region.w, region.h) : undefined, pivot ? this._tempVec2.set(pivot.x, pivot.y) : undefined, border ? this._tempVec4.set(border.x, border.y, border.z, border.w) : undefined, config.name);
|
|
5497
6048
|
if (texture) {
|
|
5498
6049
|
var invW = 1 / texture.width;
|
|
@@ -5504,6 +6055,8 @@ var SpriteAtlasLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
5504
6055
|
}
|
|
5505
6056
|
config.atlasRotated && (sprite.atlasRotated = true);
|
|
5506
6057
|
}
|
|
6058
|
+
isNaN(width) || (sprite.width = width);
|
|
6059
|
+
isNaN(height) || (sprite.height = height);
|
|
5507
6060
|
return sprite;
|
|
5508
6061
|
};
|
|
5509
6062
|
return SpriteAtlasLoader;
|
|
@@ -5522,26 +6075,39 @@ var SpriteLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
5522
6075
|
var _proto = SpriteLoader.prototype;
|
|
5523
6076
|
_proto.load = function load(item, resourceManager) {
|
|
5524
6077
|
var _this = this;
|
|
5525
|
-
return
|
|
5526
|
-
|
|
5527
|
-
|
|
5528
|
-
|
|
5529
|
-
if (data.belongToAtlas) {
|
|
5530
|
-
resourceManager// @ts-ignore
|
|
5531
|
-
.getResourceByRef(data.belongToAtlas).then(function(atlas) {
|
|
5532
|
-
resolve(atlas.getSprite(data.fullPath));
|
|
5533
|
-
}).catch(reject);
|
|
5534
|
-
} else if (data.texture) {
|
|
5535
|
-
resourceManager// @ts-ignore
|
|
5536
|
-
.getResourceByRef(data.texture).then(function(texture) {
|
|
5537
|
-
resolve(new miniprogram.Sprite(resourceManager.engine, texture, data.region, data.pivot, data.border));
|
|
5538
|
-
}).catch(reject);
|
|
5539
|
-
} else {
|
|
5540
|
-
resolve(new miniprogram.Sprite(resourceManager.engine, null, data.region, data.pivot, data.border));
|
|
5541
|
-
}
|
|
5542
|
-
}).catch(reject);
|
|
6078
|
+
return this.request(item.url, _extends({}, item, {
|
|
6079
|
+
type: "json"
|
|
6080
|
+
})).then(function(data) {
|
|
6081
|
+
return data.belongToAtlas ? _this._loadFromAtlas(resourceManager, data) : _this._loadFromTexture(resourceManager, data);
|
|
5543
6082
|
});
|
|
5544
6083
|
};
|
|
6084
|
+
_proto._loadFromAtlas = function _loadFromAtlas(resourceManager, data) {
|
|
6085
|
+
var _this = this;
|
|
6086
|
+
return resourceManager// @ts-ignore
|
|
6087
|
+
.getResourceByRef(data.belongToAtlas).then(function(atlas) {
|
|
6088
|
+
return atlas.getSprite(data.fullPath) || _this._loadFromTexture(resourceManager, data);
|
|
6089
|
+
});
|
|
6090
|
+
};
|
|
6091
|
+
_proto._loadFromTexture = function _loadFromTexture(resourceManager, data) {
|
|
6092
|
+
if (data.texture) {
|
|
6093
|
+
return resourceManager// @ts-ignore
|
|
6094
|
+
.getResourceByRef(data.texture).then(function(texture) {
|
|
6095
|
+
var sprite = new miniprogram.Sprite(resourceManager.engine, texture, data.region, data.pivot, data.border);
|
|
6096
|
+
var width = data.width, height = data.height;
|
|
6097
|
+
isNaN(width) || (sprite.width = width);
|
|
6098
|
+
isNaN(height) || (sprite.height = height);
|
|
6099
|
+
return sprite;
|
|
6100
|
+
});
|
|
6101
|
+
} else {
|
|
6102
|
+
return new miniprogram.AssetPromise(function(resolve) {
|
|
6103
|
+
var sprite = new miniprogram.Sprite(resourceManager.engine, null, data.region, data.pivot, data.border);
|
|
6104
|
+
var width = data.width, height = data.height;
|
|
6105
|
+
isNaN(width) || (sprite.width = width);
|
|
6106
|
+
isNaN(height) || (sprite.height = height);
|
|
6107
|
+
resolve(sprite);
|
|
6108
|
+
});
|
|
6109
|
+
}
|
|
6110
|
+
};
|
|
5545
6111
|
return SpriteLoader;
|
|
5546
6112
|
}(miniprogram.Loader);
|
|
5547
6113
|
SpriteLoader = __decorate([
|
|
@@ -5692,39 +6258,6 @@ TextureCubeLoader = __decorate([
|
|
|
5692
6258
|
])
|
|
5693
6259
|
], TextureCubeLoader);
|
|
5694
6260
|
|
|
5695
|
-
var ProjectLoader = /*#__PURE__*/ function(Loader1) {
|
|
5696
|
-
_inherits(ProjectLoader, Loader1);
|
|
5697
|
-
function ProjectLoader() {
|
|
5698
|
-
return Loader1.apply(this, arguments);
|
|
5699
|
-
}
|
|
5700
|
-
var _proto = ProjectLoader.prototype;
|
|
5701
|
-
_proto.load = function load(item, resourceManager) {
|
|
5702
|
-
var _this = this;
|
|
5703
|
-
var engine = resourceManager.engine;
|
|
5704
|
-
return new miniprogram.AssetPromise(function(resolve, reject) {
|
|
5705
|
-
_this.request(item.url, {
|
|
5706
|
-
type: "json"
|
|
5707
|
-
}).then(function(data) {
|
|
5708
|
-
// @ts-ignore
|
|
5709
|
-
engine.resourceManager.initVirtualResources(data.files);
|
|
5710
|
-
return resourceManager.load({
|
|
5711
|
-
type: miniprogram.AssetType.Scene,
|
|
5712
|
-
url: data.scene
|
|
5713
|
-
}).then(function(scene) {
|
|
5714
|
-
engine.sceneManager.activeScene = scene;
|
|
5715
|
-
resolve();
|
|
5716
|
-
});
|
|
5717
|
-
}).catch(reject);
|
|
5718
|
-
});
|
|
5719
|
-
};
|
|
5720
|
-
return ProjectLoader;
|
|
5721
|
-
}(miniprogram.Loader);
|
|
5722
|
-
ProjectLoader = __decorate([
|
|
5723
|
-
miniprogram.resourceLoader(miniprogram.AssetType.Project, [
|
|
5724
|
-
"proj"
|
|
5725
|
-
], false)
|
|
5726
|
-
], ProjectLoader);
|
|
5727
|
-
|
|
5728
6261
|
var SceneLoader = /*#__PURE__*/ function(Loader1) {
|
|
5729
6262
|
_inherits(SceneLoader, Loader1);
|
|
5730
6263
|
function SceneLoader() {
|
|
@@ -5743,7 +6276,7 @@ var SceneLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
5743
6276
|
// parse ambient light
|
|
5744
6277
|
var ambient = data.scene.ambient;
|
|
5745
6278
|
if (ambient) {
|
|
5746
|
-
var useCustomAmbient = ambient.specularMode ===
|
|
6279
|
+
var useCustomAmbient = ambient.specularMode === exports.SpecularMode.Custom;
|
|
5747
6280
|
var useSH = ambient.diffuseMode === miniprogram.DiffuseMode.SphericalHarmonics;
|
|
5748
6281
|
scene.ambientLight.diffuseIntensity = ambient.diffuseIntensity;
|
|
5749
6282
|
scene.ambientLight.specularIntensity = ambient.specularIntensity;
|
|
@@ -5814,6 +6347,8 @@ var SceneLoader = /*#__PURE__*/ function(Loader1) {
|
|
|
5814
6347
|
var _shadow_shadowTwoCascadeSplits;
|
|
5815
6348
|
scene.shadowTwoCascadeSplits = (_shadow_shadowTwoCascadeSplits = shadow.shadowTwoCascadeSplits) != null ? _shadow_shadowTwoCascadeSplits : scene.shadowTwoCascadeSplits;
|
|
5816
6349
|
shadow.shadowFourCascadeSplits && scene.shadowFourCascadeSplits.copyFrom(shadow.shadowFourCascadeSplits);
|
|
6350
|
+
var _shadow_shadowFadeBorder;
|
|
6351
|
+
scene.shadowFadeBorder = (_shadow_shadowFadeBorder = shadow.shadowFadeBorder) != null ? _shadow_shadowFadeBorder : scene.shadowFadeBorder;
|
|
5817
6352
|
}
|
|
5818
6353
|
return Promise.all(promises).then(function() {
|
|
5819
6354
|
resolve(scene);
|
|
@@ -5844,170 +6379,6 @@ ReflectionParser.registerCustomParseComponent("TextRenderer", /*#__PURE__*/ _asy
|
|
|
5844
6379
|
});
|
|
5845
6380
|
}));
|
|
5846
6381
|
|
|
5847
|
-
var _KHR_draco_mesh_compression;
|
|
5848
|
-
var KHR_draco_mesh_compression = (_KHR_draco_mesh_compression = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
5849
|
-
_inherits(KHR_draco_mesh_compression1, GLTFExtensionParser1);
|
|
5850
|
-
function KHR_draco_mesh_compression1() {
|
|
5851
|
-
return GLTFExtensionParser1.apply(this, arguments);
|
|
5852
|
-
}
|
|
5853
|
-
var _proto = KHR_draco_mesh_compression1.prototype;
|
|
5854
|
-
_proto.createAndParse = function createAndParse(context, schema, glTFPrimitive, glTFMesh) {
|
|
5855
|
-
var _this = this;
|
|
5856
|
-
this._initialize();
|
|
5857
|
-
var glTF = context.glTF, engine = context.glTFResource.engine;
|
|
5858
|
-
var bufferViews = glTF.bufferViews, accessors = glTF.accessors;
|
|
5859
|
-
var bufferViewIndex = schema.bufferView, gltfAttributeMap = schema.attributes;
|
|
5860
|
-
var attributeMap = {};
|
|
5861
|
-
var attributeTypeMap = {};
|
|
5862
|
-
for(var attributeName in gltfAttributeMap){
|
|
5863
|
-
attributeMap[attributeName] = gltfAttributeMap[attributeName];
|
|
5864
|
-
}
|
|
5865
|
-
for(var attributeName1 in glTFPrimitive.attributes){
|
|
5866
|
-
if (gltfAttributeMap[attributeName1] !== undefined) {
|
|
5867
|
-
var accessorDef = accessors[glTFPrimitive.attributes[attributeName1]];
|
|
5868
|
-
attributeTypeMap[attributeName1] = GLTFUtils.getComponentType(accessorDef.componentType).name;
|
|
5869
|
-
}
|
|
5870
|
-
}
|
|
5871
|
-
var indexAccessor = accessors[glTFPrimitive.indices];
|
|
5872
|
-
var indexType = GLTFUtils.getComponentType(indexAccessor.componentType).name;
|
|
5873
|
-
var taskConfig = {
|
|
5874
|
-
attributeIDs: attributeMap,
|
|
5875
|
-
attributeTypes: attributeTypeMap,
|
|
5876
|
-
useUniqueIDs: true,
|
|
5877
|
-
indexType: indexType
|
|
5878
|
-
};
|
|
5879
|
-
return context.get(exports.GLTFParserType.Buffer).then(function(buffers) {
|
|
5880
|
-
var buffer = GLTFUtils.getBufferViewData(bufferViews[bufferViewIndex], buffers);
|
|
5881
|
-
return KHR_draco_mesh_compression._decoder.decode(buffer, taskConfig).then(function(decodedGeometry) {
|
|
5882
|
-
var mesh = new miniprogram.ModelMesh(engine, glTFMesh.name);
|
|
5883
|
-
return _this._parseMeshFromGLTFPrimitiveDraco(mesh, glTFMesh, glTFPrimitive, glTF, function(attributeSemantic) {
|
|
5884
|
-
for(var j = 0; j < decodedGeometry.attributes.length; j++){
|
|
5885
|
-
if (decodedGeometry.attributes[j].name === attributeSemantic) {
|
|
5886
|
-
return decodedGeometry.attributes[j].array;
|
|
5887
|
-
}
|
|
5888
|
-
}
|
|
5889
|
-
return null;
|
|
5890
|
-
}, function(attributeSemantic, shapeIndex) {
|
|
5891
|
-
throw "BlendShape animation is not supported when using draco.";
|
|
5892
|
-
}, function() {
|
|
5893
|
-
return decodedGeometry.index.array;
|
|
5894
|
-
}, context.params.keepMeshData);
|
|
5895
|
-
});
|
|
5896
|
-
});
|
|
5897
|
-
};
|
|
5898
|
-
_proto._initialize = function _initialize() {
|
|
5899
|
-
if (!KHR_draco_mesh_compression._decoder) {
|
|
5900
|
-
KHR_draco_mesh_compression._decoder = new miniprogram$3.DRACODecoder();
|
|
5901
|
-
}
|
|
5902
|
-
};
|
|
5903
|
-
_proto._parseMeshFromGLTFPrimitiveDraco = function _parseMeshFromGLTFPrimitiveDraco(mesh, gltfMesh, gltfPrimitive, gltf, getVertexBufferData, getBlendShapeData, getIndexBufferData, keepMeshData) {
|
|
5904
|
-
var attributes = gltfPrimitive.attributes, targets = gltfPrimitive.targets, indices = gltfPrimitive.indices, mode = gltfPrimitive.mode;
|
|
5905
|
-
var vertexCount;
|
|
5906
|
-
var accessors = gltf.accessors;
|
|
5907
|
-
var accessor = accessors[attributes["POSITION"]];
|
|
5908
|
-
var positionBuffer = getVertexBufferData("POSITION");
|
|
5909
|
-
var positions = GLTFUtils.floatBufferToVector3Array(positionBuffer);
|
|
5910
|
-
mesh.setPositions(positions);
|
|
5911
|
-
var bounds = mesh.bounds;
|
|
5912
|
-
vertexCount = accessor.count;
|
|
5913
|
-
if (accessor.min && accessor.max) {
|
|
5914
|
-
bounds.min.copyFromArray(accessor.min);
|
|
5915
|
-
bounds.max.copyFromArray(accessor.max);
|
|
5916
|
-
} else {
|
|
5917
|
-
var position = KHR_draco_mesh_compression._tempVector3;
|
|
5918
|
-
var min = bounds.min, max = bounds.max;
|
|
5919
|
-
min.set(Number.MAX_VALUE, Number.MAX_VALUE, Number.MAX_VALUE);
|
|
5920
|
-
max.set(-Number.MAX_VALUE, -Number.MAX_VALUE, -Number.MAX_VALUE);
|
|
5921
|
-
var stride = positionBuffer.length / vertexCount;
|
|
5922
|
-
for(var j = 0; j < vertexCount; j++){
|
|
5923
|
-
var offset = j * stride;
|
|
5924
|
-
position.copyFromArray(positionBuffer, offset);
|
|
5925
|
-
miniprogram$1.Vector3.min(min, position, min);
|
|
5926
|
-
miniprogram$1.Vector3.max(max, position, max);
|
|
5927
|
-
}
|
|
5928
|
-
}
|
|
5929
|
-
for(var attributeSemantic in attributes){
|
|
5930
|
-
if (attributeSemantic === "POSITION") {
|
|
5931
|
-
continue;
|
|
5932
|
-
}
|
|
5933
|
-
var bufferData = getVertexBufferData(attributeSemantic);
|
|
5934
|
-
switch(attributeSemantic){
|
|
5935
|
-
case "NORMAL":
|
|
5936
|
-
var normals = GLTFUtils.floatBufferToVector3Array(bufferData);
|
|
5937
|
-
mesh.setNormals(normals);
|
|
5938
|
-
break;
|
|
5939
|
-
case "TEXCOORD_0":
|
|
5940
|
-
var texturecoords = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5941
|
-
mesh.setUVs(texturecoords, 0);
|
|
5942
|
-
break;
|
|
5943
|
-
case "TEXCOORD_1":
|
|
5944
|
-
var texturecoords1 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5945
|
-
mesh.setUVs(texturecoords1, 1);
|
|
5946
|
-
break;
|
|
5947
|
-
case "TEXCOORD_2":
|
|
5948
|
-
var texturecoords2 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5949
|
-
mesh.setUVs(texturecoords2, 2);
|
|
5950
|
-
break;
|
|
5951
|
-
case "TEXCOORD_3":
|
|
5952
|
-
var texturecoords3 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5953
|
-
mesh.setUVs(texturecoords3, 3);
|
|
5954
|
-
break;
|
|
5955
|
-
case "TEXCOORD_4":
|
|
5956
|
-
var texturecoords4 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5957
|
-
mesh.setUVs(texturecoords4, 4);
|
|
5958
|
-
break;
|
|
5959
|
-
case "TEXCOORD_5":
|
|
5960
|
-
var texturecoords5 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5961
|
-
mesh.setUVs(texturecoords5, 5);
|
|
5962
|
-
break;
|
|
5963
|
-
case "TEXCOORD_6":
|
|
5964
|
-
var texturecoords6 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5965
|
-
mesh.setUVs(texturecoords6, 6);
|
|
5966
|
-
break;
|
|
5967
|
-
case "TEXCOORD_7":
|
|
5968
|
-
var texturecoords7 = GLTFUtils.floatBufferToVector2Array(bufferData);
|
|
5969
|
-
mesh.setUVs(texturecoords7, 7);
|
|
5970
|
-
break;
|
|
5971
|
-
case "COLOR_0":
|
|
5972
|
-
var colors = GLTFUtils.floatBufferToColorArray(bufferData, accessors[attributes["COLOR_0"]].type === AccessorType.VEC3);
|
|
5973
|
-
mesh.setColors(colors);
|
|
5974
|
-
break;
|
|
5975
|
-
case "TANGENT":
|
|
5976
|
-
var tangents = GLTFUtils.floatBufferToVector4Array(bufferData);
|
|
5977
|
-
mesh.setTangents(tangents);
|
|
5978
|
-
break;
|
|
5979
|
-
case "JOINTS_0":
|
|
5980
|
-
var joints = GLTFUtils.floatBufferToVector4Array(bufferData);
|
|
5981
|
-
mesh.setBoneIndices(joints);
|
|
5982
|
-
break;
|
|
5983
|
-
case "WEIGHTS_0":
|
|
5984
|
-
var weights = GLTFUtils.floatBufferToVector4Array(bufferData);
|
|
5985
|
-
mesh.setBoneWeights(weights);
|
|
5986
|
-
break;
|
|
5987
|
-
}
|
|
5988
|
-
}
|
|
5989
|
-
// Indices
|
|
5990
|
-
if (indices !== undefined) {
|
|
5991
|
-
var indexAccessor = gltf.accessors[indices];
|
|
5992
|
-
var indexData = getIndexBufferData();
|
|
5993
|
-
mesh.setIndices(indexData);
|
|
5994
|
-
mesh.addSubMesh(0, indexAccessor.count, mode);
|
|
5995
|
-
} else {
|
|
5996
|
-
mesh.addSubMesh(0, vertexCount, mode);
|
|
5997
|
-
}
|
|
5998
|
-
// BlendShapes
|
|
5999
|
-
targets && exports.GLTFMeshParser._createBlendShape(mesh, null, gltfMesh, accessors, targets, getBlendShapeData);
|
|
6000
|
-
mesh.uploadData(!keepMeshData);
|
|
6001
|
-
return Promise.resolve(mesh);
|
|
6002
|
-
};
|
|
6003
|
-
return KHR_draco_mesh_compression1;
|
|
6004
|
-
}(GLTFExtensionParser), function() {
|
|
6005
|
-
_KHR_draco_mesh_compression._tempVector3 = new miniprogram$1.Vector3();
|
|
6006
|
-
}(), _KHR_draco_mesh_compression);
|
|
6007
|
-
KHR_draco_mesh_compression = __decorate([
|
|
6008
|
-
registerGLTFExtension("KHR_draco_mesh_compression", exports.GLTFExtensionMode.CreateAndParse)
|
|
6009
|
-
], KHR_draco_mesh_compression);
|
|
6010
|
-
|
|
6011
6382
|
var KHR_lights_punctual = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
6012
6383
|
_inherits(KHR_lights_punctual, GLTFExtensionParser1);
|
|
6013
6384
|
function KHR_lights_punctual() {
|
|
@@ -6340,6 +6711,23 @@ GALACEAN_animation_event = __decorate([
|
|
|
6340
6711
|
registerGLTFExtension("GALACEAN_animation_event", exports.GLTFExtensionMode.AdditiveParse)
|
|
6341
6712
|
], GALACEAN_animation_event);
|
|
6342
6713
|
|
|
6714
|
+
var EXT_meshopt_compression = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
6715
|
+
_inherits(EXT_meshopt_compression, GLTFExtensionParser1);
|
|
6716
|
+
function EXT_meshopt_compression() {
|
|
6717
|
+
return GLTFExtensionParser1.apply(this, arguments);
|
|
6718
|
+
}
|
|
6719
|
+
var _proto = EXT_meshopt_compression.prototype;
|
|
6720
|
+
_proto.createAndParse = function createAndParse(context, schema) {
|
|
6721
|
+
return context.get(exports.GLTFParserType.Buffer, schema.buffer).then(function(arrayBuffer) {
|
|
6722
|
+
return MeshoptDecoder.decodeGltfBuffer(schema.count, schema.byteStride, new Uint8Array(arrayBuffer, schema.byteOffset, schema.byteLength), schema.mode, schema.filter);
|
|
6723
|
+
});
|
|
6724
|
+
};
|
|
6725
|
+
return EXT_meshopt_compression;
|
|
6726
|
+
}(GLTFExtensionParser);
|
|
6727
|
+
EXT_meshopt_compression = __decorate([
|
|
6728
|
+
registerGLTFExtension("EXT_meshopt_compression", exports.GLTFExtensionMode.CreateAndParse)
|
|
6729
|
+
], EXT_meshopt_compression);
|
|
6730
|
+
|
|
6343
6731
|
var KHR_materials_anisotropy = /*#__PURE__*/ function(GLTFExtensionParser1) {
|
|
6344
6732
|
_inherits(KHR_materials_anisotropy, GLTFExtensionParser1);
|
|
6345
6733
|
function KHR_materials_anisotropy() {
|
|
@@ -6363,12 +6751,13 @@ KHR_materials_anisotropy = __decorate([
|
|
|
6363
6751
|
registerGLTFExtension("KHR_materials_anisotropy", exports.GLTFExtensionMode.AdditiveParse)
|
|
6364
6752
|
], KHR_materials_anisotropy);
|
|
6365
6753
|
|
|
6366
|
-
exports.
|
|
6754
|
+
exports.BufferInfo = BufferInfo;
|
|
6367
6755
|
exports.GLTFExtensionParser = GLTFExtensionParser;
|
|
6368
6756
|
exports.GLTFParser = GLTFParser;
|
|
6369
6757
|
exports.GLTFParserContext = GLTFParserContext;
|
|
6370
6758
|
exports.GLTFResource = GLTFResource;
|
|
6371
6759
|
exports.GLTFUtils = GLTFUtils;
|
|
6760
|
+
exports.ParserContext = ParserContext;
|
|
6372
6761
|
exports.PrefabParser = PrefabParser;
|
|
6373
6762
|
exports.ReflectionParser = ReflectionParser;
|
|
6374
6763
|
exports.SceneParser = SceneParser;
|