@cesium/engine 11.0.0 → 12.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-HFPMX5L2.js → chunk-2B5H7KIN.js} +1 -1
- package/Build/Workers/{chunk-KKAEXHDY.js → chunk-2RHMHHJH.js} +2 -2
- package/Build/Workers/{chunk-AI3O7UN2.js → chunk-3OHDXGFC.js} +6 -6
- package/Build/Workers/{chunk-TTI2SUWJ.js → chunk-3OM5QZSI.js} +2 -2
- package/Build/Workers/{chunk-2EDC3QGH.js → chunk-3UJV3W4Y.js} +1 -1
- package/Build/Workers/{chunk-N3BIL6WA.js → chunk-3X2LXRHU.js} +13 -13
- package/Build/Workers/{chunk-FJT3ERV7.js → chunk-4ESQ3DN2.js} +9 -9
- package/Build/Workers/{chunk-HO2NTC7I.js → chunk-4IQPX22D.js} +6 -6
- package/Build/Workers/{chunk-L6FARMF6.js → chunk-4XPGN5Y7.js} +11 -11
- package/Build/Workers/{chunk-4NBRIKB3.js → chunk-56LALJCU.js} +2 -2
- package/Build/Workers/{chunk-HC7RYWPZ.js → chunk-5FSKL7US.js} +12 -12
- package/Build/Workers/{chunk-54VC7SCM.js → chunk-5YKJKOFE.js} +7 -7
- package/Build/Workers/{chunk-6ZREIBKS.js → chunk-62YGXNGC.js} +7 -7
- package/Build/Workers/{chunk-BH5ZEN4I.js → chunk-6DYMJ57Z.js} +10 -10
- package/Build/Workers/{chunk-AS7P4BHI.js → chunk-7DSVCRFD.js} +6 -6
- package/Build/Workers/{chunk-6FFGOENI.js → chunk-7OISMGQF.js} +46 -23
- package/Build/Workers/{chunk-BJ3WF5RW.js → chunk-AL7BHP36.js} +6 -6
- package/Build/Workers/{chunk-WQRXRDCZ.js → chunk-AOCENJVH.js} +11 -11
- package/Build/Workers/{chunk-2MKRG7L7.js → chunk-ARTM66DL.js} +5 -5
- package/Build/Workers/{chunk-VSFFJGTA.js → chunk-B4AZL6Q4.js} +5 -5
- package/Build/Workers/{chunk-5IY5BXCT.js → chunk-BQNTN4CC.js} +83 -79
- package/Build/Workers/{chunk-AUM45VEG.js → chunk-C4IAULHW.js} +15 -15
- package/Build/Workers/{chunk-6PJIHPQB.js → chunk-ES6Q5HWK.js} +13 -13
- package/Build/Workers/{chunk-DVAIU7A4.js → chunk-GKBICLGC.js} +19 -23
- package/Build/Workers/{chunk-IBG5FVXC.js → chunk-GMGUR5GM.js} +4 -4
- package/Build/Workers/{chunk-OOA6GXKD.js → chunk-GUW6BS72.js} +7 -7
- package/Build/Workers/{chunk-KFW4UNQH.js → chunk-GYHHNFW5.js} +15 -25
- package/Build/Workers/{chunk-GOHDOWU5.js → chunk-GZG526CC.js} +14 -14
- package/Build/Workers/{chunk-BZXF3GNX.js → chunk-HILBDZUP.js} +2 -2
- package/Build/Workers/{chunk-BBO6BGLC.js → chunk-HYUTWUXN.js} +13 -13
- package/Build/Workers/{chunk-HA6TZ3XT.js → chunk-IL6SMMDD.js} +4 -4
- package/Build/Workers/{chunk-T4MB73MC.js → chunk-IT6AWHFV.js} +2 -2
- package/Build/Workers/{chunk-SRZJCF7G.js → chunk-J64XIF5C.js} +10 -36
- package/Build/Workers/{chunk-BUOFSNFW.js → chunk-JGGZ3H4W.js} +1 -1
- package/Build/Workers/{chunk-SIZXFNJY.js → chunk-JRULXFCC.js} +5 -5
- package/Build/Workers/{chunk-QGT2GMOK.js → chunk-MSY2AAW2.js} +4 -4
- package/Build/Workers/{chunk-XLCZE6DD.js → chunk-QXBRZZQS.js} +10 -10
- package/Build/Workers/{chunk-JYUCC5NV.js → chunk-SXJ37VUC.js} +7 -7
- package/Build/Workers/{chunk-OC4MYPVW.js → chunk-T6FZFMTF.js} +2 -2
- package/Build/Workers/{chunk-OSCHEWSG.js → chunk-TQK4D4AR.js} +7 -7
- package/Build/Workers/{chunk-2RZYNSMR.js → chunk-US3L7FXC.js} +7 -9
- package/Build/Workers/{chunk-RFQYEYAL.js → chunk-VGT4ONMC.js} +18 -20
- package/Build/Workers/{chunk-VHJ5ESXF.js → chunk-VJVTWBXB.js} +1 -1
- package/Build/Workers/{chunk-RJF5ZP76.js → chunk-VQZNBD3T.js} +4 -4
- package/Build/Workers/{chunk-WXDGOYTT.js → chunk-VUCVRDLD.js} +7 -7
- package/Build/Workers/{chunk-DJXXI7UF.js → chunk-W2Q2F7JS.js} +5 -5
- package/Build/Workers/{chunk-HZPMWR4H.js → chunk-WQCX7U65.js} +7 -7
- package/Build/Workers/{chunk-HFMJM3SX.js → chunk-WW5RTJ72.js} +1 -1
- package/Build/Workers/{chunk-IXLNNST6.js → chunk-X67KKHI7.js} +4 -4
- package/Build/Workers/{chunk-4TK5YR6Q.js → chunk-X7VRF25X.js} +5 -5
- package/Build/Workers/{chunk-O5SSW3B3.js → chunk-YANQEHO5.js} +6 -6
- package/Build/Workers/{chunk-HBZSCVZC.js → chunk-ZZNBFQL5.js} +11 -11
- package/Build/Workers/combineGeometry.js +23 -25
- package/Build/Workers/createBoxGeometry.js +16 -16
- package/Build/Workers/createBoxOutlineGeometry.js +14 -14
- package/Build/Workers/createCircleGeometry.js +24 -24
- package/Build/Workers/createCircleOutlineGeometry.js +17 -17
- package/Build/Workers/createCoplanarPolygonGeometry.js +31 -31
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +29 -29
- package/Build/Workers/createCorridorGeometry.js +27 -27
- package/Build/Workers/createCorridorOutlineGeometry.js +26 -26
- package/Build/Workers/createCylinderGeometry.js +18 -18
- package/Build/Workers/createCylinderOutlineGeometry.js +16 -16
- package/Build/Workers/createEllipseGeometry.js +24 -24
- package/Build/Workers/createEllipseOutlineGeometry.js +17 -17
- package/Build/Workers/createEllipsoidGeometry.js +17 -17
- package/Build/Workers/createEllipsoidOutlineGeometry.js +16 -16
- package/Build/Workers/createFrustumGeometry.js +16 -16
- package/Build/Workers/createFrustumOutlineGeometry.js +16 -16
- package/Build/Workers/createGeometry.js +25 -26
- package/Build/Workers/createGroundPolylineGeometry.js +20 -20
- package/Build/Workers/createPlaneGeometry.js +14 -14
- package/Build/Workers/createPlaneOutlineGeometry.js +13 -13
- package/Build/Workers/createPolygonGeometry.js +36 -40
- package/Build/Workers/createPolygonOutlineGeometry.js +40 -48
- package/Build/Workers/createPolylineGeometry.js +23 -23
- package/Build/Workers/createPolylineVolumeGeometry.js +32 -31
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +25 -25
- package/Build/Workers/createRectangleGeometry.js +28 -30
- package/Build/Workers/createRectangleOutlineGeometry.js +19 -19
- package/Build/Workers/createSimplePolylineGeometry.js +21 -21
- package/Build/Workers/createSphereGeometry.js +17 -17
- package/Build/Workers/createSphereOutlineGeometry.js +16 -16
- package/Build/Workers/createTaskProcessorWorker.js +3 -3
- package/Build/Workers/createVectorTileClampedPolylines.js +13 -13
- package/Build/Workers/createVectorTileGeometries.js +22 -22
- package/Build/Workers/createVectorTilePoints.js +12 -12
- package/Build/Workers/createVectorTilePolygons.js +20 -20
- package/Build/Workers/createVectorTilePolylines.js +13 -13
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +22 -26
- package/Build/Workers/createVerticesFromHeightmap.js +22 -26
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +42 -32
- package/Build/Workers/createWallGeometry.js +22 -22
- package/Build/Workers/createWallOutlineGeometry.js +21 -21
- package/Build/Workers/decodeDraco.js +11 -11
- package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +5 -5
- package/Build/Workers/decodeI3S.js +10 -10
- package/Build/Workers/transcodeKTX2.js +7 -7
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +20 -20
- package/Source/Core/ApproximateTerrainHeights.js +15 -15
- package/Source/Core/ArcGISTiledElevationTerrainProvider.js +33 -35
- package/Source/Core/AttributeCompression.js +12 -12
- package/Source/Core/AxisAlignedBoundingBox.js +2 -2
- package/Source/Core/BingMapsGeocoderService.js +1 -1
- package/Source/Core/BoundingRectangle.js +3 -3
- package/Source/Core/BoundingSphere.js +45 -45
- package/Source/Core/BoxGeometry.js +6 -6
- package/Source/Core/BoxOutlineGeometry.js +3 -3
- package/Source/Core/Cartesian2.js +7 -7
- package/Source/Core/Cartesian3.js +20 -20
- package/Source/Core/Cartesian4.js +8 -8
- package/Source/Core/Cartographic.js +6 -6
- package/Source/Core/CatmullRomSpline.js +6 -6
- package/Source/Core/CesiumTerrainProvider.js +66 -68
- package/Source/Core/Check.d.ts +3 -3
- package/Source/Core/Check.js +11 -11
- package/Source/Core/CircleGeometry.js +6 -6
- package/Source/Core/CircleOutlineGeometry.js +4 -4
- package/Source/Core/Clock.js +4 -4
- package/Source/Core/Color.js +12 -9
- package/Source/Core/ColorGeometryInstanceAttribute.js +1 -1
- package/Source/Core/ComponentDatatype.js +4 -4
- package/Source/Core/CompressedTextureBuffer.js +2 -2
- package/Source/Core/ConstantSpline.js +1 -1
- package/Source/Core/CoplanarPolygonGeometry.js +44 -41
- package/Source/Core/CoplanarPolygonGeometryLibrary.js +5 -5
- package/Source/Core/CoplanarPolygonOutlineGeometry.js +6 -6
- package/Source/Core/CorridorGeometry.js +77 -77
- package/Source/Core/CorridorGeometryLibrary.js +48 -48
- package/Source/Core/CorridorOutlineGeometry.js +16 -16
- package/Source/Core/CullingVolume.js +4 -4
- package/Source/Core/CustomHeightmapTerrainProvider.js +13 -13
- package/Source/Core/CylinderGeometry.js +8 -8
- package/Source/Core/CylinderGeometryLibrary.js +1 -1
- package/Source/Core/CylinderOutlineGeometry.js +4 -4
- package/Source/Core/DeveloperError.js +1 -1
- package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +20 -21
- package/Source/Core/DoubleEndedPriorityQueue.js +2 -2
- package/Source/Core/EarthOrientationParameters.js +21 -25
- package/Source/Core/EarthOrientationParametersSample.js +1 -1
- package/Source/Core/EllipseGeometry.js +55 -56
- package/Source/Core/EllipseGeometryLibrary.js +12 -12
- package/Source/Core/EllipseOutlineGeometry.js +19 -19
- package/Source/Core/Ellipsoid.js +25 -33
- package/Source/Core/EllipsoidGeodesic.js +18 -17
- package/Source/Core/EllipsoidGeometry.js +9 -8
- package/Source/Core/EllipsoidOutlineGeometry.js +4 -4
- package/Source/Core/EllipsoidRhumbLine.js +33 -32
- package/Source/Core/EllipsoidTangentPlane.js +16 -16
- package/Source/Core/EllipsoidTerrainProvider.js +11 -10
- package/Source/Core/EllipsoidalOccluder.js +110 -130
- package/Source/Core/FeatureDetection.js +4 -4
- package/Source/Core/FrustumGeometry.js +15 -15
- package/Source/Core/FrustumOutlineGeometry.js +4 -4
- package/Source/Core/GeographicTilingScheme.js +6 -6
- package/Source/Core/Geometry.js +15 -17
- package/Source/Core/GeometryAttribute.js +4 -9
- package/Source/Core/GeometryAttributes.js +6 -6
- package/Source/Core/GeometryInstance.js +3 -4
- package/Source/Core/GeometryInstanceAttribute.js +1 -6
- package/Source/Core/GeometryPipeline.js +133 -137
- package/Source/Core/GoogleEarthEnterpriseMetadata.js +19 -20
- package/Source/Core/GoogleEarthEnterpriseTerrainData.js +25 -24
- package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +17 -21
- package/Source/Core/GoogleEarthEnterpriseTileInformation.js +2 -2
- package/Source/Core/GoogleMaps.js +1 -1
- package/Source/Core/GregorianDate.js +4 -4
- package/Source/Core/GroundPolylineGeometry.js +104 -104
- package/Source/Core/HeadingPitchRoll.js +7 -7
- package/Source/Core/HeightmapTerrainData.js +58 -54
- package/Source/Core/HeightmapTessellator.js +22 -23
- package/Source/Core/HermitePolynomialApproximation.js +8 -8
- package/Source/Core/HermiteSpline.js +11 -11
- package/Source/Core/HilbertOrder.js +1 -1
- package/Source/Core/Iau2006XysData.js +6 -6
- package/Source/Core/IauOrientationAxes.js +2 -2
- package/Source/Core/IauOrientationParameters.js +1 -1
- package/Source/Core/IndexDatatype.js +5 -5
- package/Source/Core/IntersectionTests.js +36 -78
- package/Source/Core/Intersections2D.js +3 -3
- package/Source/Core/Ion.js +1 -1
- package/Source/Core/IonGeocoderService.js +2 -2
- package/Source/Core/IonResource.js +5 -5
- package/Source/Core/Iso8601.js +3 -3
- package/Source/Core/JulianDate.js +23 -33
- package/Source/Core/KTX2Transcoder.js +2 -2
- package/Source/Core/LagrangePolynomialApproximation.js +1 -1
- package/Source/Core/LinearApproximation.js +4 -4
- package/Source/Core/LinearSpline.js +2 -2
- package/Source/Core/Math.js +6 -4
- package/Source/Core/Matrix2.js +3 -3
- package/Source/Core/Matrix3.js +16 -16
- package/Source/Core/Matrix4.js +31 -31
- package/Source/Core/MorphWeightSpline.js +2 -2
- package/Source/Core/NearFarScalar.js +1 -1
- package/Source/Core/Occluder.js +52 -56
- package/Source/Core/OpenCageGeocoderService.js +2 -2
- package/Source/Core/OrientedBoundingBox.js +52 -51
- package/Source/Core/OrthographicFrustum.js +11 -11
- package/Source/Core/OrthographicOffCenterFrustum.js +17 -17
- package/Source/Core/PeliasGeocoderService.js +1 -1
- package/Source/Core/PerspectiveFrustum.js +61 -55
- package/Source/Core/PerspectiveOffCenterFrustum.js +58 -59
- package/Source/Core/PinBuilder.js +1 -1
- package/Source/Core/PixelFormat.js +6 -6
- package/Source/Core/Plane.js +9 -9
- package/Source/Core/PlaneGeometry.js +1 -1
- package/Source/Core/PolygonGeometry.js +95 -94
- package/Source/Core/PolygonGeometryLibrary.js +49 -51
- package/Source/Core/PolygonOutlineGeometry.js +49 -51
- package/Source/Core/PolygonPipeline.js +31 -31
- package/Source/Core/PolylineGeometry.js +10 -10
- package/Source/Core/PolylinePipeline.js +25 -25
- package/Source/Core/PolylineVolumeGeometry.js +9 -9
- package/Source/Core/PolylineVolumeGeometryLibrary.js +53 -53
- package/Source/Core/PolylineVolumeOutlineGeometry.js +6 -6
- package/Source/Core/QuadraticRealPolynomial.js +1 -1
- package/Source/Core/QuantizedMeshTerrainData.js +28 -28
- package/Source/Core/QuarticRealPolynomial.js +1 -1
- package/Source/Core/Quaternion.js +19 -19
- package/Source/Core/QuaternionSpline.js +2 -2
- package/Source/Core/Rectangle.js +34 -13
- package/Source/Core/RectangleCollisionChecker.js +3 -3
- package/Source/Core/RectangleGeometry.js +55 -56
- package/Source/Core/RectangleGeometryLibrary.js +8 -8
- package/Source/Core/RectangleOutlineGeometry.js +20 -20
- package/Source/Core/RequestScheduler.js +6 -6
- package/Source/Core/Resource.js +24 -24
- package/Source/Core/S2Cell.js +16 -80
- package/Source/Core/ScreenSpaceEventHandler.js +54 -53
- package/Source/Core/Simon1994PlanetaryPositions.js +13 -13
- package/Source/Core/SimplePolylineGeometry.js +7 -7
- package/Source/Core/SphereGeometry.js +2 -2
- package/Source/Core/SphereOutlineGeometry.js +3 -3
- package/Source/Core/Spline.js +1 -1
- package/Source/Core/SteppedSpline.js +1 -1
- package/Source/Core/Stereographic.js +9 -9
- package/Source/Core/TaskProcessor.js +13 -13
- package/Source/Core/TerrainEncoding.js +33 -38
- package/Source/Core/TerrainMesh.js +1 -1
- package/Source/Core/TerrainProvider.js +12 -12
- package/Source/Core/TileAvailability.js +28 -28
- package/Source/Core/TileProviderError.js +5 -5
- package/Source/Core/TilingScheme.js +1 -1
- package/Source/Core/TimeInterval.js +4 -4
- package/Source/Core/TimeIntervalCollection.js +16 -15
- package/Source/Core/Tipsify.js +2 -2
- package/Source/Core/Transforms.js +52 -54
- package/Source/Core/TranslationRotationScale.js +1 -1
- package/Source/Core/TridiagonalSystemSolver.js +4 -4
- package/Source/Core/VRTheWorldTerrainProvider.js +28 -26
- package/Source/Core/VertexFormat.js +6 -6
- package/Source/Core/VerticalExaggeration.js +4 -4
- package/Source/Core/VideoSynchronizer.js +1 -1
- package/Source/Core/WallGeometry.js +18 -18
- package/Source/Core/WallGeometryLibrary.js +7 -7
- package/Source/Core/WallOutlineGeometry.js +8 -8
- package/Source/Core/WebMercatorProjection.js +5 -6
- package/Source/Core/WebMercatorTilingScheme.js +13 -13
- package/Source/Core/WireframeIndexGenerator.js +8 -8
- package/Source/Core/arrayRemoveDuplicates.js +1 -1
- package/Source/Core/buildModuleUrl.js +2 -2
- package/Source/Core/decodeGoogleEarthEnterpriseData.js +4 -4
- package/Source/Core/decodeVectorPolylinePositions.js +4 -4
- package/Source/Core/destroyObject.js +1 -1
- package/Source/Core/getJsonFromTypedArray.js +1 -1
- package/Source/Core/getMagic.js +1 -1
- package/Source/Core/loadImageFromTypedArray.js +2 -2
- package/Source/Core/loadKTX2.js +1 -1
- package/Source/Core/pointInsideTriangle.js +1 -1
- package/Source/Core/resizeImageToNextPowerOfTwo.js +1 -1
- package/Source/Core/sampleTerrain.js +7 -7
- package/Source/Core/sampleTerrainMostDetailed.js +7 -7
- package/Source/Core/scaleToGeodeticSurface.js +3 -3
- package/Source/Core/srgbToLinear.js +1 -1
- package/Source/Core/writeTextToCanvas.js +1 -1
- package/Source/DataSources/BillboardGraphics.js +13 -13
- package/Source/DataSources/BillboardVisualizer.js +24 -24
- package/Source/DataSources/BoxGeometryUpdater.js +33 -32
- package/Source/DataSources/BoxGraphics.js +3 -3
- package/Source/DataSources/CallbackPositionProperty.js +173 -0
- package/Source/DataSources/Cesium3DTilesetGraphics.js +1 -1
- package/Source/DataSources/Cesium3DTilesetVisualizer.js +6 -6
- package/Source/DataSources/CheckerboardMaterialProperty.js +2 -2
- package/Source/DataSources/ColorMaterialProperty.js +1 -1
- package/Source/DataSources/CompositeEntityCollection.js +14 -15
- package/Source/DataSources/CompositeMaterialProperty.js +5 -7
- package/Source/DataSources/CompositePositionProperty.js +4 -5
- package/Source/DataSources/CompositeProperty.js +2 -2
- package/Source/DataSources/ConstantPositionProperty.js +2 -2
- package/Source/DataSources/CorridorGeometryUpdater.js +61 -56
- package/Source/DataSources/CorridorGraphics.js +6 -6
- package/Source/DataSources/CylinderGeometryUpdater.js +42 -40
- package/Source/DataSources/CylinderGraphics.js +4 -4
- package/Source/DataSources/CzmlDataSource.js +365 -368
- package/Source/DataSources/DataSourceCollection.js +1 -1
- package/Source/DataSources/DataSourceDisplay.js +24 -24
- package/Source/DataSources/DynamicGeometryBatch.js +2 -2
- package/Source/DataSources/DynamicGeometryUpdater.js +14 -18
- package/Source/DataSources/EllipseGeometryUpdater.js +67 -63
- package/Source/DataSources/EllipseGraphics.js +7 -7
- package/Source/DataSources/EllipsoidGeometryUpdater.js +88 -86
- package/Source/DataSources/EllipsoidGraphics.js +5 -5
- package/Source/DataSources/Entity.js +13 -13
- package/Source/DataSources/EntityCluster.js +29 -27
- package/Source/DataSources/EntityCollection.js +7 -7
- package/Source/DataSources/EntityView.js +23 -23
- package/Source/DataSources/GeoJsonDataSource.js +25 -25
- package/Source/DataSources/GeometryUpdater.js +9 -10
- package/Source/DataSources/GeometryUpdaterSet.js +3 -3
- package/Source/DataSources/GeometryVisualizer.js +65 -71
- package/Source/DataSources/GpxDataSource.js +10 -10
- package/Source/DataSources/GridMaterialProperty.js +5 -5
- package/Source/DataSources/GroundGeometryUpdater.js +6 -6
- package/Source/DataSources/ImageMaterialProperty.js +2 -2
- package/Source/DataSources/KmlDataSource.js +212 -212
- package/Source/DataSources/LabelGraphics.js +14 -14
- package/Source/DataSources/LabelVisualizer.js +24 -24
- package/Source/DataSources/ModelGraphics.js +38 -17
- package/Source/DataSources/ModelVisualizer.js +41 -32
- package/Source/DataSources/NodeTransformationProperty.js +3 -3
- package/Source/DataSources/PathGraphics.js +2 -2
- package/Source/DataSources/PathVisualizer.js +99 -35
- package/Source/DataSources/PlaneGeometryUpdater.js +38 -37
- package/Source/DataSources/PlaneGraphics.js +2 -2
- package/Source/DataSources/PointGraphics.js +8 -8
- package/Source/DataSources/PointVisualizer.js +29 -29
- package/Source/DataSources/PolygonGeometryUpdater.js +68 -64
- package/Source/DataSources/PolygonGraphics.js +9 -9
- package/Source/DataSources/PolylineArrowMaterialProperty.js +1 -1
- package/Source/DataSources/PolylineDashMaterialProperty.js +4 -4
- package/Source/DataSources/PolylineGeometryUpdater.js +39 -44
- package/Source/DataSources/PolylineGlowMaterialProperty.js +3 -3
- package/Source/DataSources/PolylineGraphics.js +4 -4
- package/Source/DataSources/PolylineOutlineMaterialProperty.js +3 -3
- package/Source/DataSources/PolylineVisualizer.js +39 -43
- package/Source/DataSources/PolylineVolumeGeometryUpdater.js +70 -68
- package/Source/DataSources/PolylineVolumeGraphics.js +2 -2
- package/Source/DataSources/PositionProperty.js +4 -3
- package/Source/DataSources/PositionPropertyArray.js +3 -3
- package/Source/DataSources/Property.js +1 -1
- package/Source/DataSources/PropertyArray.js +1 -1
- package/Source/DataSources/PropertyBag.js +5 -5
- package/Source/DataSources/RectangleGeometryUpdater.js +68 -63
- package/Source/DataSources/RectangleGraphics.js +6 -6
- package/Source/DataSources/ReferenceProperty.js +6 -6
- package/Source/DataSources/Rotation.js +2 -2
- package/Source/DataSources/SampledPositionProperty.js +6 -6
- package/Source/DataSources/SampledProperty.js +16 -16
- package/Source/DataSources/ScaledPositionProperty.js +2 -2
- package/Source/DataSources/StaticGeometryColorBatch.js +41 -41
- package/Source/DataSources/StaticGeometryPerMaterialBatch.js +40 -40
- package/Source/DataSources/StaticGroundGeometryColorBatch.js +26 -27
- package/Source/DataSources/StaticGroundGeometryPerMaterialBatch.js +46 -44
- package/Source/DataSources/StaticGroundPolylinePerMaterialBatch.js +44 -43
- package/Source/DataSources/StaticOutlineGeometryBatch.js +28 -29
- package/Source/DataSources/StripeMaterialProperty.js +2 -2
- package/Source/DataSources/TerrainOffsetProperty.js +11 -11
- package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +28 -30
- package/Source/DataSources/TimeIntervalCollectionProperty.js +1 -1
- package/Source/DataSources/VelocityOrientationProperty.js +3 -3
- package/Source/DataSources/VelocityVectorProperty.js +4 -4
- package/Source/DataSources/WallGeometryUpdater.js +25 -25
- package/Source/DataSources/WallGraphics.js +4 -4
- package/Source/DataSources/createPropertyDescriptor.js +3 -3
- package/Source/DataSources/exportKml.js +90 -86
- package/Source/DataSources/getElement.js +1 -1
- package/Source/DataSources/heightReferenceOnEntityPropertyChanged.js +4 -4
- package/Source/Renderer/AutomaticUniforms.js +14 -1
- package/Source/Renderer/Buffer.js +18 -18
- package/Source/Renderer/ClearCommand.js +1 -1
- package/Source/Renderer/ComputeEngine.js +1 -1
- package/Source/Renderer/Context.js +40 -40
- package/Source/Renderer/CubeMap.js +109 -32
- package/Source/Renderer/CubeMapFace.js +109 -32
- package/Source/Renderer/DrawCommand.js +50 -5
- package/Source/Renderer/Framebuffer.js +48 -49
- package/Source/Renderer/FramebufferManager.js +40 -34
- package/Source/Renderer/MultisampleFramebuffer.js +35 -14
- package/Source/Renderer/RenderState.js +36 -36
- package/Source/Renderer/Renderbuffer.js +3 -3
- package/Source/Renderer/Sampler.js +2 -2
- package/Source/Renderer/ShaderBuilder.js +8 -8
- package/Source/Renderer/ShaderCache.js +11 -15
- package/Source/Renderer/ShaderFunction.js +1 -1
- package/Source/Renderer/ShaderProgram.js +15 -15
- package/Source/Renderer/ShaderSource.js +40 -40
- package/Source/Renderer/Texture.js +74 -63
- package/Source/Renderer/UniformState.js +78 -58
- package/Source/Renderer/VertexArray.js +20 -20
- package/Source/Renderer/VertexArrayFacade.js +15 -16
- package/Source/Renderer/createUniform.js +1 -1
- package/Source/Renderer/createUniformArray.js +4 -4
- package/Source/Renderer/demodernizeShader.js +5 -5
- package/Source/Renderer/loadCubeMap.js +1 -1
- package/Source/Scene/ArcGisMapServerImageryProvider.js +39 -45
- package/Source/Scene/ArcGisMapService.js +4 -7
- package/Source/Scene/Atmosphere.js +22 -0
- package/Source/Scene/AutoExposure.js +4 -5
- package/Source/Scene/Axis.js +6 -6
- package/Source/Scene/B3dmParser.js +9 -9
- package/Source/Scene/BatchTable.js +7 -7
- package/Source/Scene/BatchTableHierarchy.js +62 -59
- package/Source/Scene/BatchTexture.js +2 -2
- package/Source/Scene/Billboard.js +45 -43
- package/Source/Scene/BillboardCollection.js +81 -83
- package/Source/Scene/BingMapsImageryProvider.js +13 -13
- package/Source/Scene/BoundingVolumeSemantics.js +10 -10
- package/Source/Scene/BoxEmitter.js +1 -1
- package/Source/Scene/BufferLoader.js +1 -1
- package/Source/Scene/Camera.js +161 -164
- package/Source/Scene/CameraEventAggregator.js +18 -18
- package/Source/Scene/CameraFlightPath.js +25 -25
- package/Source/Scene/Cesium3DTile.js +89 -95
- package/Source/Scene/Cesium3DTileBatchTable.js +61 -61
- package/Source/Scene/Cesium3DTileContentFactory.js +7 -7
- package/Source/Scene/Cesium3DTileFeature.js +1 -1
- package/Source/Scene/Cesium3DTileFeatureTable.js +8 -8
- package/Source/Scene/Cesium3DTileOptimizations.js +1 -1
- package/Source/Scene/Cesium3DTilePointFeature.js +11 -11
- package/Source/Scene/Cesium3DTileStyle.js +26 -24
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +14 -20
- package/Source/Scene/Cesium3DTileset.js +120 -83
- package/Source/Scene/Cesium3DTilesetBaseTraversal.js +8 -16
- package/Source/Scene/Cesium3DTilesetCache.js +2 -2
- package/Source/Scene/Cesium3DTilesetHeatmap.js +5 -5
- package/Source/Scene/Cesium3DTilesetMetadata.js +2 -2
- package/Source/Scene/Cesium3DTilesetMostDetailedTraversal.js +2 -2
- package/Source/Scene/Cesium3DTilesetSkipTraversal.js +8 -12
- package/Source/Scene/Cesium3DTilesetStatistics.js +1 -1
- package/Source/Scene/Cesium3DTilesetTraversal.js +8 -10
- package/Source/Scene/ClassificationPrimitive.js +70 -69
- package/Source/Scene/ClippingPlaneCollection.js +39 -41
- package/Source/Scene/ClippingPolygon.js +8 -8
- package/Source/Scene/ClippingPolygonCollection.js +62 -63
- package/Source/Scene/CloudCollection.js +3 -10
- package/Source/Scene/Composite3DTileContent.js +6 -6
- package/Source/Scene/ConditionsExpression.js +5 -5
- package/Source/Scene/ContentMetadata.js +4 -4
- package/Source/Scene/CreditDisplay.js +8 -8
- package/Source/Scene/CumulusCloud.js +4 -4
- package/Source/Scene/DebugAppearance.js +2 -2
- package/Source/Scene/DebugCameraPrimitive.js +2 -2
- package/Source/Scene/DebugInspector.js +3 -3
- package/Source/Scene/DebugModelMatrixPrimitive.js +4 -4
- package/Source/Scene/DepthPlane.js +7 -7
- package/Source/Scene/DerivedCommand.js +422 -238
- package/Source/Scene/DiscardMissingTileImagePolicy.js +1 -1
- package/Source/Scene/DracoLoader.js +3 -3
- package/Source/Scene/DynamicEnvironmentMapManager.js +852 -0
- package/Source/Scene/EllipsoidPrimitive.js +7 -7
- package/Source/Scene/EllipsoidSurfaceAppearance.js +3 -3
- package/Source/Scene/Empty3DTileContent.js +1 -1
- package/Source/Scene/Expression.js +91 -91
- package/Source/Scene/Fog.js +76 -116
- package/Source/Scene/FrameRateMonitor.js +22 -22
- package/Source/Scene/FrameState.js +36 -3
- package/Source/Scene/Geometry3DTileContent.js +20 -20
- package/Source/Scene/GetFeatureInfoFormat.js +15 -14
- package/Source/Scene/Globe.js +32 -27
- package/Source/Scene/GlobeDepth.js +95 -66
- package/Source/Scene/GlobeSurfaceShaderSet.js +12 -10
- package/Source/Scene/GlobeSurfaceTile.js +33 -33
- package/Source/Scene/GlobeSurfaceTileProvider.js +127 -124
- package/Source/Scene/GlobeTranslucency.js +4 -4
- package/Source/Scene/GlobeTranslucencyFramebuffer.js +9 -9
- package/Source/Scene/GlobeTranslucencyState.js +53 -55
- package/Source/Scene/GltfBufferViewLoader.js +2 -2
- package/Source/Scene/GltfIndexBufferLoader.js +5 -5
- package/Source/Scene/GltfJsonLoader.js +2 -2
- package/Source/Scene/GltfLoader.js +177 -100
- package/Source/Scene/GltfStructuralMetadataLoader.js +9 -8
- package/Source/Scene/GltfTextureLoader.js +5 -5
- package/Source/Scene/GltfVertexBufferLoader.js +12 -13
- package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +9 -9
- package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +9 -9
- package/Source/Scene/GridImageryProvider.js +2 -2
- package/Source/Scene/GroundPolylinePrimitive.js +38 -39
- package/Source/Scene/GroundPrimitive.js +47 -45
- package/Source/Scene/GroupMetadata.js +4 -4
- package/Source/Scene/I3SDataProvider.js +12 -12
- package/Source/Scene/I3SDecoder.js +7 -8
- package/Source/Scene/I3SField.js +8 -8
- package/Source/Scene/I3SGeometry.js +14 -14
- package/Source/Scene/I3SLayer.js +26 -20
- package/Source/Scene/I3SNode.js +17 -17
- package/Source/Scene/I3SSublayer.js +4 -4
- package/Source/Scene/I3SSymbology.js +8 -8
- package/Source/Scene/I3dmParser.js +9 -9
- package/Source/Scene/ImageBasedLighting.js +32 -87
- package/Source/Scene/Imagery.js +3 -3
- package/Source/Scene/ImageryLayer.js +64 -66
- package/Source/Scene/ImageryLayerCollection.js +13 -15
- package/Source/Scene/ImageryLayerFeatureInfo.js +19 -20
- package/Source/Scene/ImageryProvider.js +1 -1
- package/Source/Scene/Implicit3DTileContent.js +34 -37
- package/Source/Scene/ImplicitAvailabilityBitstream.js +2 -2
- package/Source/Scene/ImplicitMetadataView.js +2 -2
- package/Source/Scene/ImplicitSubtree.js +29 -30
- package/Source/Scene/ImplicitSubtreeCache.js +1 -1
- package/Source/Scene/ImplicitSubtreeMetadata.js +5 -5
- package/Source/Scene/ImplicitTileCoordinates.js +11 -11
- package/Source/Scene/ImplicitTileset.js +2 -2
- package/Source/Scene/InvertClassification.js +7 -7
- package/Source/Scene/IonImageryProvider.js +6 -6
- package/Source/Scene/JobScheduler.js +4 -4
- package/Source/Scene/Label.js +29 -29
- package/Source/Scene/LabelCollection.js +17 -15
- package/Source/Scene/MapboxImageryProvider.js +3 -3
- package/Source/Scene/MapboxStyleImageryProvider.js +4 -4
- package/Source/Scene/Material.js +26 -27
- package/Source/Scene/MaterialAppearance.js +4 -4
- package/Source/Scene/Megatexture.js +21 -24
- package/Source/Scene/MetadataClassProperty.js +11 -11
- package/Source/Scene/MetadataComponentType.js +1 -1
- package/Source/Scene/MetadataEntity.js +8 -8
- package/Source/Scene/MetadataEnum.js +1 -1
- package/Source/Scene/MetadataPicking.js +305 -0
- package/Source/Scene/MetadataSchemaLoader.js +1 -1
- package/Source/Scene/MetadataTable.js +2 -2
- package/Source/Scene/MetadataTableProperty.js +22 -22
- package/Source/Scene/Model/AlphaPipelineStage.js +2 -2
- package/Source/Scene/Model/AtmospherePipelineStage.js +13 -8
- package/Source/Scene/Model/B3dmLoader.js +8 -8
- package/Source/Scene/Model/BatchTexturePipelineStage.js +2 -2
- package/Source/Scene/Model/CPUStylingPipelineStage.js +4 -4
- package/Source/Scene/Model/ClassificationModelDrawCommand.js +8 -8
- package/Source/Scene/Model/ClassificationPipelineStage.js +5 -5
- package/Source/Scene/Model/CustomShader.js +9 -9
- package/Source/Scene/Model/CustomShaderPipelineStage.js +37 -38
- package/Source/Scene/Model/DequantizationPipelineStage.js +5 -5
- package/Source/Scene/Model/Extensions/Gpm/AnchorPointDirect.js +61 -0
- package/Source/Scene/Model/Extensions/Gpm/AnchorPointIndirect.js +77 -0
- package/Source/Scene/Model/Extensions/Gpm/CorrelationGroup.js +81 -0
- package/Source/Scene/Model/Extensions/Gpm/GltfGpmLoader.js +248 -0
- package/Source/Scene/Model/Extensions/Gpm/GltfGpmLocal.js +179 -0
- package/Source/Scene/Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js +548 -0
- package/Source/Scene/Model/Extensions/Gpm/MeshPrimitiveGpmLocal.js +28 -0
- package/Source/Scene/Model/Extensions/Gpm/PpeMetadata.js +79 -0
- package/Source/Scene/Model/Extensions/Gpm/PpeSource.js +75 -0
- package/Source/Scene/Model/Extensions/Gpm/PpeTexture.js +127 -0
- package/Source/Scene/Model/Extensions/Gpm/Spdcf.js +103 -0
- package/Source/Scene/Model/Extensions/Gpm/StorageType.js +30 -0
- package/Source/Scene/Model/FeatureIdPipelineStage.js +40 -40
- package/Source/Scene/Model/GeoJsonLoader.js +17 -17
- package/Source/Scene/Model/GeometryPipelineStage.js +23 -24
- package/Source/Scene/Model/I3dmLoader.js +36 -36
- package/Source/Scene/Model/ImageBasedLightingPipelineStage.js +56 -34
- package/Source/Scene/Model/InstancingPipelineStage.js +86 -86
- package/Source/Scene/Model/LightingPipelineStage.js +4 -4
- package/Source/Scene/Model/MaterialPipelineStage.js +78 -93
- package/Source/Scene/Model/MetadataPickingPipelineStage.js +96 -0
- package/Source/Scene/Model/MetadataPipelineStage.js +39 -47
- package/Source/Scene/Model/Model.js +228 -75
- package/Source/Scene/Model/Model3DTileContent.js +37 -13
- package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
- package/Source/Scene/Model/ModelAnimationCollection.js +9 -9
- package/Source/Scene/Model/ModelArticulation.js +2 -2
- package/Source/Scene/Model/ModelArticulationStage.js +4 -4
- package/Source/Scene/Model/ModelClippingPlanesPipelineStage.js +11 -11
- package/Source/Scene/Model/ModelClippingPolygonsPipelineStage.js +6 -6
- package/Source/Scene/Model/ModelColorPipelineStage.js +12 -13
- package/Source/Scene/Model/ModelDrawCommand.js +5 -5
- package/Source/Scene/Model/{buildDrawCommand.js → ModelDrawCommands.js} +85 -28
- package/Source/Scene/Model/ModelFeatureTable.js +5 -5
- package/Source/Scene/Model/ModelMatrixUpdateStage.js +24 -12
- package/Source/Scene/Model/ModelRenderResources.js +1 -1
- package/Source/Scene/Model/ModelRuntimeNode.js +15 -15
- package/Source/Scene/Model/ModelRuntimePrimitive.js +8 -5
- package/Source/Scene/Model/ModelSceneGraph.js +43 -43
- package/Source/Scene/Model/ModelSilhouettePipelineStage.js +4 -4
- package/Source/Scene/Model/ModelSkin.js +4 -4
- package/Source/Scene/Model/ModelSplitterPipelineStage.js +8 -9
- package/Source/Scene/Model/ModelUtility.js +5 -5
- package/Source/Scene/Model/MorphTargetsPipelineStage.js +18 -18
- package/Source/Scene/Model/NodeRenderResources.js +1 -1
- package/Source/Scene/Model/NodeStatisticsPipelineStage.js +1 -1
- package/Source/Scene/Model/PickingPipelineStage.js +5 -5
- package/Source/Scene/Model/PntsLoader.js +7 -7
- package/Source/Scene/Model/PointCloudStylingPipelineStage.js +22 -23
- package/Source/Scene/Model/PrimitiveOutlineGenerator.js +6 -6
- package/Source/Scene/Model/PrimitiveOutlinePipelineStage.js +7 -7
- package/Source/Scene/Model/PrimitiveRenderResources.js +3 -3
- package/Source/Scene/Model/PrimitiveStatisticsPipelineStage.js +1 -1
- package/Source/Scene/Model/SceneMode2DPipelineStage.js +23 -23
- package/Source/Scene/Model/SelectedFeatureIdPipelineStage.js +10 -14
- package/Source/Scene/Model/SkinningPipelineStage.js +5 -5
- package/Source/Scene/Model/StyleCommandsNeeded.js +1 -1
- package/Source/Scene/Model/TextureManager.js +2 -2
- package/Source/Scene/Model/TextureUniform.js +3 -3
- package/Source/Scene/Model/TilesetPipelineStage.js +2 -2
- package/Source/Scene/Model/VerticalExaggerationPipelineStage.js +4 -4
- package/Source/Scene/Model/WireframePipelineStage.js +7 -7
- package/Source/Scene/Model/pickModel.js +26 -26
- package/Source/Scene/ModelComponents.js +13 -4
- package/Source/Scene/Moon.js +6 -5
- package/Source/Scene/Multiple3DTileContent.js +15 -14
- package/Source/Scene/OIT.js +48 -97
- package/Source/Scene/OpenStreetMapImageryProvider.js +8 -7
- package/Source/Scene/OrderedGroundPrimitiveCollection.js +2 -2
- package/Source/Scene/Particle.js +3 -3
- package/Source/Scene/ParticleEmitter.js +1 -1
- package/Source/Scene/ParticleSystem.js +32 -32
- package/Source/Scene/PerInstanceColorAppearance.js +1 -1
- package/Source/Scene/PickDepth.js +16 -4
- package/Source/Scene/PickDepthFramebuffer.js +1 -1
- package/Source/Scene/PickFramebuffer.js +24 -12
- package/Source/Scene/PickedMetadataInfo.js +39 -0
- package/Source/Scene/Picking.js +270 -120
- package/Source/Scene/PntsParser.js +28 -28
- package/Source/Scene/PointCloud.js +39 -38
- package/Source/Scene/PointCloudEyeDomeLighting.js +6 -6
- package/Source/Scene/PointCloudShading.js +3 -3
- package/Source/Scene/PointPrimitive.js +31 -28
- package/Source/Scene/PointPrimitiveCollection.js +34 -33
- package/Source/Scene/Polyline.js +9 -9
- package/Source/Scene/PolylineCollection.js +55 -57
- package/Source/Scene/PolylineColorAppearance.js +3 -3
- package/Source/Scene/PolylineMaterialAppearance.js +3 -3
- package/Source/Scene/PostProcessStage.js +95 -115
- package/Source/Scene/PostProcessStageCollection.js +35 -41
- package/Source/Scene/PostProcessStageComposite.js +2 -2
- package/Source/Scene/PostProcessStageLibrary.js +5 -5
- package/Source/Scene/PostProcessStageTextureCache.js +10 -10
- package/Source/Scene/Primitive.js +93 -93
- package/Source/Scene/PrimitiveCollection.js +1 -1
- package/Source/Scene/PrimitiveLoadPlan.js +1 -1
- package/Source/Scene/PrimitivePipeline.js +30 -30
- package/Source/Scene/PropertyTable.js +5 -5
- package/Source/Scene/PropertyTextureProperty.js +36 -7
- package/Source/Scene/QuadtreePrimitive.js +56 -58
- package/Source/Scene/QuadtreeTile.js +4 -4
- package/Source/Scene/QuadtreeTileProvider.js +1 -1
- package/Source/Scene/ResourceCache.js +7 -7
- package/Source/Scene/ResourceCacheKey.js +15 -15
- package/Source/Scene/Scene.js +879 -657
- package/Source/Scene/SceneFramebuffer.js +2 -2
- package/Source/Scene/SceneTransforms.js +30 -30
- package/Source/Scene/SceneTransitioner.js +47 -47
- package/Source/Scene/ScreenSpaceCameraController.js +180 -154
- package/Source/Scene/SensorVolumePortionToDisplay.js +1 -1
- package/Source/Scene/ShadowMap.js +71 -72
- package/Source/Scene/ShadowMapShader.js +9 -9
- package/Source/Scene/ShadowVolumeAppearance.js +39 -39
- package/Source/Scene/SingleTileImageryProvider.js +3 -3
- package/Source/Scene/SkyAtmosphere.js +8 -8
- package/Source/Scene/SkyBox.js +7 -8
- package/Source/Scene/SpatialNode.js +13 -13
- package/Source/Scene/SphereEmitter.js +1 -1
- package/Source/Scene/StructuralMetadata.js +1 -1
- package/Source/Scene/StyleExpression.js +1 -1
- package/Source/Scene/Sun.js +11 -7
- package/Source/Scene/SunPostProcess.js +6 -6
- package/Source/Scene/TerrainFillMesh.js +157 -156
- package/Source/Scene/TextureAtlas.js +11 -11
- package/Source/Scene/TileBoundingRegion.js +31 -31
- package/Source/Scene/TileBoundingS2Cell.js +37 -40
- package/Source/Scene/TileBoundingSphere.js +2 -2
- package/Source/Scene/TileCoordinatesImageryProvider.js +3 -3
- package/Source/Scene/TileImagery.js +7 -11
- package/Source/Scene/TileMapServiceImageryProvider.js +26 -25
- package/Source/Scene/TileMetadata.js +4 -4
- package/Source/Scene/TileOrientedBoundingBox.js +6 -6
- package/Source/Scene/Tileset3DTileContent.js +1 -1
- package/Source/Scene/TilesetMetadata.js +4 -4
- package/Source/Scene/TimeDynamicImagery.js +3 -3
- package/Source/Scene/TimeDynamicPointCloud.js +9 -9
- package/Source/Scene/TranslucentTileClassification.js +48 -58
- package/Source/Scene/TweenCollection.js +9 -9
- package/Source/Scene/UrlTemplateImageryProvider.js +23 -23
- package/Source/Scene/Vector3DTileClampedPolylines.js +21 -21
- package/Source/Scene/Vector3DTileContent.js +38 -39
- package/Source/Scene/Vector3DTileGeometry.js +11 -8
- package/Source/Scene/Vector3DTilePoints.js +18 -22
- package/Source/Scene/Vector3DTilePolygons.js +6 -6
- package/Source/Scene/Vector3DTilePolylines.js +8 -8
- package/Source/Scene/Vector3DTilePrimitive.js +30 -31
- package/Source/Scene/View.js +111 -80
- package/Source/Scene/VoxelBoxShape.js +34 -34
- package/Source/Scene/VoxelCell.js +7 -7
- package/Source/Scene/VoxelContent.js +1 -1
- package/Source/Scene/VoxelCylinderShape.js +48 -48
- package/Source/Scene/VoxelEllipsoidShape.js +83 -97
- package/Source/Scene/VoxelPrimitive.js +80 -80
- package/Source/Scene/VoxelRenderResources.js +13 -13
- package/Source/Scene/VoxelTraversal.js +41 -41
- package/Source/Scene/WebMapServiceImageryProvider.js +12 -12
- package/Source/Scene/WebMapTileServiceImageryProvider.js +8 -8
- package/Source/Scene/buildVoxelDrawCommands.js +10 -14
- package/Source/Scene/computeFlyToLocationForRectangle.js +7 -5
- package/Source/Scene/createBillboardPointCallback.js +2 -2
- package/Source/Scene/createElevationBandMaterial.js +8 -8
- package/Source/Scene/createGooglePhotorealistic3DTileset.js +1 -1
- package/Source/Scene/createOsmBuildingsAsync.js +1 -1
- package/Source/Scene/createTangentSpaceDebugPrimitive.js +7 -7
- package/Source/Scene/findContentMetadata.js +2 -2
- package/Source/Scene/findTileMetadata.js +2 -2
- package/Source/Scene/getBinaryAccessor.js +1 -1
- package/Source/Scene/getClipAndStyleCode.js +1 -1
- package/Source/Scene/getClippingFunction.js +1 -1
- package/Source/Scene/getMetadataClassProperty.js +43 -0
- package/Source/Scene/parseBatchTable.js +21 -24
- package/Source/Scene/parseFeatureMetadataLegacy.js +3 -3
- package/Source/Scene/parseStructuralMetadata.js +3 -3
- package/Source/Scene/processVoxelProperties.js +28 -33
- package/Source/Shaders/Builtin/Functions/computeAtmosphereColor.glsl +44 -0
- package/Source/Shaders/Builtin/Functions/computeAtmosphereColor.js +44 -0
- package/Source/Shaders/Builtin/Functions/computeScattering.glsl +0 -1
- package/Source/Shaders/Builtin/Functions/computeScattering.js +0 -1
- package/Source/Shaders/Builtin/Functions/packDepth.glsl +2 -2
- package/Source/Shaders/Builtin/Functions/packDepth.js +2 -2
- package/Source/Shaders/Builtin/Functions/sphericalHarmonics.glsl +3 -1
- package/Source/Shaders/Builtin/Functions/sphericalHarmonics.js +3 -1
- package/Source/Shaders/Builtin/Functions/unpackDepth.glsl +3 -3
- package/Source/Shaders/Builtin/Functions/unpackDepth.js +3 -3
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.glsl +1 -1
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.js +1 -1
- package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +2 -2
- package/Source/Shaders/Builtin/Functions/writeLogDepth.js +2 -2
- package/Source/Shaders/ComputeIrradianceFS.glsl +103 -0
- package/Source/Shaders/ComputeIrradianceFS.js +105 -0
- package/Source/Shaders/ComputeRadianceMapFS.glsl +107 -0
- package/Source/Shaders/ComputeRadianceMapFS.js +109 -0
- package/Source/Shaders/ConvolveSpecularMapFS.glsl +70 -0
- package/Source/Shaders/ConvolveSpecularMapFS.js +72 -0
- package/Source/Shaders/ConvolveSpecularMapVS.glsl +24 -0
- package/Source/Shaders/ConvolveSpecularMapVS.js +26 -0
- package/Source/Shaders/DepthPlaneVS.glsl +1 -1
- package/Source/Shaders/DepthPlaneVS.js +1 -1
- package/Source/Shaders/GlobeFS.glsl +1 -2
- package/Source/Shaders/GlobeFS.js +1 -2
- package/Source/Shaders/Model/AtmosphereStageFS.glsl +1 -4
- package/Source/Shaders/Model/AtmosphereStageFS.js +1 -4
- package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +2 -155
- package/Source/Shaders/Model/ImageBasedLightingStageFS.js +3 -156
- package/Source/Shaders/Model/LightingStageFS.glsl +3 -22
- package/Source/Shaders/Model/LightingStageFS.js +3 -22
- package/Source/Shaders/Model/ModelFS.glsl +26 -0
- package/Source/Shaders/Model/ModelFS.js +26 -0
- package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.glsl +59 -59
- package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.js +60 -60
- package/Source/Shaders/SkyBoxVS.glsl +0 -1
- package/Source/Shaders/SkyBoxVS.js +0 -1
- package/Source/Widget/CesiumWidget.js +785 -9
- package/Source/Workers/combineGeometry.js +3 -4
- package/Source/Workers/createCircleGeometry.js +2 -2
- package/Source/Workers/createCircleOutlineGeometry.js +2 -2
- package/Source/Workers/createCoplanarPolygonOutlineGeometry.js +1 -1
- package/Source/Workers/createCorridorOutlineGeometry.js +2 -2
- package/Source/Workers/createEllipsoidOutlineGeometry.js +1 -1
- package/Source/Workers/createGeometry.js +4 -5
- package/Source/Workers/createGroundPolylineGeometry.js +1 -1
- package/Source/Workers/createPolylineVolumeGeometry.js +2 -2
- package/Source/Workers/createPolylineVolumeOutlineGeometry.js +4 -4
- package/Source/Workers/createRectangleOutlineGeometry.js +1 -1
- package/Source/Workers/createSimplePolylineGeometry.js +2 -2
- package/Source/Workers/createTaskProcessorWorker.js +1 -1
- package/Source/Workers/createVectorTileClampedPolylines.js +30 -30
- package/Source/Workers/createVectorTileGeometries.js +18 -18
- package/Source/Workers/createVectorTilePoints.js +3 -3
- package/Source/Workers/createVectorTilePolygons.js +11 -11
- package/Source/Workers/createVectorTilePolylines.js +7 -7
- package/Source/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +29 -30
- package/Source/Workers/createVerticesFromQuantizedTerrainMesh.js +60 -60
- package/Source/Workers/decodeDraco.js +23 -23
- package/Source/Workers/decodeGoogleEarthEnterprisePacket.js +4 -4
- package/Source/Workers/decodeI3S.js +53 -53
- package/Source/Workers/transcodeKTX2.js +9 -9
- package/Source/Workers/transferTypedArrayTest.js +1 -1
- package/Source/Workers/upsampleQuantizedTerrainMesh.js +37 -36
- package/index.d.ts +769 -47
- package/index.js +73 -51
- package/package.json +3 -3
|
@@ -29,6 +29,9 @@ import ResourceCache from "./ResourceCache.js";
|
|
|
29
29
|
import ResourceLoader from "./ResourceLoader.js";
|
|
30
30
|
import SupportedImageFormats from "./SupportedImageFormats.js";
|
|
31
31
|
import VertexAttributeSemantic from "./VertexAttributeSemantic.js";
|
|
32
|
+
import GltfGpmLoader from "./Model/Extensions/Gpm/GltfGpmLoader.js";
|
|
33
|
+
import GltfMeshPrimitiveGpmLoader from "./Model/Extensions/Gpm/GltfMeshPrimitiveGpmLoader.js";
|
|
34
|
+
import oneTimeWarning from "../Core/oneTimeWarning.js";
|
|
32
35
|
|
|
33
36
|
const {
|
|
34
37
|
Attribute,
|
|
@@ -260,6 +263,7 @@ function GltfLoader(options) {
|
|
|
260
263
|
this._geometryLoaders = [];
|
|
261
264
|
this._geometryCallbacks = [];
|
|
262
265
|
this._structuralMetadataLoader = undefined;
|
|
266
|
+
this._meshPrimitiveGpmLoader = undefined;
|
|
263
267
|
this._loadResourcesPromise = undefined;
|
|
264
268
|
this._resourcesLoaded = false;
|
|
265
269
|
this._texturesLoaded = false;
|
|
@@ -471,6 +475,25 @@ function processLoaders(loader, frameState) {
|
|
|
471
475
|
ready = ready && metadataReady;
|
|
472
476
|
}
|
|
473
477
|
|
|
478
|
+
const meshPrimitiveGpmLoader = loader._meshPrimitiveGpmLoader;
|
|
479
|
+
if (defined(meshPrimitiveGpmLoader)) {
|
|
480
|
+
const metadataReady = meshPrimitiveGpmLoader.process(frameState);
|
|
481
|
+
if (metadataReady) {
|
|
482
|
+
if (defined(loader._components.structuralMetadata)) {
|
|
483
|
+
oneTimeWarning(
|
|
484
|
+
"structural-metadata-gpm",
|
|
485
|
+
"The model defines both the 'EXT_structural_metadata' extension and the " +
|
|
486
|
+
"'NGA_gpm_local' extension. The data from the 'EXT_structural_metadata' " +
|
|
487
|
+
"extension will be replaced with the data from the 'NGA_gpm_local' extension, " +
|
|
488
|
+
"and will no longer be available for styling and picking.",
|
|
489
|
+
);
|
|
490
|
+
}
|
|
491
|
+
loader._components.structuralMetadata =
|
|
492
|
+
meshPrimitiveGpmLoader.structuralMetadata;
|
|
493
|
+
}
|
|
494
|
+
ready = ready && metadataReady;
|
|
495
|
+
}
|
|
496
|
+
|
|
474
497
|
if (ready) {
|
|
475
498
|
// Geometry requires further processing
|
|
476
499
|
loader._state = GltfLoaderState.POST_PROCESSING;
|
|
@@ -665,7 +688,7 @@ function getVertexBufferLoader(
|
|
|
665
688
|
draco,
|
|
666
689
|
loadBuffer,
|
|
667
690
|
loadTypedArray,
|
|
668
|
-
frameState
|
|
691
|
+
frameState,
|
|
669
692
|
) {
|
|
670
693
|
const gltf = loader.gltfJson;
|
|
671
694
|
const accessor = gltf.accessors[accessorId];
|
|
@@ -694,7 +717,7 @@ function getIndexBufferLoader(
|
|
|
694
717
|
draco,
|
|
695
718
|
loadBuffer,
|
|
696
719
|
loadTypedArray,
|
|
697
|
-
frameState
|
|
720
|
+
frameState,
|
|
698
721
|
) {
|
|
699
722
|
const indexBufferLoader = ResourceCache.getIndexBufferLoader({
|
|
700
723
|
gltf: loader.gltfJson,
|
|
@@ -741,13 +764,13 @@ function getPackedTypedArray(gltf, accessor, bufferViewTypedArray) {
|
|
|
741
764
|
componentType,
|
|
742
765
|
bufferViewTypedArray.buffer,
|
|
743
766
|
bufferViewTypedArray.byteOffset + byteOffset,
|
|
744
|
-
componentsLength
|
|
767
|
+
componentsLength,
|
|
745
768
|
);
|
|
746
769
|
}
|
|
747
770
|
|
|
748
771
|
const accessorTypedArray = ComponentDatatype.createTypedArray(
|
|
749
772
|
componentType,
|
|
750
|
-
componentsLength
|
|
773
|
+
componentsLength,
|
|
751
774
|
);
|
|
752
775
|
|
|
753
776
|
const dataView = new DataView(bufferViewTypedArray.buffer);
|
|
@@ -761,7 +784,7 @@ function getPackedTypedArray(gltf, accessor, bufferViewTypedArray) {
|
|
|
761
784
|
byteOffset,
|
|
762
785
|
componentCount,
|
|
763
786
|
componentByteLength,
|
|
764
|
-
components
|
|
787
|
+
components,
|
|
765
788
|
);
|
|
766
789
|
for (let j = 0; j < componentCount; ++j) {
|
|
767
790
|
accessorTypedArray[i * componentCount + j] = components[j];
|
|
@@ -796,9 +819,8 @@ function loadAccessorValues(accessor, typedArray, values, useQuaternion) {
|
|
|
796
819
|
}
|
|
797
820
|
} else {
|
|
798
821
|
const MathType = AttributeType.getMathType(accessorType);
|
|
799
|
-
const numberOfComponents =
|
|
800
|
-
accessorType
|
|
801
|
-
);
|
|
822
|
+
const numberOfComponents =
|
|
823
|
+
AttributeType.getNumberOfComponents(accessorType);
|
|
802
824
|
|
|
803
825
|
for (let i = 0; i < accessorCount; i++) {
|
|
804
826
|
values[i] = MathType.unpack(typedArray, i * numberOfComponents);
|
|
@@ -813,7 +835,7 @@ async function loadAccessorBufferView(
|
|
|
813
835
|
bufferViewLoader,
|
|
814
836
|
accessor,
|
|
815
837
|
useQuaternion,
|
|
816
|
-
values
|
|
838
|
+
values,
|
|
817
839
|
) {
|
|
818
840
|
// Save a link to the gltfJson, which is removed after bufferViewLoader.load()
|
|
819
841
|
const { gltfJson } = loader;
|
|
@@ -826,7 +848,7 @@ async function loadAccessorBufferView(
|
|
|
826
848
|
const typedArray = getPackedTypedArray(
|
|
827
849
|
gltfJson,
|
|
828
850
|
accessor,
|
|
829
|
-
bufferViewLoader.typedArray
|
|
851
|
+
bufferViewLoader.typedArray,
|
|
830
852
|
);
|
|
831
853
|
|
|
832
854
|
useQuaternion = defaultValue(useQuaternion, false);
|
|
@@ -844,7 +866,7 @@ function loadAccessor(loader, accessor, useQuaternion) {
|
|
|
844
866
|
bufferViewLoader,
|
|
845
867
|
accessor,
|
|
846
868
|
useQuaternion,
|
|
847
|
-
values
|
|
869
|
+
values,
|
|
848
870
|
);
|
|
849
871
|
loader._loaderPromises.push(promise);
|
|
850
872
|
|
|
@@ -919,7 +941,7 @@ function dequantizeMinMax(attribute, VectorType) {
|
|
|
919
941
|
function setQuantizationFromWeb3dQuantizedAttributes(
|
|
920
942
|
extension,
|
|
921
943
|
attribute,
|
|
922
|
-
MathType
|
|
944
|
+
MathType,
|
|
923
945
|
) {
|
|
924
946
|
const decodeMatrix = extension.decodeMatrix;
|
|
925
947
|
const decodedMin = fromArray(MathType, extension.decodedMin);
|
|
@@ -940,35 +962,35 @@ function setQuantizationFromWeb3dQuantizedAttributes(
|
|
|
940
962
|
} else if (decodeMatrix.length === 9) {
|
|
941
963
|
quantization.quantizedVolumeOffset = new Cartesian2(
|
|
942
964
|
decodeMatrix[6],
|
|
943
|
-
decodeMatrix[7]
|
|
965
|
+
decodeMatrix[7],
|
|
944
966
|
);
|
|
945
967
|
quantization.quantizedVolumeStepSize = new Cartesian2(
|
|
946
968
|
decodeMatrix[0],
|
|
947
|
-
decodeMatrix[4]
|
|
969
|
+
decodeMatrix[4],
|
|
948
970
|
);
|
|
949
971
|
} else if (decodeMatrix.length === 16) {
|
|
950
972
|
quantization.quantizedVolumeOffset = new Cartesian3(
|
|
951
973
|
decodeMatrix[12],
|
|
952
974
|
decodeMatrix[13],
|
|
953
|
-
decodeMatrix[14]
|
|
975
|
+
decodeMatrix[14],
|
|
954
976
|
);
|
|
955
977
|
quantization.quantizedVolumeStepSize = new Cartesian3(
|
|
956
978
|
decodeMatrix[0],
|
|
957
979
|
decodeMatrix[5],
|
|
958
|
-
decodeMatrix[10]
|
|
980
|
+
decodeMatrix[10],
|
|
959
981
|
);
|
|
960
982
|
} else if (decodeMatrix.length === 25) {
|
|
961
983
|
quantization.quantizedVolumeOffset = new Cartesian4(
|
|
962
984
|
decodeMatrix[20],
|
|
963
985
|
decodeMatrix[21],
|
|
964
986
|
decodeMatrix[22],
|
|
965
|
-
decodeMatrix[23]
|
|
987
|
+
decodeMatrix[23],
|
|
966
988
|
);
|
|
967
989
|
quantization.quantizedVolumeStepSize = new Cartesian4(
|
|
968
990
|
decodeMatrix[0],
|
|
969
991
|
decodeMatrix[6],
|
|
970
992
|
decodeMatrix[12],
|
|
971
|
-
decodeMatrix[18]
|
|
993
|
+
decodeMatrix[18],
|
|
972
994
|
);
|
|
973
995
|
}
|
|
974
996
|
|
|
@@ -998,7 +1020,7 @@ function createAttribute(gltf, accessorId, name, semantic, setIndex) {
|
|
|
998
1020
|
setQuantizationFromWeb3dQuantizedAttributes(
|
|
999
1021
|
accessor.extensions.WEB3D_quantized_attributes,
|
|
1000
1022
|
attribute,
|
|
1001
|
-
MathType
|
|
1023
|
+
MathType,
|
|
1002
1024
|
);
|
|
1003
1025
|
}
|
|
1004
1026
|
|
|
@@ -1012,7 +1034,7 @@ function createAttribute(gltf, accessorId, name, semantic, setIndex) {
|
|
|
1012
1034
|
// However, for KHR_mesh_quantization, min and max must be dequantized for
|
|
1013
1035
|
// normalized values, else the bounding sphere will be computed incorrectly.
|
|
1014
1036
|
const hasKhrMeshQuantization = gltf.extensionsRequired?.includes(
|
|
1015
|
-
"KHR_mesh_quantization"
|
|
1037
|
+
"KHR_mesh_quantization",
|
|
1016
1038
|
);
|
|
1017
1039
|
|
|
1018
1040
|
if (hasKhrMeshQuantization && normalized && isQuantizable) {
|
|
@@ -1074,7 +1096,7 @@ function finalizeDracoAttribute(
|
|
|
1074
1096
|
attribute,
|
|
1075
1097
|
vertexBufferLoader,
|
|
1076
1098
|
loadBuffer,
|
|
1077
|
-
loadTypedArray
|
|
1099
|
+
loadTypedArray,
|
|
1078
1100
|
) {
|
|
1079
1101
|
// The accessor's byteOffset and byteStride should be ignored for draco.
|
|
1080
1102
|
// Each attribute is tightly packed in its own buffer after decode.
|
|
@@ -1093,7 +1115,7 @@ function finalizeDracoAttribute(
|
|
|
1093
1115
|
|
|
1094
1116
|
attribute.typedArray = ComponentDatatype.createArrayBufferView(
|
|
1095
1117
|
componentDatatype,
|
|
1096
|
-
vertexBufferLoader.typedArray.buffer
|
|
1118
|
+
vertexBufferLoader.typedArray.buffer,
|
|
1097
1119
|
);
|
|
1098
1120
|
}
|
|
1099
1121
|
}
|
|
@@ -1104,7 +1126,7 @@ function finalizeAttribute(
|
|
|
1104
1126
|
attribute,
|
|
1105
1127
|
vertexBufferLoader,
|
|
1106
1128
|
loadBuffer,
|
|
1107
|
-
loadTypedArray
|
|
1129
|
+
loadTypedArray,
|
|
1108
1130
|
) {
|
|
1109
1131
|
if (loadBuffer) {
|
|
1110
1132
|
attribute.buffer = vertexBufferLoader.buffer;
|
|
@@ -1115,7 +1137,7 @@ function finalizeAttribute(
|
|
|
1115
1137
|
attribute.typedArray = getPackedTypedArray(
|
|
1116
1138
|
gltf,
|
|
1117
1139
|
accessor,
|
|
1118
|
-
bufferViewTypedArray
|
|
1140
|
+
bufferViewTypedArray,
|
|
1119
1141
|
);
|
|
1120
1142
|
|
|
1121
1143
|
if (!loadBuffer) {
|
|
@@ -1135,7 +1157,7 @@ function loadAttribute(
|
|
|
1135
1157
|
draco,
|
|
1136
1158
|
loadBuffer,
|
|
1137
1159
|
loadTypedArray,
|
|
1138
|
-
frameState
|
|
1160
|
+
frameState,
|
|
1139
1161
|
) {
|
|
1140
1162
|
const gltf = loader.gltfJson;
|
|
1141
1163
|
const accessor = gltf.accessors[accessorId];
|
|
@@ -1155,7 +1177,7 @@ function loadAttribute(
|
|
|
1155
1177
|
accessorId,
|
|
1156
1178
|
name,
|
|
1157
1179
|
modelSemantic,
|
|
1158
|
-
setIndex
|
|
1180
|
+
setIndex,
|
|
1159
1181
|
);
|
|
1160
1182
|
|
|
1161
1183
|
if (!defined(draco) && !defined(bufferViewId)) {
|
|
@@ -1169,7 +1191,7 @@ function loadAttribute(
|
|
|
1169
1191
|
draco,
|
|
1170
1192
|
loadBuffer,
|
|
1171
1193
|
loadTypedArray,
|
|
1172
|
-
frameState
|
|
1194
|
+
frameState,
|
|
1173
1195
|
);
|
|
1174
1196
|
|
|
1175
1197
|
const index = loader._geometryLoaders.length;
|
|
@@ -1189,7 +1211,7 @@ function loadAttribute(
|
|
|
1189
1211
|
attribute,
|
|
1190
1212
|
vertexBufferLoader,
|
|
1191
1213
|
loadBuffer,
|
|
1192
|
-
loadTypedArray
|
|
1214
|
+
loadTypedArray,
|
|
1193
1215
|
);
|
|
1194
1216
|
} else {
|
|
1195
1217
|
finalizeAttribute(
|
|
@@ -1198,7 +1220,7 @@ function loadAttribute(
|
|
|
1198
1220
|
attribute,
|
|
1199
1221
|
vertexBufferLoader,
|
|
1200
1222
|
loadBuffer,
|
|
1201
|
-
loadTypedArray
|
|
1223
|
+
loadTypedArray,
|
|
1202
1224
|
);
|
|
1203
1225
|
}
|
|
1204
1226
|
};
|
|
@@ -1213,7 +1235,7 @@ function loadVertexAttribute(
|
|
|
1213
1235
|
draco,
|
|
1214
1236
|
hasInstances,
|
|
1215
1237
|
needsPostProcessing,
|
|
1216
|
-
frameState
|
|
1238
|
+
frameState,
|
|
1217
1239
|
) {
|
|
1218
1240
|
const modelSemantic = semanticInfo.modelSemantic;
|
|
1219
1241
|
|
|
@@ -1259,7 +1281,7 @@ function loadVertexAttribute(
|
|
|
1259
1281
|
draco,
|
|
1260
1282
|
loadBuffer,
|
|
1261
1283
|
loadTypedArray,
|
|
1262
|
-
frameState
|
|
1284
|
+
frameState,
|
|
1263
1285
|
);
|
|
1264
1286
|
|
|
1265
1287
|
const attributePlan = new PrimitiveLoadPlan.AttributeLoadPlan(attribute);
|
|
@@ -1274,7 +1296,7 @@ function loadInstancedAttribute(
|
|
|
1274
1296
|
accessorId,
|
|
1275
1297
|
attributes,
|
|
1276
1298
|
gltfSemantic,
|
|
1277
|
-
frameState
|
|
1299
|
+
frameState,
|
|
1278
1300
|
) {
|
|
1279
1301
|
const accessors = loader.gltfJson.accessors;
|
|
1280
1302
|
const hasRotation = defined(attributes.ROTATION);
|
|
@@ -1286,7 +1308,7 @@ function loadInstancedAttribute(
|
|
|
1286
1308
|
const semanticInfo = getSemanticInfo(
|
|
1287
1309
|
loader,
|
|
1288
1310
|
InstanceAttributeSemantic,
|
|
1289
|
-
gltfSemantic
|
|
1311
|
+
gltfSemantic,
|
|
1290
1312
|
);
|
|
1291
1313
|
const modelSemantic = semanticInfo.modelSemantic;
|
|
1292
1314
|
|
|
@@ -1331,7 +1353,7 @@ function loadInstancedAttribute(
|
|
|
1331
1353
|
undefined,
|
|
1332
1354
|
loadBuffer,
|
|
1333
1355
|
loadTypedArray,
|
|
1334
|
-
frameState
|
|
1356
|
+
frameState,
|
|
1335
1357
|
);
|
|
1336
1358
|
}
|
|
1337
1359
|
|
|
@@ -1341,7 +1363,7 @@ function loadIndices(
|
|
|
1341
1363
|
draco,
|
|
1342
1364
|
hasFeatureIds,
|
|
1343
1365
|
needsPostProcessing,
|
|
1344
|
-
frameState
|
|
1366
|
+
frameState,
|
|
1345
1367
|
) {
|
|
1346
1368
|
const accessor = loader.gltfJson.accessors[accessorId];
|
|
1347
1369
|
const bufferViewId = accessor.bufferView;
|
|
@@ -1384,7 +1406,7 @@ function loadIndices(
|
|
|
1384
1406
|
draco,
|
|
1385
1407
|
loadBuffer,
|
|
1386
1408
|
loadTypedArray,
|
|
1387
|
-
frameState
|
|
1409
|
+
frameState,
|
|
1388
1410
|
);
|
|
1389
1411
|
|
|
1390
1412
|
const index = loader._geometryLoaders.length;
|
|
@@ -1486,14 +1508,14 @@ function loadSpecularGlossiness(loader, specularGlossinessInfo, frameState) {
|
|
|
1486
1508
|
specularGlossiness.diffuseTexture = loadTexture(
|
|
1487
1509
|
loader,
|
|
1488
1510
|
diffuseTexture,
|
|
1489
|
-
frameState
|
|
1511
|
+
frameState,
|
|
1490
1512
|
);
|
|
1491
1513
|
}
|
|
1492
1514
|
if (defined(specularGlossinessTexture)) {
|
|
1493
1515
|
specularGlossiness.specularGlossinessTexture = loadTexture(
|
|
1494
1516
|
loader,
|
|
1495
1517
|
specularGlossinessTexture,
|
|
1496
|
-
frameState
|
|
1518
|
+
frameState,
|
|
1497
1519
|
);
|
|
1498
1520
|
}
|
|
1499
1521
|
specularGlossiness.diffuseFactor = fromArray(Cartesian4, diffuseFactor);
|
|
@@ -1525,14 +1547,14 @@ function loadMetallicRoughness(loader, metallicRoughnessInfo, frameState) {
|
|
|
1525
1547
|
metallicRoughness.baseColorTexture = loadTexture(
|
|
1526
1548
|
loader,
|
|
1527
1549
|
baseColorTexture,
|
|
1528
|
-
frameState
|
|
1550
|
+
frameState,
|
|
1529
1551
|
);
|
|
1530
1552
|
}
|
|
1531
1553
|
if (defined(metallicRoughnessTexture)) {
|
|
1532
1554
|
metallicRoughness.metallicRoughnessTexture = loadTexture(
|
|
1533
1555
|
loader,
|
|
1534
1556
|
metallicRoughnessTexture,
|
|
1535
|
-
frameState
|
|
1557
|
+
frameState,
|
|
1536
1558
|
);
|
|
1537
1559
|
}
|
|
1538
1560
|
metallicRoughness.baseColorFactor = fromArray(Cartesian4, baseColorFactor);
|
|
@@ -1558,7 +1580,7 @@ function loadSpecular(loader, specularInfo, frameState) {
|
|
|
1558
1580
|
specular.specularColorTexture = loadTexture(
|
|
1559
1581
|
loader,
|
|
1560
1582
|
specularColorTexture,
|
|
1561
|
-
frameState
|
|
1583
|
+
frameState,
|
|
1562
1584
|
);
|
|
1563
1585
|
}
|
|
1564
1586
|
specular.specularFactor = specularFactor;
|
|
@@ -1579,7 +1601,7 @@ function loadAnisotropy(loader, anisotropyInfo, frameState) {
|
|
|
1579
1601
|
anisotropy.anisotropyTexture = loadTexture(
|
|
1580
1602
|
loader,
|
|
1581
1603
|
anisotropyTexture,
|
|
1582
|
-
frameState
|
|
1604
|
+
frameState,
|
|
1583
1605
|
);
|
|
1584
1606
|
}
|
|
1585
1607
|
anisotropy.anisotropyStrength = anisotropyStrength;
|
|
@@ -1602,21 +1624,21 @@ function loadClearcoat(loader, clearcoatInfo, frameState) {
|
|
|
1602
1624
|
clearcoat.clearcoatTexture = loadTexture(
|
|
1603
1625
|
loader,
|
|
1604
1626
|
clearcoatTexture,
|
|
1605
|
-
frameState
|
|
1627
|
+
frameState,
|
|
1606
1628
|
);
|
|
1607
1629
|
}
|
|
1608
1630
|
if (defined(clearcoatRoughnessTexture)) {
|
|
1609
1631
|
clearcoat.clearcoatRoughnessTexture = loadTexture(
|
|
1610
1632
|
loader,
|
|
1611
1633
|
clearcoatRoughnessTexture,
|
|
1612
|
-
frameState
|
|
1634
|
+
frameState,
|
|
1613
1635
|
);
|
|
1614
1636
|
}
|
|
1615
1637
|
if (defined(clearcoatNormalTexture)) {
|
|
1616
1638
|
clearcoat.clearcoatNormalTexture = loadTexture(
|
|
1617
1639
|
loader,
|
|
1618
1640
|
clearcoatNormalTexture,
|
|
1619
|
-
frameState
|
|
1641
|
+
frameState,
|
|
1620
1642
|
);
|
|
1621
1643
|
}
|
|
1622
1644
|
clearcoat.clearcoatFactor = clearcoatFactor;
|
|
@@ -1639,7 +1661,7 @@ function loadMaterial(loader, gltfMaterial, frameState) {
|
|
|
1639
1661
|
|
|
1640
1662
|
const extensions = defaultValue(
|
|
1641
1663
|
gltfMaterial.extensions,
|
|
1642
|
-
defaultValue.EMPTY_OBJECT
|
|
1664
|
+
defaultValue.EMPTY_OBJECT,
|
|
1643
1665
|
);
|
|
1644
1666
|
const pbrSpecularGlossiness = extensions.KHR_materials_pbrSpecularGlossiness;
|
|
1645
1667
|
const pbrSpecular = extensions.KHR_materials_specular;
|
|
@@ -1653,14 +1675,14 @@ function loadMaterial(loader, gltfMaterial, frameState) {
|
|
|
1653
1675
|
material.specularGlossiness = loadSpecularGlossiness(
|
|
1654
1676
|
loader,
|
|
1655
1677
|
pbrSpecularGlossiness,
|
|
1656
|
-
frameState
|
|
1678
|
+
frameState,
|
|
1657
1679
|
);
|
|
1658
1680
|
} else {
|
|
1659
1681
|
if (defined(pbrMetallicRoughness)) {
|
|
1660
1682
|
material.metallicRoughness = loadMetallicRoughness(
|
|
1661
1683
|
loader,
|
|
1662
1684
|
pbrMetallicRoughness,
|
|
1663
|
-
frameState
|
|
1685
|
+
frameState,
|
|
1664
1686
|
);
|
|
1665
1687
|
}
|
|
1666
1688
|
if (defined(pbrSpecular) && !material.unlit) {
|
|
@@ -1679,7 +1701,7 @@ function loadMaterial(loader, gltfMaterial, frameState) {
|
|
|
1679
1701
|
material.emissiveTexture = loadTexture(
|
|
1680
1702
|
loader,
|
|
1681
1703
|
gltfMaterial.emissiveTexture,
|
|
1682
|
-
frameState
|
|
1704
|
+
frameState,
|
|
1683
1705
|
);
|
|
1684
1706
|
}
|
|
1685
1707
|
// Normals aren't used for classification, so don't load the normal texture.
|
|
@@ -1687,14 +1709,14 @@ function loadMaterial(loader, gltfMaterial, frameState) {
|
|
|
1687
1709
|
material.normalTexture = loadTexture(
|
|
1688
1710
|
loader,
|
|
1689
1711
|
gltfMaterial.normalTexture,
|
|
1690
|
-
frameState
|
|
1712
|
+
frameState,
|
|
1691
1713
|
);
|
|
1692
1714
|
}
|
|
1693
1715
|
if (defined(gltfMaterial.occlusionTexture)) {
|
|
1694
1716
|
material.occlusionTexture = loadTexture(
|
|
1695
1717
|
loader,
|
|
1696
1718
|
gltfMaterial.occlusionTexture,
|
|
1697
|
-
frameState
|
|
1719
|
+
frameState,
|
|
1698
1720
|
);
|
|
1699
1721
|
}
|
|
1700
1722
|
material.emissiveFactor = fromArray(Cartesian3, gltfMaterial.emissiveFactor);
|
|
@@ -1722,7 +1744,7 @@ function loadFeatureIdAttributeLegacy(
|
|
|
1722
1744
|
gltfFeatureIdAttribute,
|
|
1723
1745
|
featureTableId,
|
|
1724
1746
|
featureCount,
|
|
1725
|
-
positionalLabel
|
|
1747
|
+
positionalLabel,
|
|
1726
1748
|
) {
|
|
1727
1749
|
const featureIdAttribute = new FeatureIdAttribute();
|
|
1728
1750
|
const featureIds = gltfFeatureIdAttribute.featureIds;
|
|
@@ -1753,7 +1775,7 @@ function loadFeatureIdImplicitRangeLegacy(
|
|
|
1753
1775
|
gltfFeatureIdAttribute,
|
|
1754
1776
|
featureTableId,
|
|
1755
1777
|
featureCount,
|
|
1756
|
-
positionalLabel
|
|
1778
|
+
positionalLabel,
|
|
1757
1779
|
) {
|
|
1758
1780
|
const featureIdRange = new FeatureIdImplicitRange();
|
|
1759
1781
|
const featureIds = gltfFeatureIdAttribute.featureIds;
|
|
@@ -1775,7 +1797,7 @@ function loadFeatureIdTexture(
|
|
|
1775
1797
|
loader,
|
|
1776
1798
|
gltfFeatureIdTexture,
|
|
1777
1799
|
frameState,
|
|
1778
|
-
positionalLabel
|
|
1800
|
+
positionalLabel,
|
|
1779
1801
|
) {
|
|
1780
1802
|
const featureIdTexture = new FeatureIdTexture();
|
|
1781
1803
|
|
|
@@ -1790,7 +1812,7 @@ function loadFeatureIdTexture(
|
|
|
1790
1812
|
loader,
|
|
1791
1813
|
textureInfo,
|
|
1792
1814
|
frameState,
|
|
1793
|
-
Sampler.NEAREST // Feature ID textures require nearest sampling
|
|
1815
|
+
Sampler.NEAREST, // Feature ID textures require nearest sampling
|
|
1794
1816
|
);
|
|
1795
1817
|
|
|
1796
1818
|
// Though the new channel index is more future-proof, this implementation
|
|
@@ -1814,7 +1836,7 @@ function loadFeatureIdTextureLegacy(
|
|
|
1814
1836
|
featureTableId,
|
|
1815
1837
|
frameState,
|
|
1816
1838
|
featureCount,
|
|
1817
|
-
positionalLabel
|
|
1839
|
+
positionalLabel,
|
|
1818
1840
|
) {
|
|
1819
1841
|
const featureIdTexture = new FeatureIdTexture();
|
|
1820
1842
|
const featureIds = gltfFeatureIdTexture.featureIds;
|
|
@@ -1825,7 +1847,7 @@ function loadFeatureIdTextureLegacy(
|
|
|
1825
1847
|
loader,
|
|
1826
1848
|
textureInfo,
|
|
1827
1849
|
frameState,
|
|
1828
|
-
Sampler.NEAREST // Feature ID textures require nearest sampling
|
|
1850
|
+
Sampler.NEAREST, // Feature ID textures require nearest sampling
|
|
1829
1851
|
);
|
|
1830
1852
|
|
|
1831
1853
|
featureIdTexture.textureReader.channels = featureIds.channels;
|
|
@@ -1839,7 +1861,7 @@ function loadMorphTarget(
|
|
|
1839
1861
|
target,
|
|
1840
1862
|
needsPostProcessing,
|
|
1841
1863
|
primitiveLoadPlan,
|
|
1842
|
-
frameState
|
|
1864
|
+
frameState,
|
|
1843
1865
|
) {
|
|
1844
1866
|
const morphTarget = new MorphTarget();
|
|
1845
1867
|
|
|
@@ -1856,7 +1878,7 @@ function loadMorphTarget(
|
|
|
1856
1878
|
const semanticInfo = getSemanticInfo(
|
|
1857
1879
|
loader,
|
|
1858
1880
|
VertexAttributeSemantic,
|
|
1859
|
-
semantic
|
|
1881
|
+
semantic,
|
|
1860
1882
|
);
|
|
1861
1883
|
|
|
1862
1884
|
const attributePlan = loadVertexAttribute(
|
|
@@ -1866,7 +1888,7 @@ function loadMorphTarget(
|
|
|
1866
1888
|
draco,
|
|
1867
1889
|
hasInstances,
|
|
1868
1890
|
needsPostProcessing,
|
|
1869
|
-
frameState
|
|
1891
|
+
frameState,
|
|
1870
1892
|
);
|
|
1871
1893
|
morphTarget.attributes.push(attributePlan.attribute);
|
|
1872
1894
|
|
|
@@ -1897,13 +1919,13 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
1897
1919
|
primitive.material = loadMaterial(
|
|
1898
1920
|
loader,
|
|
1899
1921
|
loader.gltfJson.materials[materialId],
|
|
1900
|
-
frameState
|
|
1922
|
+
frameState,
|
|
1901
1923
|
);
|
|
1902
1924
|
}
|
|
1903
1925
|
|
|
1904
1926
|
const extensions = defaultValue(
|
|
1905
1927
|
gltfPrimitive.extensions,
|
|
1906
|
-
defaultValue.EMPTY_OBJECT
|
|
1928
|
+
defaultValue.EMPTY_OBJECT,
|
|
1907
1929
|
);
|
|
1908
1930
|
|
|
1909
1931
|
let needsPostProcessing = false;
|
|
@@ -1914,7 +1936,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
1914
1936
|
primitivePlan.outlineIndices = loadPrimitiveOutline(
|
|
1915
1937
|
loader,
|
|
1916
1938
|
outlineExtension,
|
|
1917
|
-
primitivePlan
|
|
1939
|
+
primitivePlan,
|
|
1918
1940
|
);
|
|
1919
1941
|
}
|
|
1920
1942
|
|
|
@@ -1932,7 +1954,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
1932
1954
|
const semanticInfo = getSemanticInfo(
|
|
1933
1955
|
loader,
|
|
1934
1956
|
VertexAttributeSemantic,
|
|
1935
|
-
semantic
|
|
1957
|
+
semantic,
|
|
1936
1958
|
);
|
|
1937
1959
|
|
|
1938
1960
|
const modelSemantic = semanticInfo.modelSemantic;
|
|
@@ -1951,7 +1973,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
1951
1973
|
draco,
|
|
1952
1974
|
hasInstances,
|
|
1953
1975
|
needsPostProcessing,
|
|
1954
|
-
frameState
|
|
1976
|
+
frameState,
|
|
1955
1977
|
);
|
|
1956
1978
|
|
|
1957
1979
|
primitivePlan.attributePlans.push(attributePlan);
|
|
@@ -1969,8 +1991,8 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
1969
1991
|
targets[i],
|
|
1970
1992
|
needsPostProcessing,
|
|
1971
1993
|
primitivePlan,
|
|
1972
|
-
frameState
|
|
1973
|
-
)
|
|
1994
|
+
frameState,
|
|
1995
|
+
),
|
|
1974
1996
|
);
|
|
1975
1997
|
}
|
|
1976
1998
|
}
|
|
@@ -1983,7 +2005,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
1983
2005
|
draco,
|
|
1984
2006
|
hasFeatureIds,
|
|
1985
2007
|
needsPostProcessing,
|
|
1986
|
-
frameState
|
|
2008
|
+
frameState,
|
|
1987
2009
|
);
|
|
1988
2010
|
|
|
1989
2011
|
if (defined(indicesPlan)) {
|
|
@@ -2009,7 +2031,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
2009
2031
|
loader,
|
|
2010
2032
|
primitive,
|
|
2011
2033
|
featureMetadataLegacy,
|
|
2012
|
-
frameState
|
|
2034
|
+
frameState,
|
|
2013
2035
|
);
|
|
2014
2036
|
}
|
|
2015
2037
|
|
|
@@ -2023,7 +2045,7 @@ function loadPrimitive(loader, gltfPrimitive, hasInstances, frameState) {
|
|
|
2023
2045
|
const primitiveType = gltfPrimitive.mode;
|
|
2024
2046
|
if (loadForClassification && primitiveType !== PrimitiveType.TRIANGLES) {
|
|
2025
2047
|
throw new RuntimeError(
|
|
2026
|
-
"Only triangle meshes can be used for classification."
|
|
2048
|
+
"Only triangle meshes can be used for classification.",
|
|
2027
2049
|
);
|
|
2028
2050
|
}
|
|
2029
2051
|
primitive.primitiveType = primitiveType;
|
|
@@ -2043,7 +2065,7 @@ function loadPrimitiveFeatures(
|
|
|
2043
2065
|
loader,
|
|
2044
2066
|
primitive,
|
|
2045
2067
|
meshFeaturesExtension,
|
|
2046
|
-
frameState
|
|
2068
|
+
frameState,
|
|
2047
2069
|
) {
|
|
2048
2070
|
let featureIdsArray;
|
|
2049
2071
|
if (
|
|
@@ -2065,7 +2087,7 @@ function loadPrimitiveFeatures(
|
|
|
2065
2087
|
loader,
|
|
2066
2088
|
featureIds,
|
|
2067
2089
|
frameState,
|
|
2068
|
-
label
|
|
2090
|
+
label,
|
|
2069
2091
|
);
|
|
2070
2092
|
} else if (defined(featureIds.attribute)) {
|
|
2071
2093
|
featureIdComponent = loadFeatureIdAttribute(featureIds, label);
|
|
@@ -2084,7 +2106,7 @@ function loadPrimitiveFeaturesLegacy(
|
|
|
2084
2106
|
loader,
|
|
2085
2107
|
primitive,
|
|
2086
2108
|
metadataExtension,
|
|
2087
|
-
frameState
|
|
2109
|
+
frameState,
|
|
2088
2110
|
) {
|
|
2089
2111
|
// For looking up the featureCount for each set of feature IDs
|
|
2090
2112
|
const { featureTables } = loader.gltfJson.extensions.EXT_feature_metadata;
|
|
@@ -2097,9 +2119,8 @@ function loadPrimitiveFeaturesLegacy(
|
|
|
2097
2119
|
for (let i = 0; i < featureIdAttributes.length; ++i) {
|
|
2098
2120
|
const featureIdAttribute = featureIdAttributes[i];
|
|
2099
2121
|
const featureTableId = featureIdAttribute.featureTable;
|
|
2100
|
-
const propertyTableId =
|
|
2101
|
-
featureTableId
|
|
2102
|
-
);
|
|
2122
|
+
const propertyTableId =
|
|
2123
|
+
loader._sortedPropertyTableIds.indexOf(featureTableId);
|
|
2103
2124
|
const featureCount = featureTables[featureTableId].count;
|
|
2104
2125
|
const label = `featureId_${nextFeatureIdIndex}`;
|
|
2105
2126
|
nextFeatureIdIndex++;
|
|
@@ -2110,14 +2131,14 @@ function loadPrimitiveFeaturesLegacy(
|
|
|
2110
2131
|
featureIdAttribute,
|
|
2111
2132
|
propertyTableId,
|
|
2112
2133
|
featureCount,
|
|
2113
|
-
label
|
|
2134
|
+
label,
|
|
2114
2135
|
);
|
|
2115
2136
|
} else {
|
|
2116
2137
|
featureIdComponent = loadFeatureIdImplicitRangeLegacy(
|
|
2117
2138
|
featureIdAttribute,
|
|
2118
2139
|
propertyTableId,
|
|
2119
2140
|
featureCount,
|
|
2120
|
-
label
|
|
2141
|
+
label,
|
|
2121
2142
|
);
|
|
2122
2143
|
}
|
|
2123
2144
|
primitive.featureIds.push(featureIdComponent);
|
|
@@ -2130,9 +2151,8 @@ function loadPrimitiveFeaturesLegacy(
|
|
|
2130
2151
|
for (let i = 0; i < featureIdTextures.length; ++i) {
|
|
2131
2152
|
const featureIdTexture = featureIdTextures[i];
|
|
2132
2153
|
const featureTableId = featureIdTexture.featureTable;
|
|
2133
|
-
const propertyTableId =
|
|
2134
|
-
featureTableId
|
|
2135
|
-
);
|
|
2154
|
+
const propertyTableId =
|
|
2155
|
+
loader._sortedPropertyTableIds.indexOf(featureTableId);
|
|
2136
2156
|
const featureCount = featureTables[featureTableId].count;
|
|
2137
2157
|
const featureIdLabel = `featureId_${nextFeatureIdIndex}`;
|
|
2138
2158
|
nextFeatureIdIndex++;
|
|
@@ -2143,7 +2163,7 @@ function loadPrimitiveFeaturesLegacy(
|
|
|
2143
2163
|
propertyTableId,
|
|
2144
2164
|
frameState,
|
|
2145
2165
|
featureCount,
|
|
2146
|
-
featureIdLabel
|
|
2166
|
+
featureIdLabel,
|
|
2147
2167
|
);
|
|
2148
2168
|
// Feature ID textures are added after feature ID attributes in the list
|
|
2149
2169
|
primitive.featureIds.push(featureIdComponent);
|
|
@@ -2179,7 +2199,7 @@ function loadPrimitiveMetadataLegacy(loader, primitive, metadataExtension) {
|
|
|
2179
2199
|
primitive.propertyTextureIds = metadataExtension.featureTextures.map(
|
|
2180
2200
|
function (id) {
|
|
2181
2201
|
return loader._sortedFeatureTextureIds.indexOf(id);
|
|
2182
|
-
}
|
|
2202
|
+
},
|
|
2183
2203
|
);
|
|
2184
2204
|
}
|
|
2185
2205
|
}
|
|
@@ -2201,15 +2221,15 @@ function loadInstances(loader, nodeExtensions, frameState) {
|
|
|
2201
2221
|
accessorId,
|
|
2202
2222
|
attributes,
|
|
2203
2223
|
semantic,
|
|
2204
|
-
frameState
|
|
2205
|
-
)
|
|
2224
|
+
frameState,
|
|
2225
|
+
),
|
|
2206
2226
|
);
|
|
2207
2227
|
}
|
|
2208
2228
|
}
|
|
2209
2229
|
|
|
2210
2230
|
const instancingExtExtensions = defaultValue(
|
|
2211
2231
|
instancingExtension.extensions,
|
|
2212
|
-
defaultValue.EMPTY_OBJECT
|
|
2232
|
+
defaultValue.EMPTY_OBJECT,
|
|
2213
2233
|
);
|
|
2214
2234
|
const instanceFeatures = nodeExtensions.EXT_instance_features;
|
|
2215
2235
|
const featureMetadataLegacy = instancingExtExtensions.EXT_feature_metadata;
|
|
@@ -2221,7 +2241,7 @@ function loadInstances(loader, nodeExtensions, frameState) {
|
|
|
2221
2241
|
loader.gltfJson,
|
|
2222
2242
|
instances,
|
|
2223
2243
|
featureMetadataLegacy,
|
|
2224
|
-
loader._sortedPropertyTableIds
|
|
2244
|
+
loader._sortedPropertyTableIds,
|
|
2225
2245
|
);
|
|
2226
2246
|
}
|
|
2227
2247
|
|
|
@@ -2255,7 +2275,7 @@ function loadInstanceFeaturesLegacy(
|
|
|
2255
2275
|
gltf,
|
|
2256
2276
|
instances,
|
|
2257
2277
|
metadataExtension,
|
|
2258
|
-
sortedPropertyTableIds
|
|
2278
|
+
sortedPropertyTableIds,
|
|
2259
2279
|
) {
|
|
2260
2280
|
// For looking up the featureCount for each set of feature IDs
|
|
2261
2281
|
const featureTables = gltf.extensions.EXT_feature_metadata.featureTables;
|
|
@@ -2275,14 +2295,14 @@ function loadInstanceFeaturesLegacy(
|
|
|
2275
2295
|
featureIdAttribute,
|
|
2276
2296
|
propertyTableId,
|
|
2277
2297
|
featureCount,
|
|
2278
|
-
label
|
|
2298
|
+
label,
|
|
2279
2299
|
);
|
|
2280
2300
|
} else {
|
|
2281
2301
|
featureIdComponent = loadFeatureIdImplicitRangeLegacy(
|
|
2282
2302
|
featureIdAttribute,
|
|
2283
2303
|
propertyTableId,
|
|
2284
2304
|
featureCount,
|
|
2285
|
-
label
|
|
2305
|
+
label,
|
|
2286
2306
|
);
|
|
2287
2307
|
}
|
|
2288
2308
|
instances.featureIds.push(featureIdComponent);
|
|
@@ -2310,7 +2330,7 @@ function loadNode(loader, gltfNode, frameState) {
|
|
|
2310
2330
|
|
|
2311
2331
|
const nodeExtensions = defaultValue(
|
|
2312
2332
|
gltfNode.extensions,
|
|
2313
|
-
defaultValue.EMPTY_OBJECT
|
|
2333
|
+
defaultValue.EMPTY_OBJECT,
|
|
2314
2334
|
);
|
|
2315
2335
|
const instancingExtension = nodeExtensions.EXT_mesh_gpu_instancing;
|
|
2316
2336
|
const articulationsExtension = nodeExtensions.AGI_articulations;
|
|
@@ -2318,7 +2338,7 @@ function loadNode(loader, gltfNode, frameState) {
|
|
|
2318
2338
|
if (defined(instancingExtension)) {
|
|
2319
2339
|
if (loader._loadForClassification) {
|
|
2320
2340
|
throw new RuntimeError(
|
|
2321
|
-
"Models with the EXT_mesh_gpu_instancing extension cannot be used for classification."
|
|
2341
|
+
"Models with the EXT_mesh_gpu_instancing extension cannot be used for classification.",
|
|
2322
2342
|
);
|
|
2323
2343
|
}
|
|
2324
2344
|
node.instances = loadInstances(loader, nodeExtensions, frameState);
|
|
@@ -2338,8 +2358,8 @@ function loadNode(loader, gltfNode, frameState) {
|
|
|
2338
2358
|
loader,
|
|
2339
2359
|
primitives[i],
|
|
2340
2360
|
defined(node.instances),
|
|
2341
|
-
frameState
|
|
2342
|
-
)
|
|
2361
|
+
frameState,
|
|
2362
|
+
),
|
|
2343
2363
|
);
|
|
2344
2364
|
}
|
|
2345
2365
|
|
|
@@ -2401,7 +2421,7 @@ function loadSkin(loader, gltfSkin, nodes) {
|
|
|
2401
2421
|
skin.inverseBindMatrices = loadAccessor(loader, accessor);
|
|
2402
2422
|
} else {
|
|
2403
2423
|
skin.inverseBindMatrices = new Array(jointIds.length).fill(
|
|
2404
|
-
Matrix4.IDENTITY
|
|
2424
|
+
Matrix4.IDENTITY,
|
|
2405
2425
|
);
|
|
2406
2426
|
}
|
|
2407
2427
|
|
|
@@ -2437,7 +2457,7 @@ async function loadStructuralMetadata(
|
|
|
2437
2457
|
loader,
|
|
2438
2458
|
extension,
|
|
2439
2459
|
extensionLegacy,
|
|
2440
|
-
frameState
|
|
2460
|
+
frameState,
|
|
2441
2461
|
) {
|
|
2442
2462
|
const structuralMetadataLoader = new GltfStructuralMetadataLoader({
|
|
2443
2463
|
gltf: loader.gltfJson,
|
|
@@ -2453,6 +2473,20 @@ async function loadStructuralMetadata(
|
|
|
2453
2473
|
return structuralMetadataLoader.load();
|
|
2454
2474
|
}
|
|
2455
2475
|
|
|
2476
|
+
async function loadMeshPrimitiveGpm(loader, gltf, extension, frameState) {
|
|
2477
|
+
const meshPrimitiveGpmLoader = new GltfMeshPrimitiveGpmLoader({
|
|
2478
|
+
gltf: gltf,
|
|
2479
|
+
extension: extension,
|
|
2480
|
+
gltfResource: loader._gltfResource,
|
|
2481
|
+
baseResource: loader._baseResource,
|
|
2482
|
+
supportedImageFormats: loader._supportedImageFormats,
|
|
2483
|
+
frameState: frameState,
|
|
2484
|
+
asynchronous: loader._asynchronous,
|
|
2485
|
+
});
|
|
2486
|
+
loader._meshPrimitiveGpmLoader = meshPrimitiveGpmLoader;
|
|
2487
|
+
return meshPrimitiveGpmLoader.load();
|
|
2488
|
+
}
|
|
2489
|
+
|
|
2456
2490
|
function loadAnimationSampler(loader, gltfSampler) {
|
|
2457
2491
|
const animationSampler = new AnimationSampler();
|
|
2458
2492
|
const accessors = loader.gltfJson.accessors;
|
|
@@ -2463,7 +2497,7 @@ function loadAnimationSampler(loader, gltfSampler) {
|
|
|
2463
2497
|
const gltfInterpolation = gltfSampler.interpolation;
|
|
2464
2498
|
animationSampler.interpolation = defaultValue(
|
|
2465
2499
|
InterpolationType[gltfInterpolation],
|
|
2466
|
-
InterpolationType.LINEAR
|
|
2500
|
+
InterpolationType.LINEAR,
|
|
2467
2501
|
);
|
|
2468
2502
|
|
|
2469
2503
|
const outputAccessor = accessors[gltfSampler.output];
|
|
@@ -2657,11 +2691,11 @@ function parse(loader, frameState) {
|
|
|
2657
2691
|
const center = Cartesian3.fromArray(
|
|
2658
2692
|
cesiumRtcExtension.center,
|
|
2659
2693
|
0,
|
|
2660
|
-
scratchCenter
|
|
2694
|
+
scratchCenter,
|
|
2661
2695
|
);
|
|
2662
2696
|
components.transform = Matrix4.fromTranslation(
|
|
2663
2697
|
center,
|
|
2664
|
-
components.transform
|
|
2698
|
+
components.transform,
|
|
2665
2699
|
);
|
|
2666
2700
|
}
|
|
2667
2701
|
|
|
@@ -2676,11 +2710,43 @@ function parse(loader, frameState) {
|
|
|
2676
2710
|
loader,
|
|
2677
2711
|
structuralMetadataExtension,
|
|
2678
2712
|
featureMetadataExtensionLegacy,
|
|
2679
|
-
frameState
|
|
2713
|
+
frameState,
|
|
2680
2714
|
);
|
|
2681
2715
|
loader._loaderPromises.push(promise);
|
|
2682
2716
|
}
|
|
2683
2717
|
|
|
2718
|
+
// Load NGA_gpm_local from root object
|
|
2719
|
+
const gpmExtension = extensions.NGA_gpm_local;
|
|
2720
|
+
if (defined(gpmExtension)) {
|
|
2721
|
+
const gltfGpmLocal = GltfGpmLoader.load(gpmExtension);
|
|
2722
|
+
loader._components.extensions["NGA_gpm_local"] = gltfGpmLocal;
|
|
2723
|
+
}
|
|
2724
|
+
|
|
2725
|
+
// Load NGA_gpm_local from mesh primitives
|
|
2726
|
+
const meshes = gltf.meshes;
|
|
2727
|
+
if (defined(meshes)) {
|
|
2728
|
+
for (const mesh of meshes) {
|
|
2729
|
+
const primitives = mesh.primitives;
|
|
2730
|
+
if (defined(primitives)) {
|
|
2731
|
+
for (const primitive of primitives) {
|
|
2732
|
+
const primitiveExtensions = primitive.extensions;
|
|
2733
|
+
if (defined(primitiveExtensions)) {
|
|
2734
|
+
const meshPrimitiveGpmExtension = primitiveExtensions.NGA_gpm_local;
|
|
2735
|
+
if (defined(meshPrimitiveGpmExtension)) {
|
|
2736
|
+
const promise = loadMeshPrimitiveGpm(
|
|
2737
|
+
loader,
|
|
2738
|
+
gltf,
|
|
2739
|
+
meshPrimitiveGpmExtension,
|
|
2740
|
+
frameState,
|
|
2741
|
+
);
|
|
2742
|
+
loader._loaderPromises.push(promise);
|
|
2743
|
+
}
|
|
2744
|
+
}
|
|
2745
|
+
}
|
|
2746
|
+
}
|
|
2747
|
+
}
|
|
2748
|
+
}
|
|
2749
|
+
|
|
2684
2750
|
// Gather promises and handle any errors
|
|
2685
2751
|
const readyPromises = [];
|
|
2686
2752
|
readyPromises.push.apply(readyPromises, loader._loaderPromises);
|
|
@@ -2745,6 +2811,16 @@ function unloadStructuralMetadata(loader) {
|
|
|
2745
2811
|
}
|
|
2746
2812
|
}
|
|
2747
2813
|
|
|
2814
|
+
function unloadMeshPrimitiveGpm(loader) {
|
|
2815
|
+
if (
|
|
2816
|
+
defined(loader._meshPrimitiveGpmLoader) &&
|
|
2817
|
+
!loader._meshPrimitiveGpmLoader.isDestroyed()
|
|
2818
|
+
) {
|
|
2819
|
+
loader._meshPrimitiveGpmLoader.destroy();
|
|
2820
|
+
loader._meshPrimitiveGpmLoader = undefined;
|
|
2821
|
+
}
|
|
2822
|
+
}
|
|
2823
|
+
|
|
2748
2824
|
/**
|
|
2749
2825
|
* Returns whether the resource has been unloaded.
|
|
2750
2826
|
* @private
|
|
@@ -2768,6 +2844,7 @@ GltfLoader.prototype.unload = function () {
|
|
|
2768
2844
|
unloadGeometry(this);
|
|
2769
2845
|
unloadGeneratedAttributes(this);
|
|
2770
2846
|
unloadStructuralMetadata(this);
|
|
2847
|
+
unloadMeshPrimitiveGpm(this);
|
|
2771
2848
|
|
|
2772
2849
|
this._components = undefined;
|
|
2773
2850
|
this._typedArray = undefined;
|