@cesium/engine 22.3.0 → 23.0.0
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/Build/Workers/{chunk-EAAH543Q.js → chunk-2GL2EUEE.js} +11 -11
- package/Build/Workers/{chunk-EUDHHS7K.js → chunk-2WI4HGJU.js} +6 -6
- package/Build/Workers/{chunk-LWZHJWYK.js → chunk-36LBFITA.js} +665 -366
- package/Build/Workers/{chunk-7U5YNLF3.js → chunk-3B65YFXC.js} +1 -1
- package/Build/Workers/{chunk-D63Z7KKL.js → chunk-4LGFX2P5.js} +11 -11
- package/Build/Workers/{chunk-D6OKR3BQ.js → chunk-4UNQX2MP.js} +2 -2
- package/Build/Workers/{chunk-BO22JHBX.js → chunk-52K3GJKG.js} +3 -3
- package/Build/Workers/{chunk-XLIJV3YZ.js → chunk-56OHFSLH.js} +10 -10
- package/Build/Workers/{chunk-AWELU5C6.js → chunk-5A7YSAXT.js} +14 -14
- package/Build/Workers/{chunk-T5MJDW43.js → chunk-5JP5FG7U.js} +7 -7
- package/Build/Workers/{chunk-NVL7JXAQ.js → chunk-5R7SBUTW.js} +10 -10
- package/Build/Workers/chunk-5VKZVPO5.js +1829 -0
- package/Build/Workers/{chunk-YHPBT4I5.js → chunk-6FVFM2KB.js} +5 -5
- package/Build/Workers/{chunk-WHLGBMBC.js → chunk-6SLGTBB2.js} +5 -5
- package/Build/Workers/{chunk-VIQIKMTZ.js → chunk-7KRN6JPQ.js} +14 -14
- package/Build/Workers/{chunk-TCOUGKXF.js → chunk-AA33B6PU.js} +4 -4
- package/Build/Workers/{chunk-S2KVL7OJ.js → chunk-AP6XWET5.js} +8 -8
- package/Build/Workers/{chunk-5PJB7ASO.js → chunk-APDKMX7W.js} +6 -6
- package/Build/Workers/{chunk-IXL46IYV.js → chunk-ARCFIOKA.js} +12 -12
- package/Build/Workers/{chunk-KIJR26N3.js → chunk-BNBD2YZK.js} +16 -16
- package/Build/Workers/{chunk-4R6FGUFP.js → chunk-DT5SJBKA.js} +29 -15
- package/Build/Workers/{chunk-FUDC3KOT.js → chunk-ESD4IEOU.js} +5 -5
- package/Build/Workers/{chunk-K2PLKJJG.js → chunk-FSDVXW7M.js} +5 -5
- package/Build/Workers/{chunk-4BBANFU6.js → chunk-G3YT7M7A.js} +1 -1
- package/Build/Workers/{chunk-K4PGSAR5.js → chunk-GN5NEUDT.js} +8 -8
- package/Build/Workers/{chunk-OOYICVOK.js → chunk-HYLEKKO5.js} +1 -1
- package/Build/Workers/{chunk-FDOLXORR.js → chunk-HYTFXWMY.js} +7 -7
- package/Build/Workers/{chunk-7SLNBIZS.js → chunk-IFA7VHHP.js} +560 -277
- package/Build/Workers/{chunk-N66PIK46.js → chunk-IYVDOB5V.js} +4 -4
- package/Build/Workers/{chunk-ZWWN2CQH.js → chunk-JUGY5AZN.js} +4 -4
- package/Build/Workers/{chunk-4O2ARYS7.js → chunk-KPYU6YZG.js} +1 -1
- package/Build/Workers/{chunk-TY5JXMVO.js → chunk-L7RDJ4V7.js} +1 -1
- package/Build/Workers/{chunk-L4OFWHNI.js → chunk-LDQWNMEC.js} +1 -1
- package/Build/Workers/{chunk-N6XBJBI7.js → chunk-MQJG522T.js} +6 -6
- package/Build/Workers/{chunk-FS42VX2H.js → chunk-MT5M7RLZ.js} +2 -2
- package/Build/Workers/{chunk-7ATKQRBM.js → chunk-N4AWE7TZ.js} +10 -10
- package/Build/Workers/{chunk-EOSX23OS.js → chunk-NAYRNPEP.js} +4 -4
- package/Build/Workers/{chunk-NO3LMU7T.js → chunk-NNHU33JK.js} +7 -7
- package/Build/Workers/{chunk-HWGP4GVC.js → chunk-NQCAZU7S.js} +13 -13
- package/Build/Workers/{chunk-6GBGEUWR.js → chunk-NUYLNQKV.js} +2 -2
- package/Build/Workers/{chunk-E4YDCSQK.js → chunk-OC6X22PG.js} +9 -9
- package/Build/Workers/{chunk-ZGGVEGTA.js → chunk-OHBM4YG4.js} +12 -12
- package/Build/Workers/{chunk-6WDMPXQ7.js → chunk-OMXN7YF4.js} +12 -12
- package/Build/Workers/{chunk-LK7GEFGB.js → chunk-OQ3EAJNW.js} +2 -2
- package/Build/Workers/{chunk-M5DVYXJJ.js → chunk-OQBPOKPZ.js} +6 -6
- package/Build/Workers/{chunk-WUWPKBOZ.js → chunk-PQVNT5CJ.js} +6 -6
- package/Build/Workers/{chunk-W5NV72VR.js → chunk-QA24Q62E.js} +17 -17
- package/Build/Workers/{chunk-PJLRXIMS.js → chunk-QQX7S5QT.js} +17 -17
- package/Build/Workers/{chunk-D2PEV362.js → chunk-QTOHIXGF.js} +10 -10
- package/Build/Workers/{chunk-MASEF4OV.js → chunk-R7M4XNPP.js} +8 -8
- package/Build/Workers/{chunk-2MLJ46ZZ.js → chunk-SGKTBHFQ.js} +13 -13
- package/Build/Workers/{chunk-EY5HOJFQ.js → chunk-SQTRWKO2.js} +5 -5
- package/Build/Workers/{chunk-AFGP5BXS.js → chunk-T43FXHNC.js} +7 -7
- package/Build/Workers/{chunk-IHFAFGR2.js → chunk-UEEGWJJP.js} +2 -2
- package/Build/Workers/{chunk-TMGLPEZW.js → chunk-WKXDCVBO.js} +4 -4
- package/Build/Workers/{chunk-VRAAQ3FS.js → chunk-Y5AJSEEN.js} +2 -2
- package/Build/Workers/{chunk-Y5MRBKQN.js → chunk-ZIW5FCIW.js} +18 -18
- package/Build/Workers/combineGeometry.js +24 -24
- package/Build/Workers/createBoxGeometry.js +18 -18
- package/Build/Workers/createBoxOutlineGeometry.js +16 -16
- package/Build/Workers/createCircleGeometry.js +26 -26
- package/Build/Workers/createCircleOutlineGeometry.js +19 -19
- package/Build/Workers/createCoplanarPolygonGeometry.js +33 -33
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +31 -31
- package/Build/Workers/createCorridorGeometry.js +29 -29
- package/Build/Workers/createCorridorOutlineGeometry.js +28 -28
- package/Build/Workers/createCylinderGeometry.js +20 -20
- package/Build/Workers/createCylinderOutlineGeometry.js +18 -18
- package/Build/Workers/createEllipseGeometry.js +26 -26
- package/Build/Workers/createEllipseOutlineGeometry.js +19 -19
- package/Build/Workers/createEllipsoidGeometry.js +19 -19
- package/Build/Workers/createEllipsoidOutlineGeometry.js +18 -18
- package/Build/Workers/createFrustumGeometry.js +18 -18
- package/Build/Workers/createFrustumOutlineGeometry.js +18 -18
- package/Build/Workers/createGeometry.js +24 -24
- package/Build/Workers/createGroundPolylineGeometry.js +22 -22
- package/Build/Workers/createPlaneGeometry.js +16 -16
- package/Build/Workers/createPlaneOutlineGeometry.js +15 -15
- package/Build/Workers/createPolygonGeometry.js +32 -32
- package/Build/Workers/createPolygonOutlineGeometry.js +30 -30
- package/Build/Workers/createPolylineGeometry.js +25 -25
- package/Build/Workers/createPolylineVolumeGeometry.js +31 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +27 -27
- package/Build/Workers/createRectangleGeometry.js +27 -27
- package/Build/Workers/createRectangleOutlineGeometry.js +20 -20
- package/Build/Workers/createSimplePolylineGeometry.js +23 -23
- package/Build/Workers/createSphereGeometry.js +19 -19
- package/Build/Workers/createSphereOutlineGeometry.js +18 -18
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +14 -14
- package/Build/Workers/createVectorTileGeometries.js +24 -24
- package/Build/Workers/createVectorTilePoints.js +13 -13
- package/Build/Workers/createVectorTilePolygons.js +22 -22
- package/Build/Workers/createVectorTilePolylines.js +14 -14
- package/Build/Workers/createVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -22
- package/Build/Workers/createVerticesFromHeightmap.js +22 -22
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +20 -20
- package/Build/Workers/createWallGeometry.js +24 -24
- package/Build/Workers/createWallOutlineGeometry.js +23 -23
- package/Build/Workers/decodeDraco.js +10 -10
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/gaussianSplatSorter.js +4 -4
- package/Build/Workers/gaussianSplatTextureGenerator.js +4 -4
- package/Build/Workers/incrementallyBuildTerrainPicker.js +10 -10
- package/Build/Workers/transcodeKTX2.js +6 -6
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +22 -22
- package/Build/Workers/upsampleVerticesFromCesium3DTilesTerrain.js +25 -25
- package/Source/Core/AttributeCompression.js +53 -6
- package/Source/Core/Cartesian2.js +689 -684
- package/Source/Core/Cartesian3.js +1044 -1043
- package/Source/Core/Cartesian4.js +816 -813
- package/Source/Core/GoogleMaps.js +23 -2
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/OpenCageGeocoderService.js +2 -3
- package/Source/Core/globalTypes.js +16 -0
- package/Source/Renderer/ShaderDestination.js +54 -13
- package/Source/Scene/ArcGisMapService.js +1 -1
- package/Source/Scene/Billboard.js +7 -4
- package/Source/Scene/BillboardCollection.js +64 -25
- package/Source/Scene/BufferLoader.js +65 -74
- package/Source/Scene/CubeMapPanorama.js +351 -0
- package/Source/Scene/DerivedCommand.js +8 -31
- package/Source/Scene/DracoLoader.js +79 -78
- package/Source/Scene/EquirectangularPanorama.js +264 -0
- package/Source/Scene/FrameState.js +7 -0
- package/Source/Scene/GaussianSplatPrimitive.js +906 -167
- package/Source/Scene/GlobeSurfaceShaderSet.js +36 -32
- package/Source/Scene/GltfBufferViewLoader.js +109 -118
- package/Source/Scene/GltfDracoLoader.js +167 -176
- package/Source/Scene/GltfImageLoader.js +91 -101
- package/Source/Scene/GltfIndexBufferLoader.js +228 -241
- package/Source/Scene/GltfJsonLoader.js +90 -99
- package/Source/Scene/GltfLoader.js +313 -324
- package/Source/Scene/GltfSpzLoader.js +127 -134
- package/Source/Scene/GltfStructuralMetadataLoader.js +181 -186
- package/Source/Scene/GltfTextureLoader.js +217 -231
- package/Source/Scene/GltfVertexBufferLoader.js +267 -276
- package/Source/Scene/GoogleStreetViewCubeMapPanoramaProvider.js +341 -0
- package/Source/Scene/Label.js +6 -4
- package/Source/Scene/LabelCollection.js +59 -1
- package/Source/Scene/MetadataClassProperty.js +212 -7
- package/Source/Scene/MetadataComponentType.js +162 -127
- package/Source/Scene/MetadataSchemaLoader.js +60 -67
- package/Source/Scene/MetadataTable.js +14 -0
- package/Source/Scene/MetadataTableProperty.js +14 -0
- package/Source/Scene/Model/B3dmLoader.js +216 -224
- package/Source/Scene/Model/CustomShader.js +6 -1
- package/Source/Scene/Model/CustomShaderPipelineStage.js +122 -7
- package/Source/Scene/Model/GeoJsonLoader.js +53 -61
- package/Source/Scene/Model/GeometryPipelineStage.js +17 -3
- package/Source/Scene/Model/I3dmLoader.js +232 -240
- package/Source/Scene/Model/MaterialPipelineStage.js +1 -1
- package/Source/Scene/Model/MetadataPipelineStage.js +438 -22
- package/Source/Scene/Model/PntsLoader.js +78 -89
- package/Source/Scene/Panorama.js +53 -0
- package/Source/Scene/PanoramaProvider.js +43 -0
- package/Source/Scene/PointPrimitiveCollection.js +14 -22
- package/Source/Scene/PropertyTable.js +43 -0
- package/Source/Scene/PropertyTexture.js +1 -1
- package/Source/Scene/PropertyTextureProperty.js +0 -97
- package/Source/Scene/ResourceLoader.js +84 -92
- package/Source/Scene/Scene.js +12 -0
- package/Source/Scene/SkyBox.js +29 -164
- package/Source/Scene/StructuralMetadata.js +18 -3
- package/Source/Scene/parseStructuralMetadata.js +244 -0
- package/Source/Shaders/BillboardCollectionFS.glsl +66 -40
- package/Source/Shaders/BillboardCollectionFS.js +67 -40
- package/Source/Shaders/BillboardCollectionVS.glsl +22 -31
- package/Source/Shaders/BillboardCollectionVS.js +22 -31
- package/Source/Shaders/Builtin/CzmBuiltins.js +4 -0
- package/Source/Shaders/Builtin/Functions/decodeRGB8.glsl +22 -0
- package/Source/Shaders/Builtin/Functions/decodeRGB8.js +24 -0
- package/Source/Shaders/Builtin/Functions/unpackTexture.glsl +35 -0
- package/Source/Shaders/Builtin/Functions/unpackTexture.js +37 -0
- package/Source/Shaders/CubeMapPanoramaVS.glsl +11 -0
- package/Source/Shaders/CubeMapPanoramaVS.js +13 -0
- package/Source/Shaders/Model/MetadataStageFS.glsl +2 -1
- package/Source/Shaders/Model/MetadataStageFS.js +2 -1
- package/Source/Shaders/Model/MetadataStageVS.glsl +2 -1
- package/Source/Shaders/Model/MetadataStageVS.js +2 -1
- package/Source/Shaders/Model/ModelFS.glsl +2 -2
- package/Source/Shaders/Model/ModelFS.js +2 -2
- package/Source/Shaders/Model/ModelVS.glsl +2 -2
- package/Source/Shaders/Model/ModelVS.js +2 -2
- package/Source/Shaders/PointPrimitiveCollectionVS.glsl +8 -39
- package/Source/Shaders/PointPrimitiveCollectionVS.js +8 -39
- package/index.d.ts +564 -189
- package/index.js +127 -119
- package/package.json +1 -1
- package/Build/Workers/chunk-LYBNPUEI.js +0 -1443
|
@@ -10,61 +10,57 @@ import { loadSpz } from "@spz-loader/core";
|
|
|
10
10
|
* <p>
|
|
11
11
|
* Implements the {@link ResourceLoader} interface.
|
|
12
12
|
* </p>
|
|
13
|
-
* @alias GltfSpzLoader
|
|
14
|
-
* @constructor
|
|
15
|
-
* @augments ResourceLoader
|
|
16
|
-
* @param {object} options Object with the following properties:
|
|
17
|
-
* @param {ResourceCache} options.resourceCache The {@link ResourceCache} (to avoid circular dependencies).
|
|
18
|
-
* @param {object} options.gltf The glTF JSON.
|
|
19
|
-
* @param {object} options.primitive The primitive containing the SPZ extension.
|
|
20
|
-
* @param {object} options.spz The SPZ extension object.
|
|
21
|
-
* @param {Resource} options.gltfResource The {@link Resource} containing the glTF.
|
|
22
|
-
* @param {Resource} options.baseResource The {@link Resource} that paths in the glTF JSON are relative to.
|
|
23
|
-
* @param {string} [options.cacheKey] The cache key of the resource.
|
|
24
13
|
*
|
|
25
14
|
* @private
|
|
26
15
|
*/
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
16
|
+
class GltfSpzLoader extends ResourceLoader {
|
|
17
|
+
/**
|
|
18
|
+
* @param {object} options Object with the following properties:
|
|
19
|
+
* @param {ResourceCache} options.resourceCache The {@link ResourceCache} (to avoid circular dependencies).
|
|
20
|
+
* @param {object} options.gltf The glTF JSON.
|
|
21
|
+
* @param {object} options.primitive The primitive containing the SPZ extension.
|
|
22
|
+
* @param {object} options.spz The SPZ extension object.
|
|
23
|
+
* @param {Resource} options.gltfResource The {@link Resource} containing the glTF.
|
|
24
|
+
* @param {Resource} options.baseResource The {@link Resource} that paths in the glTF JSON are relative to.
|
|
25
|
+
* @param {string} [options.cacheKey] The cache key of the resource.
|
|
26
|
+
*/
|
|
27
|
+
constructor(options) {
|
|
28
|
+
super();
|
|
29
|
+
|
|
30
|
+
options = options ?? Frozen.EMPTY_OBJECT;
|
|
31
|
+
const resourceCache = options.resourceCache;
|
|
32
|
+
const gltf = options.gltf;
|
|
33
|
+
const primitive = options.primitive;
|
|
34
|
+
const spz = options.spz;
|
|
35
|
+
const gltfResource = options.gltfResource;
|
|
36
|
+
const baseResource = options.baseResource;
|
|
37
|
+
const cacheKey = options.cacheKey;
|
|
38
|
+
|
|
39
|
+
//>>includeStart('debug', pragmas.debug);
|
|
40
|
+
Check.typeOf.func("options.resourceCache", resourceCache);
|
|
41
|
+
Check.typeOf.object("options.gltf", gltf);
|
|
42
|
+
Check.typeOf.object("options.primitive", primitive);
|
|
43
|
+
Check.typeOf.object("options.spz", spz);
|
|
44
|
+
Check.typeOf.object("options.gltfResource", gltfResource);
|
|
45
|
+
Check.typeOf.object("options.baseResource", baseResource);
|
|
46
|
+
//>>includeEnd('debug');
|
|
47
|
+
|
|
48
|
+
this._resourceCache = resourceCache;
|
|
49
|
+
this._gltfResource = gltfResource;
|
|
50
|
+
this._baseResource = baseResource;
|
|
51
|
+
this._gltf = gltf;
|
|
52
|
+
this._primitive = primitive;
|
|
53
|
+
this._spz = spz;
|
|
54
|
+
this._cacheKey = cacheKey;
|
|
55
|
+
this._bufferViewLoader = undefined;
|
|
56
|
+
this._bufferViewTypedArray = undefined;
|
|
57
|
+
this._decodePromise = undefined;
|
|
58
|
+
this._decodedData = undefined;
|
|
59
|
+
this._state = ResourceLoaderState.UNLOADED;
|
|
60
|
+
this._promise = undefined;
|
|
61
|
+
this._spzError = undefined;
|
|
62
|
+
}
|
|
66
63
|
|
|
67
|
-
Object.defineProperties(GltfSpzLoader.prototype, {
|
|
68
64
|
/**
|
|
69
65
|
* The cache key of the resource.
|
|
70
66
|
* @memberof GltfSpzLoader.prototype
|
|
@@ -72,11 +68,10 @@ Object.defineProperties(GltfSpzLoader.prototype, {
|
|
|
72
68
|
* @readonly
|
|
73
69
|
* @private
|
|
74
70
|
*/
|
|
75
|
-
cacheKey
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
},
|
|
71
|
+
get cacheKey() {
|
|
72
|
+
return this._cacheKey;
|
|
73
|
+
}
|
|
74
|
+
|
|
80
75
|
/**
|
|
81
76
|
* The decoded SPZ data.
|
|
82
77
|
* @memberof GltfSpzLoader.prototype
|
|
@@ -84,12 +79,82 @@ Object.defineProperties(GltfSpzLoader.prototype, {
|
|
|
84
79
|
* @readonly
|
|
85
80
|
* @private
|
|
86
81
|
*/
|
|
87
|
-
decodedData
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
82
|
+
get decodedData() {
|
|
83
|
+
return this._decodedData;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Loads the SPZ resource.
|
|
88
|
+
* @returns {Promise<Resource>} A promise that resolves to the resource when the SPZ is loaded.
|
|
89
|
+
* @private
|
|
90
|
+
*/
|
|
91
|
+
async load() {
|
|
92
|
+
if (defined(this._promise)) {
|
|
93
|
+
return this._promise;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
this._state = ResourceLoaderState.LOADING;
|
|
97
|
+
this._promise = loadResources(this);
|
|
98
|
+
return this._promise;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Processes the SPZ resource.
|
|
103
|
+
* @param {FrameState} frameState The frame state.
|
|
104
|
+
* @private
|
|
105
|
+
*/
|
|
106
|
+
process(frameState) {
|
|
107
|
+
//>>includeStart('debug', pragmas.debug);
|
|
108
|
+
Check.typeOf.object("frameState", frameState);
|
|
109
|
+
//>>includeEnd('debug');
|
|
110
|
+
|
|
111
|
+
if (this._state === ResourceLoaderState.READY) {
|
|
112
|
+
return true;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
if (this._state !== ResourceLoaderState.PROCESSING) {
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
if (defined(this._spzError)) {
|
|
120
|
+
handleError(this, this._spzError);
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
if (!defined(this._bufferViewTypedArray)) {
|
|
124
|
+
return false;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
if (defined(this._decodePromise)) {
|
|
128
|
+
return false;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
const decodePromise = loadSpz(this._bufferViewTypedArray, {
|
|
132
|
+
unpackOptions: { coordinateSystem: "UNSPECIFIED" },
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
if (!defined(decodePromise)) {
|
|
136
|
+
return false;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
this._decodePromise = processDecode(this, decodePromise);
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* Unloads the SPZ resource and frees associated resources.
|
|
144
|
+
* @private
|
|
145
|
+
*/
|
|
146
|
+
unload() {
|
|
147
|
+
if (defined(this._bufferViewLoader)) {
|
|
148
|
+
this._resourceCache.unload(this._bufferViewLoader);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
this._bufferViewLoader = undefined;
|
|
152
|
+
this._bufferViewTypedArray = undefined;
|
|
153
|
+
this._decodedData = undefined;
|
|
154
|
+
this._gltf = undefined;
|
|
155
|
+
this._primitive = undefined;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
93
158
|
|
|
94
159
|
async function loadResources(loader) {
|
|
95
160
|
const resourceCache = loader._resourceCache;
|
|
@@ -119,21 +184,6 @@ async function loadResources(loader) {
|
|
|
119
184
|
}
|
|
120
185
|
}
|
|
121
186
|
|
|
122
|
-
/**
|
|
123
|
-
* Loads the SPZ resource.
|
|
124
|
-
* @returns {Promise<Resource>} A promise that resolves to the resource when the SPZ is loaded.
|
|
125
|
-
* @private
|
|
126
|
-
*/
|
|
127
|
-
GltfSpzLoader.prototype.load = async function () {
|
|
128
|
-
if (defined(this._promise)) {
|
|
129
|
-
return this._promise;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
this._state = ResourceLoaderState.LOADING;
|
|
133
|
-
this._promise = loadResources(this);
|
|
134
|
-
return this._promise;
|
|
135
|
-
};
|
|
136
|
-
|
|
137
187
|
function handleError(spzLoader, error) {
|
|
138
188
|
spzLoader.unload();
|
|
139
189
|
spzLoader._state = ResourceLoaderState.FAILED;
|
|
@@ -164,61 +214,4 @@ async function processDecode(loader, decodePromise) {
|
|
|
164
214
|
}
|
|
165
215
|
}
|
|
166
216
|
|
|
167
|
-
/**
|
|
168
|
-
* Processes the SPZ resource.
|
|
169
|
-
* @param {FrameState} frameState The frame state.
|
|
170
|
-
* @private
|
|
171
|
-
*/
|
|
172
|
-
GltfSpzLoader.prototype.process = function (frameState) {
|
|
173
|
-
//>>includeStart('debug', pragmas.debug);
|
|
174
|
-
Check.typeOf.object("frameState", frameState);
|
|
175
|
-
//>>includeEnd('debug');
|
|
176
|
-
|
|
177
|
-
if (this._state === ResourceLoaderState.READY) {
|
|
178
|
-
return true;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
if (this._state !== ResourceLoaderState.PROCESSING) {
|
|
182
|
-
return false;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
if (defined(this._spzError)) {
|
|
186
|
-
handleError(this, this._spzError);
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
if (!defined(this._bufferViewTypedArray)) {
|
|
190
|
-
return false;
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
if (defined(this._decodePromise)) {
|
|
194
|
-
return false;
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
const decodePromise = loadSpz(this._bufferViewTypedArray, {
|
|
198
|
-
unpackOptions: { coordinateSystem: "UNSPECIFIED" },
|
|
199
|
-
});
|
|
200
|
-
|
|
201
|
-
if (!defined(decodePromise)) {
|
|
202
|
-
return false;
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
this._decodePromise = processDecode(this, decodePromise);
|
|
206
|
-
};
|
|
207
|
-
|
|
208
|
-
/**
|
|
209
|
-
* Unloads the SPZ resource and frees associated resources.
|
|
210
|
-
* @private
|
|
211
|
-
*/
|
|
212
|
-
GltfSpzLoader.prototype.unload = function () {
|
|
213
|
-
if (defined(this._bufferViewLoader)) {
|
|
214
|
-
this._resourceCache.unload(this._bufferViewLoader);
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
this._bufferViewLoader = undefined;
|
|
218
|
-
this._bufferViewTypedArray = undefined;
|
|
219
|
-
this._decodedData = undefined;
|
|
220
|
-
this._gltf = undefined;
|
|
221
|
-
this._primitive = undefined;
|
|
222
|
-
};
|
|
223
|
-
|
|
224
217
|
export default GltfSpzLoader;
|