@cesium/engine 2.0.0 → 2.2.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/{ArcType-ce2e50ab.js → ArcType-2d9abbbc.js} +4 -4
- package/Build/Workers/{AttributeCompression-b646d393.js → AttributeCompression-8a5a065e.js} +24 -24
- package/Build/Workers/{AxisAlignedBoundingBox-47525601.js → AxisAlignedBoundingBox-379015ef.js} +3 -3
- package/Build/Workers/{BoundingRectangle-93b263ac.js → BoundingRectangle-57f2b24f.js} +18 -18
- package/Build/Workers/{BoxGeometry-8c4b4125.js → BoxGeometry-ecabfc78.js} +9 -9
- package/Build/Workers/{Check-666ab1a0.js → Check-6ede7e26.js} +22 -22
- package/Build/Workers/{Color-52c60ed7.js → Color-14d1a36d.js} +59 -59
- package/Build/Workers/{ComponentDatatype-f7b11d02.js → ComponentDatatype-cf1fa08e.js} +16 -16
- package/Build/Workers/{CoplanarPolygonGeometryLibrary-33c4c1f8.js → CoplanarPolygonGeometryLibrary-048c3c14.js} +1 -1
- package/Build/Workers/{CorridorGeometryLibrary-5039cd8e.js → CorridorGeometryLibrary-520c8619.js} +1 -1
- package/Build/Workers/{CylinderGeometry-3ac44974.js → CylinderGeometry-119068b8.js} +12 -12
- package/Build/Workers/{CylinderGeometryLibrary-372c07d8.js → CylinderGeometryLibrary-135b0858.js} +1 -1
- package/Build/Workers/{EllipseGeometry-a9c9b3be.js → EllipseGeometry-2dfc3523.js} +20 -20
- package/Build/Workers/{EllipseGeometryLibrary-855d4681.js → EllipseGeometryLibrary-0a1e0170.js} +1 -1
- package/Build/Workers/{EllipseOutlineGeometry-017a5929.js → EllipseOutlineGeometry-c5251669.js} +15 -15
- package/Build/Workers/{EllipsoidGeodesic-98c62a56.js → EllipsoidGeodesic-dcff5cbd.js} +6 -6
- package/Build/Workers/{EllipsoidGeometry-826e7bce.js → EllipsoidGeometry-d10a5221.js} +14 -14
- package/Build/Workers/{EllipsoidOutlineGeometry-784dcdb5.js → EllipsoidOutlineGeometry-7039a0ae.js} +15 -15
- package/Build/Workers/{EllipsoidRhumbLine-19756602.js → EllipsoidRhumbLine-b672d507.js} +9 -9
- package/Build/Workers/{EllipsoidTangentPlane-ed9443a1.js → EllipsoidTangentPlane-857186be.js} +1 -1
- package/Build/Workers/{EncodedCartesian3-81f70735.js → EncodedCartesian3-e8bbca36.js} +6 -6
- package/Build/Workers/{FrustumGeometry-9f1ee4d8.js → FrustumGeometry-400fa1b7.js} +109 -109
- package/Build/Workers/{GeometryAttribute-334718f8.js → GeometryAttribute-7a2de5c6.js} +20 -20
- package/Build/Workers/{GeometryAttributes-f06a2792.js → GeometryAttributes-ad136444.js} +1 -1
- package/Build/Workers/{GeometryInstance-451dc1cd.js → GeometryInstance-3fb607b7.js} +6 -6
- package/Build/Workers/{GeometryPipeline-8fb0db69.js → GeometryPipeline-916636fa.js} +22 -22
- package/Build/Workers/{IndexDatatype-a55ceaa1.js → IndexDatatype-b8f3e09d.js} +13 -13
- package/Build/Workers/{IntersectionTests-27d49265.js → IntersectionTests-b4d02d4d.js} +37 -37
- package/Build/Workers/{Math-2dbd6b93.js → Math-dad82b4d.js} +137 -137
- package/Build/Workers/{Matrix2-13178034.js → Matrix2-1e403d0e.js} +256 -256
- package/Build/Workers/{Matrix3-315394f6.js → Matrix3-fa806b97.js} +150 -150
- package/Build/Workers/{OrientedBoundingBox-79ee7cbb.js → OrientedBoundingBox-96fe1752.js} +19 -17
- package/Build/Workers/{Plane-900aa728.js → Plane-c27e1ac6.js} +5 -5
- package/Build/Workers/{PolygonGeometryLibrary-6b5a29e9.js → PolygonGeometryLibrary-931f1ec6.js} +6 -6
- package/Build/Workers/{PolygonPipeline-21668b3f.js → PolygonPipeline-32fc92cc.js} +14 -14
- package/Build/Workers/{PolylinePipeline-5e2e1b21.js → PolylinePipeline-6d5c63e5.js} +16 -16
- package/Build/Workers/{PolylineVolumeGeometryLibrary-97f0b94e.js → PolylineVolumeGeometryLibrary-f068c1fb.js} +7 -7
- package/Build/Workers/{PrimitivePipeline-5640850a.js → PrimitivePipeline-879f996a.js} +6 -6
- package/Build/Workers/{RectangleGeometryLibrary-d5457f7b.js → RectangleGeometryLibrary-2d6f36f3.js} +1 -1
- package/Build/Workers/{RuntimeError-06c93819.js → RuntimeError-ef395448.js} +5 -5
- package/Build/Workers/{TerrainEncoding-bfdf2021.js → TerrainEncoding-82882059.js} +30 -30
- package/Build/Workers/{Transforms-a05e5e6e.js → Transforms-9052372a.js} +531 -530
- package/Build/Workers/{VertexFormat-6b480673.js → VertexFormat-030f11ff.js} +14 -14
- package/Build/Workers/{WallGeometryLibrary-6db0ebb6.js → WallGeometryLibrary-db7a64fb.js} +1 -1
- package/Build/Workers/{WebGLConstants-a8cc3e8c.js → WebGLConstants-0b1ce7ba.js} +1 -1
- package/Build/Workers/{WebMercatorProjection-13a90d41.js → WebMercatorProjection-76a3fcc0.js} +6 -6
- package/Build/Workers/{arrayRemoveDuplicates-c2038105.js → arrayRemoveDuplicates-fac118a8.js} +5 -5
- package/Build/Workers/cesiumWorkerBootstrapper.js +5 -5
- package/Build/Workers/{combine-ca22a614.js → combine-d9581036.js} +5 -5
- package/Build/Workers/combineGeometry.js +1 -1
- package/Build/Workers/createBoxGeometry.js +1 -1
- package/Build/Workers/createBoxOutlineGeometry.js +9 -9
- package/Build/Workers/createCircleGeometry.js +13 -13
- package/Build/Workers/createCircleOutlineGeometry.js +13 -13
- package/Build/Workers/createCoplanarPolygonGeometry.js +11 -11
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +9 -9
- package/Build/Workers/createCorridorGeometry.js +14 -14
- package/Build/Workers/createCorridorOutlineGeometry.js +12 -12
- package/Build/Workers/createCylinderGeometry.js +1 -1
- package/Build/Workers/createCylinderOutlineGeometry.js +13 -13
- package/Build/Workers/createEllipseGeometry.js +1 -1
- package/Build/Workers/createEllipseOutlineGeometry.js +1 -1
- package/Build/Workers/createEllipsoidGeometry.js +1 -1
- package/Build/Workers/createEllipsoidOutlineGeometry.js +1 -1
- package/Build/Workers/createFrustumGeometry.js +1 -1
- package/Build/Workers/createFrustumOutlineGeometry.js +8 -8
- package/Build/Workers/createGeometry.js +1 -1
- package/Build/Workers/createGroundPolylineGeometry.js +33 -33
- package/Build/Workers/createPlaneGeometry.js +8 -8
- package/Build/Workers/createPlaneOutlineGeometry.js +6 -6
- package/Build/Workers/createPolygonGeometry.js +25 -25
- package/Build/Workers/createPolygonOutlineGeometry.js +17 -17
- package/Build/Workers/createPolylineGeometry.js +11 -11
- package/Build/Workers/createPolylineVolumeGeometry.js +9 -9
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +9 -9
- package/Build/Workers/createRectangleGeometry.js +16 -16
- package/Build/Workers/createRectangleOutlineGeometry.js +12 -12
- package/Build/Workers/createSimplePolylineGeometry.js +10 -10
- package/Build/Workers/createSphereGeometry.js +11 -11
- package/Build/Workers/createSphereOutlineGeometry.js +12 -12
- package/Build/Workers/createTaskProcessorWorker.js +2 -2
- package/Build/Workers/createVectorTileClampedPolylines.js +1 -1
- package/Build/Workers/createVectorTileGeometries.js +8 -8
- package/Build/Workers/createVectorTilePoints.js +1 -1
- package/Build/Workers/createVectorTilePolygons.js +1 -1
- package/Build/Workers/createVectorTilePolylines.js +1 -1
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
- package/Build/Workers/createVerticesFromHeightmap.js +23 -21
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +33 -38
- package/Build/Workers/createWallGeometry.js +14 -14
- package/Build/Workers/createWallOutlineGeometry.js +14 -14
- package/Build/Workers/decodeDraco.js +1 -1
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +15 -15
- package/Build/Workers/decodeI3S.js +1 -1
- package/Build/Workers/{defaultValue-0a909f67.js → defaultValue-fe22d8c0.js} +2 -2
- package/Build/Workers/package.js +1 -1
- package/Build/Workers/transcodeKTX2.js +26 -26
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +24 -24
- package/Source/Core/ApproximateTerrainHeights.js +3 -3
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +308 -208
- package/Source/Core/ArcType.js +4 -4
- package/Source/Core/ArticulationStageType.js +1 -1
- package/Source/Core/AssociativeArray.js +7 -7
- package/Source/Core/AttributeCompression.js +12 -12
- package/Source/Core/AxisAlignedBoundingBox.js +2 -2
- package/Source/Core/BingMapsGeocoderService.js +6 -6
- package/Source/Core/BoundingRectangle.js +17 -17
- package/Source/Core/BoundingSphere.js +25 -25
- package/Source/Core/BoxGeometry.js +8 -8
- package/Source/Core/BoxOutlineGeometry.js +8 -8
- package/Source/Core/Cartesian2.js +38 -38
- package/Source/Core/Cartesian3.js +50 -50
- package/Source/Core/Cartesian4.js +44 -44
- package/Source/Core/Cartographic.js +19 -19
- package/Source/Core/CartographicGeocoderService.js +1 -1
- package/Source/Core/CatmullRomSpline.js +10 -10
- package/Source/Core/CesiumTerrainProvider.js +598 -461
- package/Source/Core/Check.js +17 -17
- package/Source/Core/CircleGeometry.js +12 -12
- package/Source/Core/CircleOutlineGeometry.js +12 -12
- package/Source/Core/Clock.js +7 -7
- package/Source/Core/ClockRange.js +4 -4
- package/Source/Core/ClockStep.js +4 -4
- package/Source/Core/Color.js +58 -58
- package/Source/Core/ColorGeometryInstanceAttribute.js +7 -7
- package/Source/Core/ComponentDatatype.js +15 -15
- package/Source/Core/CompressedTextureBuffer.js +7 -7
- package/Source/Core/ConstantSpline.js +9 -9
- package/Source/Core/CoplanarPolygonGeometry.js +10 -10
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +8 -8
- package/Source/Core/CornerType.js +4 -4
- package/Source/Core/CorridorGeometry.js +13 -13
- package/Source/Core/CorridorOutlineGeometry.js +11 -11
- package/Source/Core/Credit.js +7 -7
- package/Source/Core/CubicRealPolynomial.js +10 -10
- package/Source/Core/CullingVolume.js +7 -7
- package/Source/Core/CustomHeightmapTerrainProvider.js +40 -28
- package/Source/Core/CylinderGeometry.js +11 -11
- package/Source/Core/CylinderOutlineGeometry.js +12 -12
- package/Source/Core/DefaultProxy.js +3 -3
- package/Source/Core/DeveloperError.js +4 -4
- package/Source/Core/DistanceDisplayCondition.js +12 -12
- package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +5 -5
- package/Source/Core/DoubleEndedPriorityQueue.js +5 -5
- package/Source/Core/EarthOrientationParameters.js +6 -6
- package/Source/Core/EarthOrientationParametersSample.js +10 -10
- package/Source/Core/EasingFunction.js +2 -2
- package/Source/Core/EllipseGeometry.js +19 -19
- package/Source/Core/EllipseOutlineGeometry.js +14 -14
- package/Source/Core/Ellipsoid.js +20 -20
- package/Source/Core/EllipsoidGeodesic.js +5 -5
- package/Source/Core/EllipsoidGeometry.js +13 -13
- package/Source/Core/EllipsoidOutlineGeometry.js +14 -14
- package/Source/Core/EllipsoidRhumbLine.js +8 -8
- package/Source/Core/EllipsoidTerrainProvider.js +35 -28
- package/Source/Core/EllipsoidalOccluder.js +9 -9
- package/Source/Core/EncodedCartesian3.js +5 -5
- package/Source/Core/Event.js +4 -4
- package/Source/Core/EventHelper.js +1 -1
- package/Source/Core/ExtrapolationType.js +4 -4
- package/Source/Core/FeatureDetection.js +9 -9
- package/Source/Core/FrustumGeometry.js +8 -8
- package/Source/Core/FrustumOutlineGeometry.js +7 -7
- package/Source/Core/Fullscreen.js +8 -8
- package/Source/Core/GeocodeType.js +3 -3
- package/Source/Core/GeocoderService.js +3 -3
- package/Source/Core/GeographicTilingScheme.js +16 -16
- package/Source/Core/Geometry.js +5 -5
- package/Source/Core/GeometryAttribute.js +6 -6
- package/Source/Core/GeometryInstance.js +5 -5
- package/Source/Core/GeometryInstanceAttribute.js +7 -7
- package/Source/Core/GeometryPipeline.js +11 -11
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +107 -55
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +29 -29
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +137 -100
- package/Source/Core/GoogleEarthEnterpriseTileInformation.js +14 -14
- package/Source/Core/GregorianDate.js +16 -16
- package/Source/Core/GroundPolylineGeometry.js +13 -13
- package/Source/Core/HeadingPitchRange.js +6 -6
- package/Source/Core/HeadingPitchRoll.js +18 -18
- package/Source/Core/Heap.js +7 -7
- package/Source/Core/HeightmapEncoding.js +3 -3
- package/Source/Core/HeightmapTerrainData.js +44 -44
- package/Source/Core/HeightmapTessellator.js +16 -16
- package/Source/Core/HermitePolynomialApproximation.js +17 -17
- package/Source/Core/HermiteSpline.js +17 -17
- package/Source/Core/HilbertOrder.js +7 -7
- package/Source/Core/Iau2006XysData.js +13 -13
- package/Source/Core/Iau2006XysSample.js +6 -6
- package/Source/Core/IauOrientationParameters.js +4 -4
- package/Source/Core/IndexDatatype.js +12 -12
- package/Source/Core/InterpolationAlgorithm.js +17 -17
- package/Source/Core/InterpolationType.js +1 -1
- package/Source/Core/Intersect.js +4 -4
- package/Source/Core/IntersectionTests.js +5 -5
- package/Source/Core/Intersections2D.js +23 -23
- package/Source/Core/Interval.js +4 -4
- package/Source/Core/Ion.js +3 -3
- package/Source/Core/IonGeocoderService.js +4 -4
- package/Source/Core/IonResource.js +20 -9
- package/Source/Core/JulianDate.js +27 -27
- package/Source/Core/KeyboardEventModifier.js +4 -4
- package/Source/Core/LagrangePolynomialApproximation.js +8 -8
- package/Source/Core/LeapSecond.js +2 -2
- package/Source/Core/LinearApproximation.js +8 -8
- package/Source/Core/LinearSpline.js +13 -13
- package/Source/Core/ManagedArray.js +8 -8
- package/Source/Core/Math.js +136 -136
- package/Source/Core/Matrix2.js +44 -44
- package/Source/Core/Matrix3.js +59 -59
- package/Source/Core/Matrix4.js +91 -91
- package/Source/Core/MorphWeightSpline.js +14 -14
- package/Source/Core/MortonOrder.js +21 -21
- package/Source/Core/NearFarScalar.js +16 -16
- package/Source/Core/Occluder.js +5 -5
- package/Source/Core/OffsetGeometryInstanceAttribute.js +5 -5
- package/Source/Core/OpenCageGeocoderService.js +18 -18
- package/Source/Core/OrientedBoundingBox.js +18 -16
- package/Source/Core/OrthographicFrustum.js +23 -23
- package/Source/Core/OrthographicOffCenterFrustum.js +21 -21
- package/Source/Core/Packable.js +7 -7
- package/Source/Core/PackableForInterpolation.js +11 -11
- package/Source/Core/PeliasGeocoderService.js +2 -2
- package/Source/Core/PerspectiveFrustum.js +28 -28
- package/Source/Core/PerspectiveOffCenterFrustum.js +21 -21
- package/Source/Core/PinBuilder.js +9 -9
- package/Source/Core/PixelFormat.js +23 -23
- package/Source/Core/Plane.js +4 -4
- package/Source/Core/PlaneGeometry.js +7 -7
- package/Source/Core/PlaneOutlineGeometry.js +5 -5
- package/Source/Core/PolygonGeometry.js +24 -24
- package/Source/Core/PolygonGeometryLibrary.js +4 -4
- package/Source/Core/PolygonOutlineGeometry.js +16 -16
- package/Source/Core/PolygonPipeline.js +10 -10
- package/Source/Core/PolylineGeometry.js +10 -10
- package/Source/Core/PolylinePipeline.js +15 -15
- package/Source/Core/PolylineVolumeGeometry.js +8 -8
- package/Source/Core/PolylineVolumeOutlineGeometry.js +8 -8
- package/Source/Core/PrimitiveType.js +8 -8
- package/Source/Core/Proxy.js +2 -2
- package/Source/Core/QuadraticRealPolynomial.js +8 -8
- package/Source/Core/QuantizedMeshTerrainData.js +37 -37
- package/Source/Core/QuarticRealPolynomial.js +12 -12
- package/Source/Core/Quaternion.js +42 -42
- package/Source/Core/QuaternionSpline.js +10 -10
- package/Source/Core/Queue.js +2 -2
- package/Source/Core/Ray.js +1 -1
- package/Source/Core/Rectangle.js +38 -38
- package/Source/Core/RectangleCollisionChecker.js +3 -3
- package/Source/Core/RectangleGeometry.js +15 -15
- package/Source/Core/RectangleOutlineGeometry.js +11 -11
- package/Source/Core/ReferenceFrame.js +3 -3
- package/Source/Core/Request.js +13 -13
- package/Source/Core/RequestErrorEvent.js +7 -7
- package/Source/Core/RequestScheduler.js +15 -15
- package/Source/Core/RequestState.js +7 -7
- package/Source/Core/RequestType.js +5 -5
- package/Source/Core/Resource.js +225 -225
- package/Source/Core/RuntimeError.js +4 -4
- package/Source/Core/S2Cell.js +15 -15
- package/Source/Core/ScreenSpaceEventHandler.js +7 -7
- package/Source/Core/ScreenSpaceEventType.js +16 -16
- package/Source/Core/ShowGeometryInstanceAttribute.js +4 -4
- package/Source/Core/SimplePolylineGeometry.js +9 -9
- package/Source/Core/SphereGeometry.js +10 -10
- package/Source/Core/SphereOutlineGeometry.js +11 -11
- package/Source/Core/Spherical.js +13 -13
- package/Source/Core/Spline.js +14 -14
- package/Source/Core/SteppedSpline.js +14 -14
- package/Source/Core/TaskProcessor.js +10 -10
- package/Source/Core/TerrainData.js +25 -25
- package/Source/Core/TerrainEncoding.js +14 -14
- package/Source/Core/TerrainExaggeration.js +3 -3
- package/Source/Core/TerrainMesh.js +18 -18
- package/Source/Core/TerrainProvider.js +32 -37
- package/Source/Core/TerrainQuantization.js +3 -3
- package/Source/Core/TileAvailability.js +16 -16
- package/Source/Core/TileProviderError.js +19 -19
- package/Source/Core/TilingScheme.js +13 -13
- package/Source/Core/TimeConstants.js +10 -10
- package/Source/Core/TimeInterval.js +23 -23
- package/Source/Core/TimeIntervalCollection.js +39 -39
- package/Source/Core/TimeStandard.js +3 -3
- package/Source/Core/Tipsify.js +10 -10
- package/Source/Core/Transforms.js +2 -2
- package/Source/Core/TranslationRotationScale.js +1 -1
- package/Source/Core/TridiagonalSystemSolver.js +3 -3
- package/Source/Core/TrustedServers.js +5 -5
- package/Source/Core/VRTheWorldTerrainProvider.js +210 -141
- package/Source/Core/VertexFormat.js +13 -13
- package/Source/Core/VideoSynchronizer.js +4 -4
- package/Source/Core/Visibility.js +4 -4
- package/Source/Core/VulkanConstants.js +1 -1
- package/Source/Core/WallGeometry.js +13 -13
- package/Source/Core/WallOutlineGeometry.js +13 -13
- package/Source/Core/WebGLConstants.js +1 -1
- package/Source/Core/WebMercatorProjection.js +5 -5
- package/Source/Core/WebMercatorTilingScheme.js +16 -16
- package/Source/Core/WindingOrder.js +3 -3
- package/Source/Core/WireframeIndexGenerator.js +3 -3
- package/Source/Core/arrayRemoveDuplicates.js +4 -4
- package/Source/Core/binarySearch.js +2 -2
- package/Source/Core/buildModuleUrl.js +8 -7
- package/Source/Core/clone.js +3 -3
- package/Source/Core/combine.js +4 -4
- package/Source/Core/createGuid.js +1 -1
- package/Source/Core/createWorldTerrain.js +23 -5
- package/Source/Core/createWorldTerrainAsync.js +48 -0
- package/Source/Core/defaultValue.js +1 -1
- package/Source/Core/defer.js +1 -1
- package/Source/Core/defined.js +1 -1
- package/Source/Core/deprecationWarning.js +2 -2
- package/Source/Core/destroyObject.js +2 -2
- package/Source/Core/formatError.js +1 -1
- package/Source/Core/getAbsoluteUri.js +3 -3
- package/Source/Core/getBaseUri.js +3 -3
- package/Source/Core/getExtensionFromUri.js +2 -2
- package/Source/Core/getFilenameFromUri.js +2 -2
- package/Source/Core/getImageFromTypedArray.js +2 -2
- package/Source/Core/getImagePixels.js +4 -3
- package/Source/Core/getJsonFromTypedArray.js +3 -3
- package/Source/Core/getStringFromTypedArray.js +3 -3
- package/Source/Core/getTimestamp.js +1 -1
- package/Source/Core/isBlobUri.js +2 -2
- package/Source/Core/isDataUri.js +2 -2
- package/Source/Core/isLeapYear.js +2 -2
- package/Source/Core/loadKTX2.js +8 -8
- package/Source/Core/mergeSort.js +1 -1
- package/Source/Core/objectToQuery.js +2 -2
- package/Source/Core/oneTimeWarning.js +2 -2
- package/Source/Core/parseResponseHeaders.js +2 -2
- package/Source/Core/pointInsideTriangle.js +1 -1
- package/Source/Core/queryToObject.js +2 -2
- package/Source/Core/sampleTerrain.js +16 -17
- package/Source/Core/sampleTerrainMostDetailed.js +67 -73
- package/Source/Core/scaleToGeodeticSurface.js +1 -1
- package/Source/Core/subdivideArray.js +1 -1
- package/Source/Core/writeTextToCanvas.js +10 -9
- package/Source/DataSources/BillboardGraphics.js +1 -1
- package/Source/DataSources/BillboardVisualizer.js +2 -2
- package/Source/DataSources/BoundingSphereState.js +1 -1
- package/Source/DataSources/BoxGraphics.js +1 -1
- package/Source/DataSources/CallbackProperty.js +8 -8
- package/Source/DataSources/Cesium3DTilesetGraphics.js +1 -1
- package/Source/DataSources/Cesium3DTilesetVisualizer.js +39 -28
- package/Source/DataSources/CheckerboardMaterialProperty.js +6 -6
- package/Source/DataSources/ColorMaterialProperty.js +5 -5
- package/Source/DataSources/CompositeEntityCollection.js +8 -8
- package/Source/DataSources/CompositeMaterialProperty.js +5 -5
- package/Source/DataSources/CompositePositionProperty.js +2 -2
- package/Source/DataSources/CompositeProperty.js +4 -4
- package/Source/DataSources/ConstantPositionProperty.js +4 -4
- package/Source/DataSources/ConstantProperty.js +5 -5
- package/Source/DataSources/CorridorGraphics.js +1 -1
- package/Source/DataSources/CustomDataSource.js +5 -5
- package/Source/DataSources/CylinderGraphics.js +1 -1
- package/Source/DataSources/CzmlDataSource.js +26 -26
- package/Source/DataSources/DataSource.js +4 -4
- package/Source/DataSources/DataSourceClock.js +2 -2
- package/Source/DataSources/DataSourceCollection.js +11 -11
- package/Source/DataSources/DataSourceDisplay.js +5 -5
- package/Source/DataSources/DynamicGeometryUpdater.js +1 -1
- package/Source/DataSources/EllipseGraphics.js +1 -1
- package/Source/DataSources/EllipsoidGeometryUpdater.js +2 -2
- package/Source/DataSources/EllipsoidGraphics.js +1 -1
- package/Source/DataSources/Entity.js +20 -15
- package/Source/DataSources/EntityCluster.js +16 -16
- package/Source/DataSources/EntityCollection.js +8 -8
- package/Source/DataSources/GeoJsonDataSource.js +27 -27
- package/Source/DataSources/GeometryUpdater.js +22 -22
- package/Source/DataSources/GeometryVisualizer.js +2 -2
- package/Source/DataSources/GpxDataSource.js +23 -23
- package/Source/DataSources/GridMaterialProperty.js +7 -7
- package/Source/DataSources/GroundGeometryUpdater.js +5 -5
- package/Source/DataSources/ImageMaterialProperty.js +8 -8
- package/Source/DataSources/KmlDataSource.js +32 -32
- package/Source/DataSources/KmlTour.js +7 -7
- package/Source/DataSources/KmlTourFlyTo.js +6 -6
- package/Source/DataSources/KmlTourWait.js +2 -2
- package/Source/DataSources/LabelGraphics.js +1 -1
- package/Source/DataSources/LabelVisualizer.js +2 -2
- package/Source/DataSources/MaterialProperty.js +5 -5
- package/Source/DataSources/ModelGraphics.js +3 -3
- package/Source/DataSources/ModelVisualizer.js +101 -33
- package/Source/DataSources/NodeTransformationProperty.js +3 -3
- package/Source/DataSources/PathGraphics.js +1 -1
- package/Source/DataSources/PathVisualizer.js +2 -2
- package/Source/DataSources/PlaneGraphics.js +1 -1
- package/Source/DataSources/PointGraphics.js +1 -1
- package/Source/DataSources/PointVisualizer.js +2 -2
- package/Source/DataSources/PolygonGraphics.js +4 -4
- package/Source/DataSources/PolylineArrowMaterialProperty.js +5 -5
- package/Source/DataSources/PolylineDashMaterialProperty.js +8 -8
- package/Source/DataSources/PolylineGeometryUpdater.js +13 -13
- package/Source/DataSources/PolylineGlowMaterialProperty.js +8 -8
- package/Source/DataSources/PolylineGraphics.js +2 -2
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +7 -7
- package/Source/DataSources/PolylineVisualizer.js +2 -2
- package/Source/DataSources/PolylineVolumeGraphics.js +3 -3
- package/Source/DataSources/PositionProperty.js +2 -2
- package/Source/DataSources/PositionPropertyArray.js +2 -2
- package/Source/DataSources/Property.js +4 -4
- package/Source/DataSources/PropertyArray.js +2 -2
- package/Source/DataSources/PropertyBag.js +10 -10
- package/Source/DataSources/RectangleGraphics.js +1 -1
- package/Source/DataSources/ReferenceProperty.js +10 -10
- package/Source/DataSources/Rotation.js +14 -14
- package/Source/DataSources/SampledPositionProperty.js +11 -11
- package/Source/DataSources/SampledProperty.js +12 -12
- package/Source/DataSources/StripeMaterialProperty.js +8 -8
- package/Source/DataSources/StripeOrientation.js +3 -3
- package/Source/DataSources/TerrainOffsetProperty.js +1 -1
- package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +3 -3
- package/Source/DataSources/TimeIntervalCollectionProperty.js +4 -4
- package/Source/DataSources/VelocityOrientationProperty.js +2 -2
- package/Source/DataSources/VelocityVectorProperty.js +4 -4
- package/Source/DataSources/Visualizer.js +2 -2
- package/Source/DataSources/WallGraphics.js +4 -4
- package/Source/DataSources/exportKml.js +9 -9
- package/Source/Renderer/Buffer.js +4 -4
- package/Source/Renderer/ClearCommand.js +3 -3
- package/Source/Renderer/ComputeCommand.js +3 -3
- package/Source/Renderer/Context.js +46 -46
- package/Source/Renderer/ContextLimits.js +22 -22
- package/Source/Renderer/CubeMapFace.js +11 -11
- package/Source/Renderer/DrawCommand.js +15 -15
- package/Source/Renderer/Framebuffer.js +4 -4
- package/Source/Renderer/FramebufferManager.js +9 -9
- package/Source/Renderer/MultisampleFramebuffer.js +1 -1
- package/Source/Renderer/PassState.js +2 -2
- package/Source/Renderer/PixelDatatype.js +1 -1
- package/Source/Renderer/RenderState.js +1 -1
- package/Source/Renderer/ShaderBuilder.js +24 -24
- package/Source/Renderer/ShaderCache.js +8 -8
- package/Source/Renderer/ShaderDestination.js +2 -2
- package/Source/Renderer/ShaderFunction.js +3 -3
- package/Source/Renderer/ShaderSource.js +8 -8
- package/Source/Renderer/ShaderStruct.js +4 -4
- package/Source/Renderer/Texture.js +18 -18
- package/Source/Renderer/TextureMagnificationFilter.js +4 -4
- package/Source/Renderer/TextureMinificationFilter.js +8 -8
- package/Source/Renderer/UniformState.js +14 -14
- package/Source/Renderer/VertexArray.js +2 -2
- package/Source/Renderer/createUniform.js +12 -12
- package/Source/Renderer/createUniformArray.js +12 -12
- package/Source/Renderer/freezeRenderState.js +2 -2
- package/Source/Renderer/loadCubeMap.js +3 -3
- package/Source/Scene/AlphaMode.js +4 -4
- package/Source/Scene/Appearance.js +14 -14
- package/Source/Scene/ArcGisMapServerImageryProvider.js +585 -409
- package/Source/Scene/AttributeType.js +11 -11
- package/Source/Scene/AutoExposure.js +6 -6
- package/Source/Scene/Axis.js +6 -6
- package/Source/Scene/B3dmParser.js +2 -2
- package/Source/Scene/BatchTable.js +13 -13
- package/Source/Scene/BatchTableHierarchy.js +22 -22
- package/Source/Scene/BatchTexture.js +14 -14
- package/Source/Scene/Billboard.js +17 -17
- package/Source/Scene/BillboardCollection.js +13 -13
- package/Source/Scene/BingMapsImageryProvider.js +541 -335
- package/Source/Scene/BingMapsStyle.js +11 -11
- package/Source/Scene/BlendEquation.js +6 -6
- package/Source/Scene/BlendFunction.js +16 -16
- package/Source/Scene/BlendOption.js +4 -4
- package/Source/Scene/BlendingState.js +4 -4
- package/Source/Scene/BufferLoader.js +33 -38
- package/Source/Scene/Camera.js +57 -57
- package/Source/Scene/CameraEventAggregator.js +26 -16
- package/Source/Scene/CameraEventType.js +6 -6
- package/Source/Scene/Cesium3DContentGroup.js +1 -1
- package/Source/Scene/Cesium3DTile.js +409 -272
- package/Source/Scene/Cesium3DTileBatchTable.js +3 -3
- package/Source/Scene/Cesium3DTileColorBlendMode.js +4 -4
- package/Source/Scene/Cesium3DTileContent.js +31 -15
- package/Source/Scene/Cesium3DTileContentFactory.js +4 -4
- package/Source/Scene/Cesium3DTileContentType.js +17 -17
- package/Source/Scene/Cesium3DTileFeature.js +16 -16
- package/Source/Scene/Cesium3DTileOptimizationHint.js +1 -1
- package/Source/Scene/Cesium3DTileOptimizations.js +1 -1
- package/Source/Scene/Cesium3DTilePass.js +8 -11
- package/Source/Scene/Cesium3DTilePassState.js +1 -1
- package/Source/Scene/Cesium3DTilePointFeature.js +23 -23
- package/Source/Scene/Cesium3DTileRefine.js +3 -3
- package/Source/Scene/Cesium3DTileStyle.js +17 -17
- package/Source/Scene/Cesium3DTileStyleEngine.js +1 -1
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +226 -118
- package/Source/Scene/Cesium3DTileset.js +817 -543
- package/Source/Scene/Cesium3DTilesetBaseTraversal.js +301 -0
- package/Source/Scene/Cesium3DTilesetHeatmap.js +4 -4
- package/Source/Scene/Cesium3DTilesetMetadata.js +5 -5
- package/Source/Scene/Cesium3DTilesetMostDetailedTraversal.js +33 -46
- package/Source/Scene/Cesium3DTilesetSkipTraversal.js +421 -0
- package/Source/Scene/Cesium3DTilesetTraversal.js +219 -671
- package/Source/Scene/CircleEmitter.js +2 -2
- package/Source/Scene/ClassificationPrimitive.js +32 -25
- package/Source/Scene/ClassificationType.js +4 -4
- package/Source/Scene/ClippingPlane.js +2 -2
- package/Source/Scene/ClippingPlaneCollection.js +17 -17
- package/Source/Scene/CloudCollection.js +16 -16
- package/Source/Scene/CloudType.js +3 -3
- package/Source/Scene/ColorBlendMode.js +1 -1
- package/Source/Scene/Composite3DTileContent.js +69 -26
- package/Source/Scene/ConditionsExpression.js +11 -11
- package/Source/Scene/ConeEmitter.js +2 -2
- package/Source/Scene/ContentMetadata.js +16 -16
- package/Source/Scene/CreditDisplay.js +22 -6
- package/Source/Scene/CullFace.js +4 -4
- package/Source/Scene/CumulusCloud.js +3 -3
- package/Source/Scene/DebugAppearance.js +17 -17
- package/Source/Scene/DebugCameraPrimitive.js +7 -7
- package/Source/Scene/DebugModelMatrixPrimitive.js +9 -9
- package/Source/Scene/DepthFunction.js +9 -9
- package/Source/Scene/DepthPlane.js +1 -1
- package/Source/Scene/DeviceOrientationCameraController.js +1 -1
- package/Source/Scene/DirectionalLight.js +3 -3
- package/Source/Scene/DiscardEmptyTileImagePolicy.js +2 -2
- package/Source/Scene/DiscardMissingTileImagePolicy.js +5 -5
- package/Source/Scene/DracoLoader.js +4 -4
- package/Source/Scene/EllipsoidPrimitive.js +8 -8
- package/Source/Scene/EllipsoidSurfaceAppearance.js +19 -19
- package/Source/Scene/Empty3DTileContent.js +31 -1
- package/Source/Scene/Expression.js +14 -14
- package/Source/Scene/Fog.js +5 -5
- package/Source/Scene/FrameRateMonitor.js +14 -14
- package/Source/Scene/FrameState.js +36 -36
- package/Source/Scene/FrustumCommands.js +2 -2
- package/Source/Scene/Geometry3DTileContent.js +47 -7
- package/Source/Scene/GetFeatureInfoFormat.js +2 -2
- package/Source/Scene/Globe.js +39 -35
- package/Source/Scene/GlobeSurfaceTile.js +3 -2
- package/Source/Scene/GlobeSurfaceTileProvider.js +56 -33
- package/Source/Scene/GlobeTranslucency.js +3 -3
- package/Source/Scene/GltfBufferViewLoader.js +52 -96
- package/Source/Scene/GltfDracoLoader.js +117 -119
- package/Source/Scene/GltfImageLoader.js +77 -84
- package/Source/Scene/GltfIndexBufferLoader.js +118 -131
- package/Source/Scene/GltfJsonLoader.js +81 -80
- package/Source/Scene/GltfLoader.js +413 -301
- package/Source/Scene/GltfLoaderUtil.js +11 -11
- package/Source/Scene/GltfPipeline/addBuffer.js +2 -2
- package/Source/Scene/GltfPipeline/addDefaults.js +2 -2
- package/Source/Scene/GltfPipeline/addExtensionsRequired.js +2 -2
- package/Source/Scene/GltfPipeline/addExtensionsUsed.js +2 -2
- package/Source/Scene/GltfPipeline/addPipelineExtras.js +2 -2
- package/Source/Scene/GltfPipeline/addToArray.js +2 -2
- package/Source/Scene/GltfPipeline/findAccessorMinMax.js +2 -2
- package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +3 -3
- package/Source/Scene/GltfPipeline/getAccessorByteStride.js +3 -3
- package/Source/Scene/GltfPipeline/getComponentReader.js +5 -5
- package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -2
- package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +2 -2
- package/Source/Scene/GltfPipeline/numberOfComponentsForType.js +2 -2
- package/Source/Scene/GltfPipeline/parseGlb.js +1 -1
- package/Source/Scene/GltfPipeline/readAccessorPacked.js +2 -2
- package/Source/Scene/GltfPipeline/removeExtension.js +2 -2
- package/Source/Scene/GltfPipeline/removeExtensionsRequired.js +2 -2
- package/Source/Scene/GltfPipeline/removeExtensionsUsed.js +2 -2
- package/Source/Scene/GltfPipeline/removePipelineExtras.js +2 -2
- package/Source/Scene/GltfPipeline/removeUnusedElements.js +2 -2
- package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +2 -2
- package/Source/Scene/GltfPipeline/updateVersion.js +4 -4
- package/Source/Scene/GltfPipeline/usesExtension.js +3 -3
- package/Source/Scene/GltfStructuralMetadataLoader.js +117 -118
- package/Source/Scene/GltfTextureLoader.js +104 -103
- package/Source/Scene/GltfVertexBufferLoader.js +140 -145
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +377 -249
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +520 -360
- package/Source/Scene/GridImageryProvider.js +292 -129
- package/Source/Scene/GroundPolylinePrimitive.js +32 -21
- package/Source/Scene/GroundPrimitive.js +34 -27
- package/Source/Scene/GroupMetadata.js +17 -17
- package/Source/Scene/HeightReference.js +4 -4
- package/Source/Scene/HorizontalOrigin.js +4 -4
- package/Source/Scene/I3SDataProvider.js +221 -120
- package/Source/Scene/I3SFeature.js +8 -7
- package/Source/Scene/I3SField.js +5 -5
- package/Source/Scene/I3SGeometry.js +8 -8
- package/Source/Scene/I3SLayer.js +33 -44
- package/Source/Scene/I3SNode.js +65 -72
- package/Source/Scene/I3dmParser.js +2 -2
- package/Source/Scene/ImageBasedLighting.js +21 -17
- package/Source/Scene/Imagery.js +6 -1
- package/Source/Scene/ImageryLayer.js +324 -73
- package/Source/Scene/ImageryLayerCollection.js +37 -11
- package/Source/Scene/ImageryLayerFeatureInfo.js +6 -6
- package/Source/Scene/ImageryProvider.js +151 -133
- package/Source/Scene/Implicit3DTileContent.js +128 -79
- package/Source/Scene/ImplicitAvailabilityBitstream.js +10 -10
- package/Source/Scene/ImplicitMetadataView.js +16 -16
- package/Source/Scene/ImplicitSubdivisionScheme.js +4 -4
- package/Source/Scene/ImplicitSubtree.js +113 -92
- package/Source/Scene/ImplicitSubtreeCache.js +6 -6
- package/Source/Scene/ImplicitSubtreeMetadata.js +16 -16
- package/Source/Scene/ImplicitTileCoordinates.js +27 -27
- package/Source/Scene/ImplicitTileset.js +10 -10
- package/Source/Scene/InstanceAttributeSemantic.js +5 -5
- package/Source/Scene/IonImageryProvider.js +493 -286
- package/Source/Scene/IonWorldImageryStyle.js +4 -4
- package/Source/Scene/JsonMetadataTable.js +11 -11
- package/Source/Scene/KeyframeNode.js +1 -1
- package/Source/Scene/Label.js +14 -14
- package/Source/Scene/LabelCollection.js +12 -11
- package/Source/Scene/LabelStyle.js +4 -4
- package/Source/Scene/Light.js +1 -1
- package/Source/Scene/MapMode2D.js +3 -3
- package/Source/Scene/MapboxImageryProvider.js +301 -141
- package/Source/Scene/MapboxStyleImageryProvider.js +301 -142
- package/Source/Scene/Material.js +47 -47
- package/Source/Scene/MaterialAppearance.js +21 -21
- package/Source/Scene/Megatexture.js +15 -15
- package/Source/Scene/MetadataClass.js +16 -16
- package/Source/Scene/MetadataClassProperty.js +41 -41
- package/Source/Scene/MetadataComponentType.js +21 -21
- package/Source/Scene/MetadataEntity.js +31 -31
- package/Source/Scene/MetadataEnum.js +14 -14
- package/Source/Scene/MetadataEnumValue.js +10 -10
- package/Source/Scene/MetadataSchema.js +16 -16
- package/Source/Scene/MetadataSchemaLoader.js +31 -41
- package/Source/Scene/MetadataSemantic.js +17 -17
- package/Source/Scene/MetadataTable.js +24 -24
- package/Source/Scene/MetadataTableProperty.js +9 -9
- package/Source/Scene/MetadataType.js +15 -15
- package/Source/Scene/Model/B3dmLoader.js +54 -58
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +3 -3
- package/Source/Scene/Model/CustomShader.js +18 -18
- package/Source/Scene/Model/CustomShaderMode.js +4 -4
- package/Source/Scene/Model/CustomShaderTranslucencyMode.js +4 -4
- package/Source/Scene/Model/GeoJsonLoader.js +12 -36
- package/Source/Scene/Model/I3dmLoader.js +58 -84
- package/Source/Scene/Model/LightingModel.js +3 -3
- package/Source/Scene/Model/MaterialPipelineStage.js +6 -6
- package/Source/Scene/Model/MetadataPipelineStage.js +25 -26
- package/Source/Scene/Model/Model.js +531 -193
- package/Source/Scene/Model/Model3DTileContent.js +83 -31
- package/Source/Scene/Model/ModelAlphaOptions.js +1 -1
- package/Source/Scene/Model/ModelAnimation.js +11 -11
- package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
- package/Source/Scene/Model/ModelAnimationCollection.js +21 -21
- package/Source/Scene/Model/ModelArticulation.js +4 -4
- package/Source/Scene/Model/ModelArticulationStage.js +5 -5
- package/Source/Scene/Model/ModelDrawCommand.js +18 -29
- package/Source/Scene/Model/ModelFeature.js +12 -12
- package/Source/Scene/Model/ModelFeatureTable.js +5 -5
- package/Source/Scene/Model/ModelLightingOptions.js +1 -1
- package/Source/Scene/Model/ModelNode.js +3 -3
- package/Source/Scene/Model/ModelRenderResources.js +4 -4
- package/Source/Scene/Model/ModelRuntimeNode.js +7 -7
- package/Source/Scene/Model/ModelRuntimePrimitive.js +3 -3
- package/Source/Scene/Model/ModelSceneGraph.js +11 -11
- package/Source/Scene/Model/ModelSilhouettePipelineStage.js +1 -1
- package/Source/Scene/Model/ModelSkin.js +1 -1
- package/Source/Scene/Model/ModelStatistics.js +7 -7
- package/Source/Scene/Model/ModelType.js +8 -8
- package/Source/Scene/Model/ModelUtility.js +26 -26
- package/Source/Scene/Model/NodeRenderResources.js +7 -7
- package/Source/Scene/Model/PntsLoader.js +32 -37
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -1
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +28 -28
- package/Source/Scene/Model/PrimitiveRenderResources.js +10 -10
- package/Source/Scene/Model/StyleCommandsNeeded.js +1 -1
- package/Source/Scene/Model/TextureManager.js +3 -3
- package/Source/Scene/Model/TextureUniform.js +6 -6
- package/Source/Scene/Model/UniformType.js +17 -17
- package/Source/Scene/Model/VaryingType.js +8 -8
- package/Source/Scene/ModelAnimationLoop.js +4 -4
- package/Source/Scene/ModelComponents.js +61 -61
- package/Source/Scene/Moon.js +8 -8
- package/Source/Scene/Multiple3DTileContent.js +146 -127
- package/Source/Scene/NeverTileDiscardPolicy.js +2 -2
- package/Source/Scene/OIT.js +9 -9
- package/Source/Scene/OctahedralProjectedCubeMap.js +28 -39
- package/Source/Scene/OpenStreetMapImageryProvider.js +6 -6
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +9 -9
- package/Source/Scene/Particle.js +13 -13
- package/Source/Scene/ParticleBurst.js +8 -8
- package/Source/Scene/ParticleSystem.js +41 -36
- package/Source/Scene/PerInstanceColorAppearance.js +18 -18
- package/Source/Scene/PerformanceDisplay.js +2 -2
- package/Source/Scene/PntsParser.js +1 -1
- package/Source/Scene/PointCloud.js +11 -19
- package/Source/Scene/PointCloudEyeDomeLighting.js +1 -1
- package/Source/Scene/PointCloudShading.js +20 -20
- package/Source/Scene/PointPrimitive.js +6 -6
- package/Source/Scene/PointPrimitiveCollection.js +11 -11
- package/Source/Scene/Polyline.js +9 -9
- package/Source/Scene/PolylineCollection.js +11 -11
- package/Source/Scene/PolylineColorAppearance.js +13 -13
- package/Source/Scene/PolylineMaterialAppearance.js +13 -13
- package/Source/Scene/PostProcessStage.js +15 -15
- package/Source/Scene/PostProcessStageCollection.js +10 -10
- package/Source/Scene/PostProcessStageComposite.js +13 -13
- package/Source/Scene/PostProcessStageLibrary.js +8 -8
- package/Source/Scene/PostProcessStageSampleMode.js +3 -3
- package/Source/Scene/PostProcessStageTextureCache.js +4 -4
- package/Source/Scene/Primitive.js +50 -30
- package/Source/Scene/PrimitiveCollection.js +20 -20
- package/Source/Scene/PrimitiveLoadPlan.js +6 -6
- package/Source/Scene/PropertyAttribute.js +9 -9
- package/Source/Scene/PropertyAttributeProperty.js +6 -6
- package/Source/Scene/PropertyTable.js +34 -34
- package/Source/Scene/PropertyTexture.js +9 -9
- package/Source/Scene/PropertyTextureProperty.js +8 -8
- package/Source/Scene/QuadtreePrimitive.js +11 -9
- package/Source/Scene/QuadtreeTile.js +11 -11
- package/Source/Scene/QuadtreeTileLoadState.js +1 -1
- package/Source/Scene/QuadtreeTileProvider.js +10 -14
- package/Source/Scene/ResourceCache.js +85 -143
- package/Source/Scene/ResourceCacheKey.js +42 -42
- package/Source/Scene/ResourceCacheStatistics.js +26 -60
- package/Source/Scene/ResourceLoader.js +9 -21
- package/Source/Scene/ResourceLoaderState.js +16 -8
- package/Source/Scene/SDFSettings.js +4 -4
- package/Source/Scene/Scene.js +153 -88
- package/Source/Scene/SceneMode.js +6 -6
- package/Source/Scene/SceneTransitioner.js +1 -1
- package/Source/Scene/ScreenSpaceCameraController.js +41 -23
- package/Source/Scene/ShadowMap.js +22 -22
- package/Source/Scene/ShadowMapShader.js +1 -1
- package/Source/Scene/ShadowMode.js +5 -5
- package/Source/Scene/ShadowVolumeAppearance.js +17 -17
- package/Source/Scene/SingleTileImageryProvider.js +403 -230
- package/Source/Scene/SkyAtmosphere.js +10 -10
- package/Source/Scene/SkyBox.js +6 -6
- package/Source/Scene/SpatialNode.js +103 -87
- package/Source/Scene/SphereEmitter.js +2 -2
- package/Source/Scene/SplitDirection.js +4 -4
- package/Source/Scene/Splitter.js +2 -2
- package/Source/Scene/StencilFunction.js +9 -9
- package/Source/Scene/StencilOperation.js +9 -9
- package/Source/Scene/StructuralMetadata.js +11 -11
- package/Source/Scene/StyleExpression.js +8 -8
- package/Source/Scene/Sun.js +3 -3
- package/Source/Scene/SunLight.js +3 -3
- package/Source/Scene/SupportedImageFormats.js +3 -3
- package/Source/Scene/Terrain.js +196 -0
- package/Source/Scene/TextureAtlas.js +16 -16
- package/Source/Scene/TileBoundingRegion.js +6 -6
- package/Source/Scene/TileBoundingS2Cell.js +6 -6
- package/Source/Scene/TileBoundingSphere.js +5 -5
- package/Source/Scene/TileBoundingVolume.js +2 -2
- package/Source/Scene/TileCoordinatesImageryProvider.js +289 -126
- package/Source/Scene/TileDiscardPolicy.js +2 -2
- package/Source/Scene/TileImagery.js +3 -3
- package/Source/Scene/TileMapServiceImageryProvider.js +185 -93
- package/Source/Scene/TileMetadata.js +16 -16
- package/Source/Scene/TileOrientedBoundingBox.js +2 -2
- package/Source/Scene/TileReplacementQueue.js +1 -1
- package/Source/Scene/TileSelectionResult.js +1 -1
- package/Source/Scene/Tileset3DTileContent.js +47 -5
- package/Source/Scene/TilesetMetadata.js +15 -15
- package/Source/Scene/TimeDynamicImagery.js +8 -8
- package/Source/Scene/TimeDynamicPointCloud.js +24 -11
- package/Source/Scene/Tonemapper.js +5 -5
- package/Source/Scene/TranslucentTileClassification.js +1 -1
- package/Source/Scene/TweenCollection.js +31 -31
- package/Source/Scene/UrlTemplateImageryProvider.js +380 -252
- package/Source/Scene/Vector3DTileBatch.js +7 -7
- package/Source/Scene/Vector3DTileClampedPolylines.js +105 -93
- package/Source/Scene/Vector3DTileContent.js +47 -22
- package/Source/Scene/Vector3DTileGeometry.js +65 -60
- package/Source/Scene/Vector3DTilePoints.js +79 -75
- package/Source/Scene/Vector3DTilePolygons.js +128 -127
- package/Source/Scene/Vector3DTilePolylines.js +95 -91
- package/Source/Scene/Vector3DTilePrimitive.js +8 -9
- package/Source/Scene/VertexAttributeSemantic.js +15 -15
- package/Source/Scene/VerticalOrigin.js +5 -5
- package/Source/Scene/ViewportQuad.js +2 -2
- package/Source/Scene/VoxelBoxShape.js +27 -118
- package/Source/Scene/VoxelContent.js +63 -65
- package/Source/Scene/VoxelCylinderShape.js +21 -21
- package/Source/Scene/VoxelEllipsoidShape.js +13 -13
- package/Source/Scene/VoxelPrimitive.js +83 -135
- package/Source/Scene/VoxelProvider.js +15 -15
- package/Source/Scene/VoxelRenderResources.js +6 -3
- package/Source/Scene/VoxelShape.js +9 -9
- package/Source/Scene/VoxelShapeType.js +4 -4
- package/Source/Scene/VoxelTraversal.js +86 -144
- package/Source/Scene/WebMapServiceImageryProvider.js +313 -152
- package/Source/Scene/WebMapTileServiceImageryProvider.js +305 -142
- package/Source/Scene/buildVoxelDrawCommands.js +1 -0
- package/Source/Scene/computeFlyToLocationForRectangle.js +33 -37
- package/Source/Scene/createBillboardPointCallback.js +5 -5
- package/Source/Scene/createElevationBandMaterial.js +5 -5
- package/Source/Scene/createOsmBuildings.js +9 -3
- package/Source/Scene/createOsmBuildingsAsync.js +82 -0
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +2 -2
- package/Source/Scene/createWorldImagery.js +15 -6
- package/Source/Scene/createWorldImageryAsync.js +39 -0
- package/Source/Scene/findContentMetadata.js +1 -1
- package/Source/Scene/findGroupMetadata.js +1 -1
- package/Source/Scene/findTileMetadata.js +1 -1
- package/Source/Scene/getClipAndStyleCode.js +4 -4
- package/Source/Scene/getClippingFunction.js +1 -1
- package/Source/Scene/hasExtension.js +3 -3
- package/Source/Scene/parseBatchTable.js +14 -14
- package/Source/Scene/parseBoundingVolumeSemantics.js +7 -7
- package/Source/Scene/parseFeatureMetadataLegacy.js +4 -4
- package/Source/Scene/parseStructuralMetadata.js +4 -4
- package/Source/Scene/preprocess3DTileContent.js +2 -2
- package/Source/Scene/processVoxelProperties.js +8 -7
- package/Source/Shaders/Voxels/IntersectBox.glsl +52 -58
- package/Source/Shaders/Voxels/IntersectBox.js +52 -58
- package/Source/Shaders/Voxels/IntersectClippingPlanes.glsl +38 -30
- package/Source/Shaders/Voxels/IntersectClippingPlanes.js +38 -30
- package/Source/Shaders/Voxels/IntersectDepth.glsl +1 -1
- package/Source/Shaders/Voxels/IntersectDepth.js +1 -1
- package/Source/Shaders/Voxels/Intersection.glsl +10 -12
- package/Source/Shaders/Voxels/Intersection.js +10 -12
- package/Source/Shaders/Voxels/IntersectionUtils.glsl +52 -59
- package/Source/Shaders/Voxels/IntersectionUtils.js +52 -59
- package/Source/Shaders/Voxels/Octree.glsl +72 -73
- package/Source/Shaders/Voxels/Octree.js +72 -73
- package/Source/Shaders/Voxels/VoxelFS.glsl +42 -22
- package/Source/Shaders/Voxels/VoxelFS.js +42 -22
- package/Source/Shaders/Voxels/convertUvToBox.glsl +13 -5
- package/Source/Shaders/Voxels/convertUvToBox.js +13 -5
- package/Source/ThirdParty/Workers/draco_decoder_nodejs.js +91 -91
- package/Source/ThirdParty/draco_decoder.wasm +0 -0
- package/Source/Widget/CesiumWidget.js +78 -50
- package/Source/Workers/cesiumWorkerBootstrapper.js +18 -18
- package/Source/WorkersES6/createTaskProcessorWorker.js +3 -3
- package/index.d.ts +2172 -1432
- package/index.js +8 -3
- package/package.json +1 -1
- package/Source/Core/cancelAnimationFrame.js +0 -53
- package/Source/Core/requestAnimationFrame.js +0 -83
- /package/Build/Workers/{GeometryOffsetAttribute-04332ce7.js → GeometryOffsetAttribute-9ad0019c.js} +0 -0
|
@@ -18,16 +18,16 @@ import ResourceLoaderState from "./ResourceLoaderState.js";
|
|
|
18
18
|
* @constructor
|
|
19
19
|
* @augments ResourceLoader
|
|
20
20
|
*
|
|
21
|
-
* @param {
|
|
22
|
-
* @param {
|
|
23
|
-
* @param {
|
|
24
|
-
* @param {
|
|
21
|
+
* @param {object} options Object with the following properties:
|
|
22
|
+
* @param {object} options.gltf The glTF JSON.
|
|
23
|
+
* @param {string} [options.extension] The <code>EXT_structural_metadata</code> extension object. If this is undefined, then extensionLegacy must be defined.
|
|
24
|
+
* @param {string} [options.extensionLegacy] The legacy <code>EXT_feature_metadata</code> extension for backwards compatibility.
|
|
25
25
|
* @param {Resource} options.gltfResource The {@link Resource} containing the glTF.
|
|
26
26
|
* @param {Resource} options.baseResource The {@link Resource} that paths in the glTF JSON are relative to.
|
|
27
27
|
* @param {SupportedImageFormats} options.supportedImageFormats The supported image formats.
|
|
28
28
|
* @param {FrameState} options.frameState The frame state.
|
|
29
|
-
* @param {
|
|
30
|
-
* @param {
|
|
29
|
+
* @param {string} [options.cacheKey] The cache key of the resource.
|
|
30
|
+
* @param {boolean} [options.asynchronous=true] Determines if WebGL resource creation will be spread out over several frames or block until all WebGL resources are created.
|
|
31
31
|
*
|
|
32
32
|
* @private
|
|
33
33
|
* @experimental This feature is using part of the 3D Tiles spec that is not final and is subject to change without Cesium's standard deprecation policy.
|
|
@@ -68,7 +68,9 @@ function GltfStructuralMetadataLoader(options) {
|
|
|
68
68
|
this._cacheKey = cacheKey;
|
|
69
69
|
this._asynchronous = asynchronous;
|
|
70
70
|
this._bufferViewLoaders = [];
|
|
71
|
+
this._bufferViewIds = [];
|
|
71
72
|
this._textureLoaders = [];
|
|
73
|
+
this._textureIds = [];
|
|
72
74
|
this._schemaLoader = undefined;
|
|
73
75
|
this._structuralMetadata = undefined;
|
|
74
76
|
this._state = ResourceLoaderState.UNLOADED;
|
|
@@ -83,26 +85,12 @@ if (defined(Object.create)) {
|
|
|
83
85
|
}
|
|
84
86
|
|
|
85
87
|
Object.defineProperties(GltfStructuralMetadataLoader.prototype, {
|
|
86
|
-
/**
|
|
87
|
-
* A promise that resolves to the resource when the resource is ready, or undefined if the resource hasn't started loading.
|
|
88
|
-
*
|
|
89
|
-
* @memberof GltfStructuralMetadataLoader.prototype
|
|
90
|
-
*
|
|
91
|
-
* @type {Promise.<GltfStructuralMetadataLoader>|undefined}
|
|
92
|
-
* @readonly
|
|
93
|
-
* @private
|
|
94
|
-
*/
|
|
95
|
-
promise: {
|
|
96
|
-
get: function () {
|
|
97
|
-
return this._promise;
|
|
98
|
-
},
|
|
99
|
-
},
|
|
100
88
|
/**
|
|
101
89
|
* The cache key of the resource.
|
|
102
90
|
*
|
|
103
91
|
* @memberof GltfStructuralMetadataLoader.prototype
|
|
104
92
|
*
|
|
105
|
-
* @type {
|
|
93
|
+
* @type {string}
|
|
106
94
|
* @readonly
|
|
107
95
|
* @private
|
|
108
96
|
*/
|
|
@@ -127,61 +115,47 @@ Object.defineProperties(GltfStructuralMetadataLoader.prototype, {
|
|
|
127
115
|
},
|
|
128
116
|
});
|
|
129
117
|
|
|
118
|
+
async function loadResources(loader) {
|
|
119
|
+
try {
|
|
120
|
+
const bufferViewsPromise = loadBufferViews(loader);
|
|
121
|
+
const texturesPromise = loadTextures(loader);
|
|
122
|
+
const schemaPromise = loadSchema(loader);
|
|
123
|
+
|
|
124
|
+
await Promise.all([bufferViewsPromise, texturesPromise, schemaPromise]);
|
|
125
|
+
|
|
126
|
+
if (loader.isDestroyed()) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
loader._gltf = undefined; // No longer need to hold onto the glTF
|
|
131
|
+
|
|
132
|
+
loader._state = ResourceLoaderState.LOADED;
|
|
133
|
+
return loader;
|
|
134
|
+
} catch (error) {
|
|
135
|
+
if (loader.isDestroyed()) {
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
loader.unload();
|
|
140
|
+
loader._state = ResourceLoaderState.FAILED;
|
|
141
|
+
const errorMessage = "Failed to load structural metadata";
|
|
142
|
+
throw loader.getError(errorMessage, error);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
|
|
130
146
|
/**
|
|
131
147
|
* Loads the resource.
|
|
132
|
-
* @returns {Promise
|
|
148
|
+
* @returns {Promise<GltfStructuralMetadataLoader>} A promise which resolves to the loader when the resource loading is completed.
|
|
133
149
|
* @private
|
|
134
150
|
*/
|
|
135
151
|
GltfStructuralMetadataLoader.prototype.load = function () {
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
152
|
+
if (defined(this._promise)) {
|
|
153
|
+
return this._promise;
|
|
154
|
+
}
|
|
139
155
|
|
|
140
|
-
this._gltf = undefined; // No longer need to hold onto the glTF
|
|
141
156
|
this._state = ResourceLoaderState.LOADING;
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
this._promise = Promise.all([
|
|
146
|
-
bufferViewsPromise,
|
|
147
|
-
texturesPromise,
|
|
148
|
-
schemaPromise,
|
|
149
|
-
])
|
|
150
|
-
.then(function (results) {
|
|
151
|
-
if (that.isDestroyed()) {
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
const bufferViews = results[0];
|
|
155
|
-
const textures = results[1];
|
|
156
|
-
const schema = results[2];
|
|
157
|
-
|
|
158
|
-
if (defined(that._extension)) {
|
|
159
|
-
that._structuralMetadata = parseStructuralMetadata({
|
|
160
|
-
extension: that._extension,
|
|
161
|
-
schema: schema,
|
|
162
|
-
bufferViews: bufferViews,
|
|
163
|
-
textures: textures,
|
|
164
|
-
});
|
|
165
|
-
} else {
|
|
166
|
-
that._structuralMetadata = parseFeatureMetadataLegacy({
|
|
167
|
-
extension: that._extensionLegacy,
|
|
168
|
-
schema: schema,
|
|
169
|
-
bufferViews: bufferViews,
|
|
170
|
-
textures: textures,
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
that._state = ResourceLoaderState.READY;
|
|
174
|
-
return that;
|
|
175
|
-
})
|
|
176
|
-
.catch(function (error) {
|
|
177
|
-
if (that.isDestroyed()) {
|
|
178
|
-
return;
|
|
179
|
-
}
|
|
180
|
-
that.unload();
|
|
181
|
-
that._state = ResourceLoaderState.FAILED;
|
|
182
|
-
const errorMessage = "Failed to load structural metadata";
|
|
183
|
-
return Promise.reject(that.getError(errorMessage, error));
|
|
184
|
-
});
|
|
157
|
+
this._promise = loadResources(this);
|
|
158
|
+
return this._promise;
|
|
185
159
|
};
|
|
186
160
|
|
|
187
161
|
function gatherBufferViewIdsFromProperties(properties, bufferViewIdSet) {
|
|
@@ -261,7 +235,7 @@ function gatherUsedBufferViewIdsLegacy(extensionLegacy) {
|
|
|
261
235
|
return bufferViewIdSet;
|
|
262
236
|
}
|
|
263
237
|
|
|
264
|
-
function loadBufferViews(structuralMetadataLoader) {
|
|
238
|
+
async function loadBufferViews(structuralMetadataLoader) {
|
|
265
239
|
let bufferViewIds;
|
|
266
240
|
if (defined(structuralMetadataLoader._extension)) {
|
|
267
241
|
bufferViewIds = gatherUsedBufferViewIds(
|
|
@@ -275,40 +249,23 @@ function loadBufferViews(structuralMetadataLoader) {
|
|
|
275
249
|
|
|
276
250
|
// Load the buffer views
|
|
277
251
|
const bufferViewPromises = [];
|
|
278
|
-
const bufferViewLoaders = {};
|
|
279
252
|
for (const bufferViewId in bufferViewIds) {
|
|
280
253
|
if (bufferViewIds.hasOwnProperty(bufferViewId)) {
|
|
281
|
-
const bufferViewLoader = ResourceCache.
|
|
254
|
+
const bufferViewLoader = ResourceCache.getBufferViewLoader({
|
|
282
255
|
gltf: structuralMetadataLoader._gltf,
|
|
283
256
|
bufferViewId: parseInt(bufferViewId),
|
|
284
257
|
gltfResource: structuralMetadataLoader._gltfResource,
|
|
285
258
|
baseResource: structuralMetadataLoader._baseResource,
|
|
286
259
|
});
|
|
287
|
-
|
|
260
|
+
|
|
288
261
|
structuralMetadataLoader._bufferViewLoaders.push(bufferViewLoader);
|
|
289
|
-
|
|
290
|
-
}
|
|
291
|
-
}
|
|
262
|
+
structuralMetadataLoader._bufferViewIds.push(bufferViewId);
|
|
292
263
|
|
|
293
|
-
|
|
294
|
-
return Promise.all(bufferViewPromises).then(function () {
|
|
295
|
-
const bufferViews = {};
|
|
296
|
-
for (const bufferViewId in bufferViewLoaders) {
|
|
297
|
-
if (bufferViewLoaders.hasOwnProperty(bufferViewId)) {
|
|
298
|
-
const bufferViewLoader = bufferViewLoaders[bufferViewId];
|
|
299
|
-
// Copy the typed array and let the underlying ArrayBuffer be freed
|
|
300
|
-
const bufferViewTypedArray = new Uint8Array(
|
|
301
|
-
bufferViewLoader.typedArray
|
|
302
|
-
);
|
|
303
|
-
bufferViews[bufferViewId] = bufferViewTypedArray;
|
|
304
|
-
}
|
|
264
|
+
bufferViewPromises.push(bufferViewLoader.load());
|
|
305
265
|
}
|
|
266
|
+
}
|
|
306
267
|
|
|
307
|
-
|
|
308
|
-
unloadBufferViews(structuralMetadataLoader);
|
|
309
|
-
|
|
310
|
-
return bufferViews;
|
|
311
|
-
});
|
|
268
|
+
return Promise.all(bufferViewPromises);
|
|
312
269
|
}
|
|
313
270
|
|
|
314
271
|
function gatherUsedTextureIds(structuralMetadataExtension) {
|
|
@@ -385,10 +342,9 @@ function loadTextures(structuralMetadataLoader) {
|
|
|
385
342
|
|
|
386
343
|
// Load the textures
|
|
387
344
|
const texturePromises = [];
|
|
388
|
-
const textureLoaders = {};
|
|
389
345
|
for (const textureId in textureIds) {
|
|
390
346
|
if (textureIds.hasOwnProperty(textureId)) {
|
|
391
|
-
const textureLoader = ResourceCache.
|
|
347
|
+
const textureLoader = ResourceCache.getTextureLoader({
|
|
392
348
|
gltf: gltf,
|
|
393
349
|
textureInfo: textureIds[textureId],
|
|
394
350
|
gltfResource: gltfResource,
|
|
@@ -397,26 +353,16 @@ function loadTextures(structuralMetadataLoader) {
|
|
|
397
353
|
frameState: frameState,
|
|
398
354
|
asynchronous: asynchronous,
|
|
399
355
|
});
|
|
400
|
-
texturePromises.push(textureLoader.promise);
|
|
401
356
|
structuralMetadataLoader._textureLoaders.push(textureLoader);
|
|
402
|
-
|
|
357
|
+
structuralMetadataLoader._textureIds.push(textureId);
|
|
358
|
+
texturePromises.push(textureLoader.load());
|
|
403
359
|
}
|
|
404
360
|
}
|
|
405
361
|
|
|
406
|
-
|
|
407
|
-
return Promise.all(texturePromises).then(function () {
|
|
408
|
-
const textures = {};
|
|
409
|
-
for (const textureId in textureLoaders) {
|
|
410
|
-
if (textureLoaders.hasOwnProperty(textureId)) {
|
|
411
|
-
const textureLoader = textureLoaders[textureId];
|
|
412
|
-
textures[textureId] = textureLoader.texture;
|
|
413
|
-
}
|
|
414
|
-
}
|
|
415
|
-
return textures;
|
|
416
|
-
});
|
|
362
|
+
return Promise.all(texturePromises);
|
|
417
363
|
}
|
|
418
364
|
|
|
419
|
-
function loadSchema(structuralMetadataLoader) {
|
|
365
|
+
async function loadSchema(structuralMetadataLoader) {
|
|
420
366
|
const extension = defaultValue(
|
|
421
367
|
structuralMetadataLoader._extension,
|
|
422
368
|
structuralMetadataLoader._extensionLegacy
|
|
@@ -427,20 +373,20 @@ function loadSchema(structuralMetadataLoader) {
|
|
|
427
373
|
const resource = structuralMetadataLoader._baseResource.getDerivedResource({
|
|
428
374
|
url: extension.schemaUri,
|
|
429
375
|
});
|
|
430
|
-
schemaLoader = ResourceCache.
|
|
376
|
+
schemaLoader = ResourceCache.getSchemaLoader({
|
|
431
377
|
resource: resource,
|
|
432
378
|
});
|
|
433
379
|
} else {
|
|
434
|
-
schemaLoader = ResourceCache.
|
|
380
|
+
schemaLoader = ResourceCache.getSchemaLoader({
|
|
435
381
|
schema: extension.schema,
|
|
436
382
|
});
|
|
437
383
|
}
|
|
438
384
|
|
|
439
385
|
structuralMetadataLoader._schemaLoader = schemaLoader;
|
|
440
|
-
|
|
441
|
-
|
|
386
|
+
await schemaLoader.load();
|
|
387
|
+
if (!schemaLoader.isDestroyed()) {
|
|
442
388
|
return schemaLoader.schema;
|
|
443
|
-
}
|
|
389
|
+
}
|
|
444
390
|
}
|
|
445
391
|
|
|
446
392
|
/**
|
|
@@ -454,17 +400,68 @@ GltfStructuralMetadataLoader.prototype.process = function (frameState) {
|
|
|
454
400
|
Check.typeOf.object("frameState", frameState);
|
|
455
401
|
//>>includeEnd('debug');
|
|
456
402
|
|
|
457
|
-
if (this._state
|
|
458
|
-
return;
|
|
403
|
+
if (this._state === ResourceLoaderState.READY) {
|
|
404
|
+
return true;
|
|
405
|
+
}
|
|
406
|
+
|
|
407
|
+
if (this._state !== ResourceLoaderState.LOADED) {
|
|
408
|
+
return false;
|
|
459
409
|
}
|
|
460
410
|
|
|
461
411
|
const textureLoaders = this._textureLoaders;
|
|
462
412
|
const textureLoadersLength = textureLoaders.length;
|
|
463
|
-
|
|
413
|
+
let ready = true;
|
|
464
414
|
for (let i = 0; i < textureLoadersLength; ++i) {
|
|
465
415
|
const textureLoader = textureLoaders[i];
|
|
466
|
-
textureLoader.process(frameState);
|
|
416
|
+
const textureReady = textureLoader.process(frameState);
|
|
417
|
+
ready = ready && textureReady;
|
|
418
|
+
}
|
|
419
|
+
|
|
420
|
+
if (!ready) {
|
|
421
|
+
return false;
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
const schema = this._schemaLoader.schema;
|
|
425
|
+
const bufferViews = {};
|
|
426
|
+
for (let i = 0; i < this._bufferViewIds.length; ++i) {
|
|
427
|
+
const bufferViewId = this._bufferViewIds[i];
|
|
428
|
+
const bufferViewLoader = this._bufferViewLoaders[i];
|
|
429
|
+
if (!bufferViewLoader.isDestroyed()) {
|
|
430
|
+
// Copy the typed array and let the underlying ArrayBuffer be freed
|
|
431
|
+
const bufferViewTypedArray = new Uint8Array(bufferViewLoader.typedArray);
|
|
432
|
+
bufferViews[bufferViewId] = bufferViewTypedArray;
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
|
|
436
|
+
const textures = {};
|
|
437
|
+
for (let i = 0; i < this._textureIds.length; ++i) {
|
|
438
|
+
const textureId = this._textureIds[i];
|
|
439
|
+
const textureLoader = textureLoaders[i];
|
|
440
|
+
if (!textureLoader.isDestroyed()) {
|
|
441
|
+
textures[textureId] = textureLoader.texture;
|
|
442
|
+
}
|
|
467
443
|
}
|
|
444
|
+
if (defined(this._extension)) {
|
|
445
|
+
this._structuralMetadata = parseStructuralMetadata({
|
|
446
|
+
extension: this._extension,
|
|
447
|
+
schema: schema,
|
|
448
|
+
bufferViews: bufferViews,
|
|
449
|
+
textures: textures,
|
|
450
|
+
});
|
|
451
|
+
} else {
|
|
452
|
+
this._structuralMetadata = parseFeatureMetadataLegacy({
|
|
453
|
+
extension: this._extensionLegacy,
|
|
454
|
+
schema: schema,
|
|
455
|
+
bufferViews: bufferViews,
|
|
456
|
+
textures: textures,
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
// Buffer views can be unloaded after the data has been copied
|
|
461
|
+
unloadBufferViews(this);
|
|
462
|
+
|
|
463
|
+
this._state = ResourceLoaderState.READY;
|
|
464
|
+
return true;
|
|
468
465
|
};
|
|
469
466
|
|
|
470
467
|
function unloadBufferViews(structuralMetadataLoader) {
|
|
@@ -474,6 +471,7 @@ function unloadBufferViews(structuralMetadataLoader) {
|
|
|
474
471
|
ResourceCache.unload(bufferViewLoaders[i]);
|
|
475
472
|
}
|
|
476
473
|
structuralMetadataLoader._bufferViewLoaders.length = 0;
|
|
474
|
+
structuralMetadataLoader._bufferViewIds.length = 0;
|
|
477
475
|
}
|
|
478
476
|
|
|
479
477
|
function unloadTextures(structuralMetadataLoader) {
|
|
@@ -483,6 +481,7 @@ function unloadTextures(structuralMetadataLoader) {
|
|
|
483
481
|
ResourceCache.unload(textureLoaders[i]);
|
|
484
482
|
}
|
|
485
483
|
structuralMetadataLoader._textureLoaders.length = 0;
|
|
484
|
+
structuralMetadataLoader._textureIds.length = 0;
|
|
486
485
|
}
|
|
487
486
|
|
|
488
487
|
/**
|
|
@@ -22,15 +22,15 @@ import resizeImageToNextPowerOfTwo from "../Core/resizeImageToNextPowerOfTwo.js"
|
|
|
22
22
|
* @constructor
|
|
23
23
|
* @augments ResourceLoader
|
|
24
24
|
*
|
|
25
|
-
* @param {
|
|
25
|
+
* @param {object} options Object with the following properties:
|
|
26
26
|
* @param {ResourceCache} options.resourceCache The {@link ResourceCache} (to avoid circular dependencies).
|
|
27
|
-
* @param {
|
|
28
|
-
* @param {
|
|
27
|
+
* @param {object} options.gltf The glTF JSON.
|
|
28
|
+
* @param {object} options.textureInfo The texture info object.
|
|
29
29
|
* @param {Resource} options.gltfResource The {@link Resource} containing the glTF.
|
|
30
30
|
* @param {Resource} options.baseResource The {@link Resource} that paths in the glTF JSON are relative to.
|
|
31
31
|
* @param {SupportedImageFormats} options.supportedImageFormats The supported image formats.
|
|
32
|
-
* @param {
|
|
33
|
-
* @param {
|
|
32
|
+
* @param {string} [options.cacheKey] The cache key of the resource.
|
|
33
|
+
* @param {boolean} [options.asynchronous=true] Determines if WebGL resource creation will be spread out over several frames or block until all WebGL resources are created.
|
|
34
34
|
*
|
|
35
35
|
* @private
|
|
36
36
|
*/
|
|
@@ -78,7 +78,6 @@ function GltfTextureLoader(options) {
|
|
|
78
78
|
this._texture = undefined;
|
|
79
79
|
this._state = ResourceLoaderState.UNLOADED;
|
|
80
80
|
this._promise = undefined;
|
|
81
|
-
this._process = function (loader, frameState) {};
|
|
82
81
|
}
|
|
83
82
|
|
|
84
83
|
if (defined(Object.create)) {
|
|
@@ -87,26 +86,12 @@ if (defined(Object.create)) {
|
|
|
87
86
|
}
|
|
88
87
|
|
|
89
88
|
Object.defineProperties(GltfTextureLoader.prototype, {
|
|
90
|
-
/**
|
|
91
|
-
* A promise that resolves to the resource when the resource is ready, or undefined if the resource hasn't started loading.
|
|
92
|
-
*
|
|
93
|
-
* @memberof GltfTextureLoader.prototype
|
|
94
|
-
*
|
|
95
|
-
* @type {Promise.<GltfTextureLoader>|undefined}
|
|
96
|
-
* @readonly
|
|
97
|
-
* @private
|
|
98
|
-
*/
|
|
99
|
-
promise: {
|
|
100
|
-
get: function () {
|
|
101
|
-
return this._promise;
|
|
102
|
-
},
|
|
103
|
-
},
|
|
104
89
|
/**
|
|
105
90
|
* The cache key of the resource.
|
|
106
91
|
*
|
|
107
92
|
* @memberof GltfTextureLoader.prototype
|
|
108
93
|
*
|
|
109
|
-
* @type {
|
|
94
|
+
* @type {string}
|
|
110
95
|
* @readonly
|
|
111
96
|
* @private
|
|
112
97
|
*/
|
|
@@ -133,92 +118,52 @@ Object.defineProperties(GltfTextureLoader.prototype, {
|
|
|
133
118
|
|
|
134
119
|
const scratchTextureJob = new CreateTextureJob();
|
|
135
120
|
|
|
121
|
+
async function loadResources(loader) {
|
|
122
|
+
const resourceCache = loader._resourceCache;
|
|
123
|
+
try {
|
|
124
|
+
const imageLoader = resourceCache.getImageLoader({
|
|
125
|
+
gltf: loader._gltf,
|
|
126
|
+
imageId: loader._imageId,
|
|
127
|
+
gltfResource: loader._gltfResource,
|
|
128
|
+
baseResource: loader._baseResource,
|
|
129
|
+
});
|
|
130
|
+
loader._imageLoader = imageLoader;
|
|
131
|
+
await imageLoader.load();
|
|
132
|
+
|
|
133
|
+
if (loader.isDestroyed()) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// Now wait for process() to run to finish loading
|
|
138
|
+
loader._image = imageLoader.image;
|
|
139
|
+
loader._mipLevels = imageLoader.mipLevels;
|
|
140
|
+
loader._state = ResourceLoaderState.LOADED;
|
|
141
|
+
|
|
142
|
+
return loader;
|
|
143
|
+
} catch (error) {
|
|
144
|
+
if (loader.isDestroyed()) {
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
loader.unload();
|
|
149
|
+
loader._state = ResourceLoaderState.FAILED;
|
|
150
|
+
const errorMessage = "Failed to load texture";
|
|
151
|
+
throw loader.getError(errorMessage, error);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
136
155
|
/**
|
|
137
156
|
* Loads the resource.
|
|
138
|
-
* @returns {Promise
|
|
157
|
+
* @returns {Promise<GltfDracoLoader>} A promise which resolves to the loader when the resource loading is completed.
|
|
139
158
|
* @private
|
|
140
159
|
*/
|
|
141
|
-
GltfTextureLoader.prototype.load = function () {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
imageId: this._imageId,
|
|
146
|
-
gltfResource: this._gltfResource,
|
|
147
|
-
baseResource: this._baseResource,
|
|
148
|
-
});
|
|
160
|
+
GltfTextureLoader.prototype.load = async function () {
|
|
161
|
+
if (defined(this._promise)) {
|
|
162
|
+
return this._promise;
|
|
163
|
+
}
|
|
149
164
|
|
|
150
|
-
this._imageLoader = imageLoader;
|
|
151
165
|
this._state = ResourceLoaderState.LOADING;
|
|
152
|
-
|
|
153
|
-
const processPromise = new Promise(function (resolve) {
|
|
154
|
-
that._process = function (loader, frameState) {
|
|
155
|
-
if (defined(loader._texture)) {
|
|
156
|
-
// Already created texture
|
|
157
|
-
return;
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
if (!defined(loader._image)) {
|
|
161
|
-
// Not ready to create texture
|
|
162
|
-
return;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
let texture;
|
|
166
|
-
|
|
167
|
-
if (loader._asynchronous) {
|
|
168
|
-
const textureJob = scratchTextureJob;
|
|
169
|
-
textureJob.set(
|
|
170
|
-
loader._gltf,
|
|
171
|
-
loader._textureInfo,
|
|
172
|
-
loader._image,
|
|
173
|
-
loader._mipLevels,
|
|
174
|
-
frameState.context
|
|
175
|
-
);
|
|
176
|
-
const jobScheduler = frameState.jobScheduler;
|
|
177
|
-
if (!jobScheduler.execute(textureJob, JobType.TEXTURE)) {
|
|
178
|
-
// Job scheduler is full. Try again next frame.
|
|
179
|
-
return;
|
|
180
|
-
}
|
|
181
|
-
texture = textureJob.texture;
|
|
182
|
-
} else {
|
|
183
|
-
texture = createTexture(
|
|
184
|
-
loader._gltf,
|
|
185
|
-
loader._textureInfo,
|
|
186
|
-
loader._image,
|
|
187
|
-
loader._mipLevels,
|
|
188
|
-
frameState.context
|
|
189
|
-
);
|
|
190
|
-
}
|
|
191
|
-
|
|
192
|
-
// Unload everything except the texture
|
|
193
|
-
loader.unload();
|
|
194
|
-
|
|
195
|
-
loader._texture = texture;
|
|
196
|
-
loader._state = ResourceLoaderState.READY;
|
|
197
|
-
resolve(loader);
|
|
198
|
-
};
|
|
199
|
-
});
|
|
200
|
-
|
|
201
|
-
this._promise = imageLoader.promise
|
|
202
|
-
.then(function () {
|
|
203
|
-
if (that.isDestroyed()) {
|
|
204
|
-
return;
|
|
205
|
-
}
|
|
206
|
-
// Now wait for process() to run to finish loading
|
|
207
|
-
that._image = imageLoader.image;
|
|
208
|
-
that._mipLevels = imageLoader.mipLevels;
|
|
209
|
-
that._state = ResourceLoaderState.PROCESSING;
|
|
210
|
-
return processPromise;
|
|
211
|
-
})
|
|
212
|
-
.catch(function (error) {
|
|
213
|
-
if (that.isDestroyed()) {
|
|
214
|
-
return;
|
|
215
|
-
}
|
|
216
|
-
that.unload();
|
|
217
|
-
that._state = ResourceLoaderState.FAILED;
|
|
218
|
-
const errorMessage = "Failed to load texture";
|
|
219
|
-
return Promise.reject(that.getError(errorMessage, error));
|
|
220
|
-
});
|
|
221
|
-
|
|
166
|
+
this._promise = loadResources(this);
|
|
222
167
|
return this._promise;
|
|
223
168
|
};
|
|
224
169
|
|
|
@@ -350,6 +295,7 @@ function createTexture(gltf, textureInfo, image, mipLevels, context) {
|
|
|
350
295
|
* Processes the resource until it becomes ready.
|
|
351
296
|
*
|
|
352
297
|
* @param {FrameState} frameState The frame state.
|
|
298
|
+
* @returns {boolean} true once all resourced are ready.
|
|
353
299
|
* @private
|
|
354
300
|
*/
|
|
355
301
|
GltfTextureLoader.prototype.process = function (frameState) {
|
|
@@ -357,7 +303,62 @@ GltfTextureLoader.prototype.process = function (frameState) {
|
|
|
357
303
|
Check.typeOf.object("frameState", frameState);
|
|
358
304
|
//>>includeEnd('debug');
|
|
359
305
|
|
|
360
|
-
|
|
306
|
+
if (this._state === ResourceLoaderState.READY) {
|
|
307
|
+
return true;
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
if (
|
|
311
|
+
this._state !== ResourceLoaderState.LOADED &&
|
|
312
|
+
this._state !== ResourceLoaderState.PROCESSING
|
|
313
|
+
) {
|
|
314
|
+
return false;
|
|
315
|
+
}
|
|
316
|
+
|
|
317
|
+
if (defined(this._texture)) {
|
|
318
|
+
// Already created texture
|
|
319
|
+
return false;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
if (!defined(this._image)) {
|
|
323
|
+
// Not ready to create texture
|
|
324
|
+
return false;
|
|
325
|
+
}
|
|
326
|
+
|
|
327
|
+
this._state = ResourceLoaderState.PROCESSING;
|
|
328
|
+
|
|
329
|
+
let texture;
|
|
330
|
+
if (this._asynchronous) {
|
|
331
|
+
const textureJob = scratchTextureJob;
|
|
332
|
+
textureJob.set(
|
|
333
|
+
this._gltf,
|
|
334
|
+
this._textureInfo,
|
|
335
|
+
this._image,
|
|
336
|
+
this._mipLevels,
|
|
337
|
+
frameState.context
|
|
338
|
+
);
|
|
339
|
+
const jobScheduler = frameState.jobScheduler;
|
|
340
|
+
if (!jobScheduler.execute(textureJob, JobType.TEXTURE)) {
|
|
341
|
+
// Job scheduler is full. Try again next frame.
|
|
342
|
+
return;
|
|
343
|
+
}
|
|
344
|
+
texture = textureJob.texture;
|
|
345
|
+
} else {
|
|
346
|
+
texture = createTexture(
|
|
347
|
+
this._gltf,
|
|
348
|
+
this._textureInfo,
|
|
349
|
+
this._image,
|
|
350
|
+
this._mipLevels,
|
|
351
|
+
frameState.context
|
|
352
|
+
);
|
|
353
|
+
}
|
|
354
|
+
|
|
355
|
+
// Unload everything except the texture
|
|
356
|
+
this.unload();
|
|
357
|
+
|
|
358
|
+
this._texture = texture;
|
|
359
|
+
this._state = ResourceLoaderState.READY;
|
|
360
|
+
this._resourceCache.statistics.addTextureLoader(this);
|
|
361
|
+
return true;
|
|
361
362
|
};
|
|
362
363
|
|
|
363
364
|
/**
|
|
@@ -369,7 +370,7 @@ GltfTextureLoader.prototype.unload = function () {
|
|
|
369
370
|
this._texture.destroy();
|
|
370
371
|
}
|
|
371
372
|
|
|
372
|
-
if (defined(this._imageLoader)) {
|
|
373
|
+
if (defined(this._imageLoader) && !this._imageLoader.isDestroyed()) {
|
|
373
374
|
this._resourceCache.unload(this._imageLoader);
|
|
374
375
|
}
|
|
375
376
|
|