@cesium/engine 1.0.0 → 2.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/{AttributeCompression-4589338a.js → AttributeCompression-b646d393.js} +1 -1
- package/Build/Workers/{AxisAlignedBoundingBox-bfb1234f.js → AxisAlignedBoundingBox-47525601.js} +1 -1
- package/Build/Workers/{BoundingRectangle-7ffc2153.js → BoundingRectangle-93b263ac.js} +1 -1
- package/Build/Workers/{BoxGeometry-93f344a3.js → BoxGeometry-8c4b4125.js} +1 -1
- package/Build/Workers/{Color-0c5aaf47.js → Color-52c60ed7.js} +1 -1
- package/Build/Workers/{CoplanarPolygonGeometryLibrary-6597982a.js → CoplanarPolygonGeometryLibrary-33c4c1f8.js} +1 -1
- package/Build/Workers/{CorridorGeometryLibrary-2119580e.js → CorridorGeometryLibrary-5039cd8e.js} +1 -1
- package/Build/Workers/{CylinderGeometry-f9503c6d.js → CylinderGeometry-3ac44974.js} +1 -1
- package/Build/Workers/{EllipseGeometry-fedf72d5.js → EllipseGeometry-a9c9b3be.js} +1 -1
- package/Build/Workers/{EllipseGeometryLibrary-4ea68687.js → EllipseGeometryLibrary-855d4681.js} +1 -1
- package/Build/Workers/{EllipseOutlineGeometry-e2ae6a35.js → EllipseOutlineGeometry-017a5929.js} +1 -1
- package/Build/Workers/{EllipsoidGeodesic-16de63ea.js → EllipsoidGeodesic-98c62a56.js} +1 -1
- package/Build/Workers/{EllipsoidGeometry-95c0330e.js → EllipsoidGeometry-826e7bce.js} +1 -1
- package/Build/Workers/{EllipsoidOutlineGeometry-d6d2ceec.js → EllipsoidOutlineGeometry-784dcdb5.js} +1 -1
- package/Build/Workers/{EllipsoidRhumbLine-ae5e65e0.js → EllipsoidRhumbLine-19756602.js} +1 -1
- package/Build/Workers/{EllipsoidTangentPlane-bfc674bf.js → EllipsoidTangentPlane-ed9443a1.js} +1 -1
- package/Build/Workers/{EncodedCartesian3-f473ea18.js → EncodedCartesian3-81f70735.js} +1 -1
- package/Build/Workers/{FrustumGeometry-3bf2e4eb.js → FrustumGeometry-9f1ee4d8.js} +1 -1
- package/Build/Workers/{GeometryAttribute-df5f473e.js → GeometryAttribute-334718f8.js} +1 -1
- package/Build/Workers/{GeometryInstance-aa75b4cf.js → GeometryInstance-451dc1cd.js} +1 -1
- package/Build/Workers/{GeometryPipeline-f0e46c42.js → GeometryPipeline-8fb0db69.js} +1 -1
- package/Build/Workers/{IntersectionTests-9de29d51.js → IntersectionTests-27d49265.js} +1 -1
- package/Build/Workers/{Matrix2-ce637455.js → Matrix2-13178034.js} +4 -2
- package/Build/Workers/{Matrix3-4f4df527.js → Matrix3-315394f6.js} +2 -1
- package/Build/Workers/{OrientedBoundingBox-d3ff3d4d.js → OrientedBoundingBox-79ee7cbb.js} +5 -5
- package/Build/Workers/{Plane-b81241c2.js → Plane-900aa728.js} +1 -1
- package/Build/Workers/{PolygonGeometryLibrary-6f4937bb.js → PolygonGeometryLibrary-6b5a29e9.js} +1 -1
- package/Build/Workers/PolygonPipeline-21668b3f.js +1345 -0
- package/Build/Workers/{PolylinePipeline-2e2b015c.js → PolylinePipeline-5e2e1b21.js} +1 -1
- package/Build/Workers/{PolylineVolumeGeometryLibrary-7ee1d449.js → PolylineVolumeGeometryLibrary-97f0b94e.js} +1 -1
- package/Build/Workers/{PrimitivePipeline-a9b7aae0.js → PrimitivePipeline-5640850a.js} +1 -1
- package/Build/Workers/{RectangleGeometryLibrary-9aa6c8f6.js → RectangleGeometryLibrary-d5457f7b.js} +1 -1
- package/Build/Workers/{TerrainEncoding-b52dcfc5.js → TerrainEncoding-bfdf2021.js} +1 -1
- package/Build/Workers/{Transforms-2f755df8.js → Transforms-a05e5e6e.js} +114 -83
- package/Build/Workers/{WallGeometryLibrary-ab19a93d.js → WallGeometryLibrary-6db0ebb6.js} +1 -1
- package/Build/Workers/{WebMercatorProjection-9f25de49.js → WebMercatorProjection-13a90d41.js} +1 -1
- package/Build/Workers/cesiumWorkerBootstrapper.js +92 -2
- package/Build/Workers/combineGeometry.js +1 -1
- package/Build/Workers/createBoxGeometry.js +1 -1
- package/Build/Workers/createBoxOutlineGeometry.js +1 -1
- package/Build/Workers/createCircleGeometry.js +1 -1
- package/Build/Workers/createCircleOutlineGeometry.js +1 -1
- package/Build/Workers/createCoplanarPolygonGeometry.js +1 -1
- package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +1 -1
- package/Build/Workers/createCorridorGeometry.js +1 -1
- package/Build/Workers/createCorridorOutlineGeometry.js +1 -1
- package/Build/Workers/createCylinderGeometry.js +1 -1
- package/Build/Workers/createCylinderOutlineGeometry.js +1 -1
- 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 +1 -1
- package/Build/Workers/createGeometry.js +1 -1
- package/Build/Workers/createGroundPolylineGeometry.js +1 -1
- package/Build/Workers/createPlaneGeometry.js +1 -1
- package/Build/Workers/createPlaneOutlineGeometry.js +1 -1
- package/Build/Workers/createPolygonGeometry.js +1 -1
- package/Build/Workers/createPolygonOutlineGeometry.js +1 -1
- package/Build/Workers/createPolylineGeometry.js +1 -1
- package/Build/Workers/createPolylineVolumeGeometry.js +1 -1
- package/Build/Workers/createPolylineVolumeOutlineGeometry.js +1 -1
- package/Build/Workers/createRectangleGeometry.js +1 -1
- package/Build/Workers/createRectangleOutlineGeometry.js +1 -1
- package/Build/Workers/createSimplePolylineGeometry.js +1 -1
- package/Build/Workers/createSphereGeometry.js +1 -1
- package/Build/Workers/createSphereOutlineGeometry.js +1 -1
- package/Build/Workers/createVectorTileClampedPolylines.js +1 -1
- package/Build/Workers/createVectorTileGeometries.js +1 -1
- 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 +7 -3
- package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +1 -1
- package/Build/Workers/createWallGeometry.js +1 -1
- package/Build/Workers/createWallOutlineGeometry.js +1 -1
- package/Build/Workers/decodeDraco.js +9 -1
- package/Build/Workers/decodeI3S.js +1 -1
- package/Build/Workers/package.js +25 -1
- package/Build/Workers/transcodeKTX2.js +22 -2
- package/Build/Workers/transferTypedArrayTest.js +25 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +1 -1
- package/README.md +14 -16
- package/Source/Core/EarthOrientationParameters.js +67 -63
- package/Source/Core/FeatureDetection.js +18 -0
- package/Source/Core/Ion.js +1 -2
- package/Source/Core/Matrix2.js +2 -1
- package/Source/Core/Matrix3.js +2 -1
- package/Source/Core/Matrix4.js +1 -0
- package/Source/Core/OrientedBoundingBox.js +4 -4
- package/Source/Core/PixelFormat.js +22 -2
- package/Source/Core/S2Cell.js +3 -3
- package/Source/Core/Transforms.js +3 -7
- package/Source/Core/sampleTerrain.js +5 -0
- package/Source/DataSources/GpxDataSource.js +4 -6
- package/Source/DataSources/KmlDataSource.js +3 -5
- package/Source/Renderer/AutomaticUniforms.js +3 -3
- package/Source/Renderer/Context.js +20 -12
- package/Source/Renderer/Pass.js +3 -2
- package/Source/Renderer/ShaderBuilder.js +13 -12
- package/Source/Renderer/ShaderSource.js +31 -26
- package/Source/Renderer/demodernizeShader.js +76 -0
- package/Source/Scene/AutoExposure.js +5 -5
- package/Source/Scene/BatchTable.js +5 -5
- package/Source/Scene/BillboardCollection.js +2 -2
- package/Source/Scene/BingMapsImageryProvider.js +1 -1
- package/Source/Scene/Cesium3DTile.js +8 -2
- package/Source/Scene/Cesium3DTileBatchTable.js +28 -28
- package/Source/Scene/Cesium3DTileContentType.js +19 -0
- package/Source/Scene/Cesium3DTilesVoxelProvider.js +494 -0
- package/Source/Scene/Cesium3DTileset.js +6 -1
- package/Source/Scene/Cesium3DTilesetMetadata.js +2 -2
- package/Source/Scene/ClassificationPrimitive.js +3 -8
- package/Source/Scene/ContentMetadata.js +2 -2
- package/Source/Scene/DebugAppearance.js +7 -9
- package/Source/Scene/DebugInspector.js +5 -5
- package/Source/Scene/DepthPlane.js +0 -6
- package/Source/Scene/DerivedCommand.js +15 -22
- package/Source/Scene/EllipsoidPrimitive.js +0 -7
- package/Source/Scene/Expression.js +1 -1
- package/Source/Scene/Globe.js +10 -0
- package/Source/Scene/GlobeSurfaceTileProvider.js +7 -0
- package/Source/Scene/GlobeTranslucencyState.js +6 -6
- package/Source/Scene/GltfImageLoader.js +1 -1
- package/Source/Scene/GltfVertexBufferLoader.js +10 -2
- package/Source/Scene/GroundPolylinePrimitive.js +2 -4
- package/Source/Scene/GroupMetadata.js +2 -2
- package/Source/Scene/ImplicitMetadataView.js +2 -2
- package/Source/Scene/ImplicitSubtreeCache.js +127 -0
- package/Source/Scene/ImplicitSubtreeMetadata.js +2 -2
- package/Source/Scene/ImplicitTileset.js +3 -2
- package/Source/Scene/InvertClassification.js +9 -10
- package/Source/Scene/KeyframeNode.js +47 -0
- package/Source/Scene/Material.js +6 -6
- package/Source/Scene/Megatexture.js +490 -0
- package/Source/Scene/MetadataClass.js +60 -25
- package/Source/Scene/MetadataClassProperty.js +132 -68
- package/Source/Scene/MetadataComponentType.js +78 -57
- package/Source/Scene/MetadataEnum.js +59 -23
- package/Source/Scene/MetadataEnumValue.js +49 -15
- package/Source/Scene/MetadataSchema.js +53 -24
- package/Source/Scene/MetadataSchemaLoader.js +2 -2
- package/Source/Scene/MetadataSemantic.js +8 -0
- package/Source/Scene/MetadataTableProperty.js +2 -2
- package/Source/Scene/MetadataType.js +6 -14
- package/Source/Scene/Model/CustomShader.js +1 -1
- package/Source/Scene/Model/FeatureIdPipelineStage.js +4 -4
- package/Source/Scene/Model/GeoJsonLoader.js +1 -1
- package/Source/Scene/Model/LightingModel.js +1 -1
- package/Source/Scene/Model/MetadataPipelineStage.js +1 -1
- package/Source/Scene/Model/Model.js +2 -3
- package/Source/Scene/Model/PickingPipelineStage.js +1 -1
- package/Source/Scene/Model/buildDrawCommand.js +19 -11
- package/Source/Scene/OIT.js +211 -119
- package/Source/Scene/PickDepth.js +2 -2
- package/Source/Scene/PointCloud.js +12 -12
- package/Source/Scene/PointCloudEyeDomeLighting.js +9 -4
- package/Source/Scene/PolylineCollection.js +2 -7
- package/Source/Scene/PolylineMaterialAppearance.js +2 -3
- package/Source/Scene/PostProcessStage.js +13 -13
- package/Source/Scene/PostProcessStageLibrary.js +3 -3
- package/Source/Scene/Primitive.js +22 -31
- package/Source/Scene/PropertyAttribute.js +2 -2
- package/Source/Scene/PropertyAttributeProperty.js +2 -2
- package/Source/Scene/PropertyTable.js +2 -2
- package/Source/Scene/PropertyTexture.js +2 -2
- package/Source/Scene/PropertyTextureProperty.js +2 -2
- package/Source/Scene/ResourceCache.js +9 -1
- package/Source/Scene/ResourceCacheKey.js +9 -1
- package/Source/Scene/Scene.js +17 -0
- package/Source/Scene/ShadowMap.js +7 -7
- package/Source/Scene/ShadowMapShader.js +9 -9
- package/Source/Scene/ShadowVolumeAppearance.js +1 -1
- package/Source/Scene/SpatialNode.js +375 -0
- package/Source/Scene/StructuralMetadata.js +2 -2
- package/Source/Scene/TextureAtlas.js +5 -3
- package/Source/Scene/TileMetadata.js +2 -2
- package/Source/Scene/TilesetMetadata.js +2 -2
- package/Source/Scene/Vector3DTilePolylines.js +1 -1
- package/Source/Scene/Vector3DTilePrimitive.js +2 -2
- package/Source/Scene/VoxelBoxShape.js +527 -0
- package/Source/Scene/VoxelContent.js +169 -0
- package/Source/Scene/VoxelCylinderShape.js +937 -0
- package/Source/Scene/VoxelEllipsoidShape.js +945 -0
- package/Source/Scene/VoxelPrimitive.js +1919 -0
- package/Source/Scene/VoxelProvider.js +255 -0
- package/Source/Scene/VoxelRenderResources.js +224 -0
- package/Source/Scene/VoxelShape.js +152 -0
- package/Source/Scene/VoxelShapeType.js +105 -0
- package/Source/Scene/VoxelTraversal.js +1144 -0
- package/Source/Scene/buildVoxelDrawCommands.js +116 -0
- package/Source/Scene/computeFlyToLocationForRectangle.js +10 -1
- package/Source/Scene/createElevationBandMaterial.js +10 -15
- package/Source/Scene/getClipAndStyleCode.js +1 -1
- package/Source/Scene/getClippingFunction.js +3 -3
- package/Source/Scene/parseBatchTable.js +18 -2
- package/Source/Scene/preprocess3DTileContent.js +8 -0
- package/Source/Scene/processVoxelProperties.js +455 -0
- package/Source/Shaders/AdjustTranslucentFS.glsl +9 -6
- package/Source/Shaders/AdjustTranslucentFS.js +9 -6
- package/Source/Shaders/Appearances/AllMaterialAppearanceFS.glsl +7 -7
- package/Source/Shaders/Appearances/AllMaterialAppearanceFS.js +7 -7
- package/Source/Shaders/Appearances/AllMaterialAppearanceVS.glsl +12 -12
- package/Source/Shaders/Appearances/AllMaterialAppearanceVS.js +12 -12
- package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.glsl +4 -4
- package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.js +4 -4
- package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.glsl +6 -6
- package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.js +6 -6
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.glsl +5 -5
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.js +5 -5
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.glsl +7 -7
- package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.js +7 -7
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.glsl +4 -4
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.js +4 -4
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.glsl +8 -8
- package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.js +8 -8
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.glsl +2 -2
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.js +2 -2
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.glsl +5 -5
- package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.js +5 -5
- package/Source/Shaders/Appearances/PolylineColorAppearanceVS.glsl +10 -10
- package/Source/Shaders/Appearances/PolylineColorAppearanceVS.js +10 -10
- package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.glsl +12 -12
- package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.js +12 -12
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.glsl +5 -5
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.js +5 -5
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.glsl +8 -8
- package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.js +8 -8
- package/Source/Shaders/BillboardCollectionFS.glsl +15 -15
- package/Source/Shaders/BillboardCollectionFS.js +15 -15
- package/Source/Shaders/BillboardCollectionVS.glsl +24 -24
- package/Source/Shaders/BillboardCollectionVS.js +24 -24
- package/Source/Shaders/BrdfLutGeneratorFS.glsl +2 -2
- package/Source/Shaders/BrdfLutGeneratorFS.js +2 -2
- package/Source/Shaders/Builtin/Constants/passOverlay.glsl +1 -1
- package/Source/Shaders/Builtin/Constants/passOverlay.js +1 -1
- package/Source/Shaders/Builtin/Constants/passVoxels.glsl +9 -0
- package/Source/Shaders/Builtin/Constants/passVoxels.js +11 -0
- package/Source/Shaders/Builtin/CzmBuiltins.js +19 -15
- package/Source/Shaders/Builtin/Functions/depthClamp.glsl +3 -3
- package/Source/Shaders/Builtin/Functions/depthClamp.js +3 -3
- package/Source/Shaders/Builtin/Functions/getWaterNoise.glsl +4 -4
- package/Source/Shaders/Builtin/Functions/getWaterNoise.js +4 -4
- package/Source/Shaders/Builtin/Functions/phong.glsl +1 -1
- package/Source/Shaders/Builtin/Functions/phong.js +1 -1
- package/Source/Shaders/Builtin/Functions/readDepth.glsl +1 -1
- package/Source/Shaders/Builtin/Functions/readDepth.js +1 -1
- package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.glsl +5 -5
- package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.js +5 -5
- package/Source/Shaders/Builtin/Functions/shadowDepthCompare.glsl +3 -3
- package/Source/Shaders/Builtin/Functions/shadowDepthCompare.js +3 -3
- package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.glsl +1 -1
- package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js +1 -1
- package/Source/Shaders/Builtin/Functions/textureCube.glsl +17 -0
- package/Source/Shaders/Builtin/Functions/textureCube.js +18 -0
- package/Source/Shaders/Builtin/Functions/translateRelativeToEye.glsl +2 -2
- package/Source/Shaders/Builtin/Functions/translateRelativeToEye.js +2 -2
- package/Source/Shaders/Builtin/Functions/vertexLogDepth.glsl +2 -2
- package/Source/Shaders/Builtin/Functions/vertexLogDepth.js +2 -2
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.glsl +55 -43
- package/Source/Shaders/Builtin/Functions/windowToEyeCoordinates.js +55 -43
- package/Source/Shaders/Builtin/Functions/writeDepthClamp.glsl +5 -8
- package/Source/Shaders/Builtin/Functions/writeDepthClamp.js +5 -8
- package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +6 -6
- package/Source/Shaders/Builtin/Functions/writeLogDepth.js +6 -6
- package/Source/Shaders/CloudCollectionFS.glsl +18 -18
- package/Source/Shaders/CloudCollectionFS.js +18 -18
- package/Source/Shaders/CloudCollectionVS.glsl +11 -11
- package/Source/Shaders/CloudCollectionVS.js +11 -11
- package/Source/Shaders/CloudNoiseFS.glsl +5 -5
- package/Source/Shaders/CloudNoiseFS.js +5 -5
- package/Source/Shaders/CloudNoiseVS.glsl +2 -2
- package/Source/Shaders/CloudNoiseVS.js +2 -2
- package/Source/Shaders/CompareAndPackTranslucentDepth.glsl +4 -4
- package/Source/Shaders/CompareAndPackTranslucentDepth.js +4 -4
- package/Source/Shaders/CompositeOITFS.glsl +6 -6
- package/Source/Shaders/CompositeOITFS.js +6 -6
- package/Source/Shaders/DepthPlaneFS.glsl +2 -2
- package/Source/Shaders/DepthPlaneFS.js +2 -2
- package/Source/Shaders/DepthPlaneVS.glsl +2 -2
- package/Source/Shaders/DepthPlaneVS.js +2 -2
- package/Source/Shaders/EllipsoidFS.glsl +5 -13
- package/Source/Shaders/EllipsoidFS.js +6 -14
- package/Source/Shaders/EllipsoidVS.glsl +2 -2
- package/Source/Shaders/EllipsoidVS.js +2 -2
- package/Source/Shaders/FXAA3_11.glsl +4 -4
- package/Source/Shaders/FXAA3_11.js +4 -4
- package/Source/Shaders/GlobeFS.glsl +17 -16
- package/Source/Shaders/GlobeFS.js +17 -16
- package/Source/Shaders/GlobeVS.glsl +17 -17
- package/Source/Shaders/GlobeVS.js +17 -17
- package/Source/Shaders/Materials/AspectRampMaterial.glsl +1 -1
- package/Source/Shaders/Materials/AspectRampMaterial.js +1 -1
- package/Source/Shaders/Materials/BumpMapMaterial.glsl +3 -3
- package/Source/Shaders/Materials/BumpMapMaterial.js +3 -3
- package/Source/Shaders/Materials/ElevationBandMaterial.glsl +3 -3
- package/Source/Shaders/Materials/ElevationBandMaterial.js +3 -3
- package/Source/Shaders/Materials/ElevationContourMaterial.glsl +2 -1
- package/Source/Shaders/Materials/ElevationContourMaterial.js +2 -1
- package/Source/Shaders/Materials/ElevationRampMaterial.glsl +1 -1
- package/Source/Shaders/Materials/ElevationRampMaterial.js +1 -1
- package/Source/Shaders/Materials/GridMaterial.glsl +3 -2
- package/Source/Shaders/Materials/GridMaterial.js +3 -2
- package/Source/Shaders/Materials/NormalMapMaterial.glsl +1 -1
- package/Source/Shaders/Materials/NormalMapMaterial.js +1 -1
- package/Source/Shaders/Materials/PolylineArrowMaterial.glsl +3 -2
- package/Source/Shaders/Materials/PolylineArrowMaterial.js +3 -2
- package/Source/Shaders/Materials/PolylineDashMaterial.glsl +1 -1
- package/Source/Shaders/Materials/PolylineDashMaterial.js +1 -1
- package/Source/Shaders/Materials/PolylineOutlineMaterial.glsl +1 -1
- package/Source/Shaders/Materials/PolylineOutlineMaterial.js +1 -1
- package/Source/Shaders/Materials/SlopeRampMaterial.glsl +1 -1
- package/Source/Shaders/Materials/SlopeRampMaterial.js +1 -1
- package/Source/Shaders/Materials/Water.glsl +1 -1
- package/Source/Shaders/Materials/Water.js +1 -1
- package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +3 -3
- package/Source/Shaders/Model/ImageBasedLightingStageFS.js +3 -3
- package/Source/Shaders/Model/MaterialStageFS.glsl +10 -10
- package/Source/Shaders/Model/MaterialStageFS.js +10 -10
- package/Source/Shaders/Model/ModelClippingPlanesStageFS.glsl +3 -3
- package/Source/Shaders/Model/ModelClippingPlanesStageFS.js +3 -3
- package/Source/Shaders/Model/ModelFS.glsl +1 -1
- package/Source/Shaders/Model/ModelFS.js +1 -1
- package/Source/Shaders/Model/PrimitiveOutlineStageFS.glsl +3 -3
- package/Source/Shaders/Model/PrimitiveOutlineStageFS.js +3 -3
- package/Source/Shaders/Model/SelectedFeatureIdStageCommon.glsl +1 -1
- package/Source/Shaders/Model/SelectedFeatureIdStageCommon.js +1 -1
- package/Source/Shaders/OctahedralProjectionAtlasFS.glsl +8 -8
- package/Source/Shaders/OctahedralProjectionAtlasFS.js +8 -8
- package/Source/Shaders/OctahedralProjectionFS.glsl +4 -4
- package/Source/Shaders/OctahedralProjectionFS.js +4 -4
- package/Source/Shaders/OctahedralProjectionVS.glsl +3 -3
- package/Source/Shaders/OctahedralProjectionVS.js +3 -3
- package/Source/Shaders/PointPrimitiveCollectionFS.glsl +6 -6
- package/Source/Shaders/PointPrimitiveCollectionFS.js +6 -6
- package/Source/Shaders/PointPrimitiveCollectionVS.glsl +17 -14
- package/Source/Shaders/PointPrimitiveCollectionVS.js +17 -14
- package/Source/Shaders/PolylineFS.glsl +3 -3
- package/Source/Shaders/PolylineFS.js +3 -3
- package/Source/Shaders/PolylineShadowVolumeFS.glsl +12 -16
- package/Source/Shaders/PolylineShadowVolumeFS.js +12 -16
- package/Source/Shaders/PolylineShadowVolumeMorphFS.glsl +8 -8
- package/Source/Shaders/PolylineShadowVolumeMorphFS.js +8 -8
- package/Source/Shaders/PolylineShadowVolumeMorphVS.glsl +20 -20
- package/Source/Shaders/PolylineShadowVolumeMorphVS.js +20 -20
- package/Source/Shaders/PolylineShadowVolumeVS.glsl +20 -20
- package/Source/Shaders/PolylineShadowVolumeVS.js +20 -20
- package/Source/Shaders/PolylineVS.glsl +17 -17
- package/Source/Shaders/PolylineVS.js +17 -17
- package/Source/Shaders/PostProcessStages/AcesTonemappingStage.glsl +4 -4
- package/Source/Shaders/PostProcessStages/AcesTonemappingStage.js +4 -4
- package/Source/Shaders/PostProcessStages/AdditiveBlend.glsl +4 -4
- package/Source/Shaders/PostProcessStages/AdditiveBlend.js +4 -4
- package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.glsl +4 -4
- package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.js +4 -4
- package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.glsl +4 -4
- package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.js +4 -4
- package/Source/Shaders/PostProcessStages/BlackAndWhite.glsl +4 -4
- package/Source/Shaders/PostProcessStages/BlackAndWhite.js +4 -4
- package/Source/Shaders/PostProcessStages/BloomComposite.glsl +5 -5
- package/Source/Shaders/PostProcessStages/BloomComposite.js +5 -5
- package/Source/Shaders/PostProcessStages/BrightPass.glsl +3 -3
- package/Source/Shaders/PostProcessStages/BrightPass.js +3 -3
- package/Source/Shaders/PostProcessStages/Brightness.glsl +3 -3
- package/Source/Shaders/PostProcessStages/Brightness.js +3 -3
- package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.glsl +5 -5
- package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.js +5 -5
- package/Source/Shaders/PostProcessStages/ContrastBias.glsl +3 -3
- package/Source/Shaders/PostProcessStages/ContrastBias.js +3 -3
- package/Source/Shaders/PostProcessStages/DepthOfField.glsl +2 -2
- package/Source/Shaders/PostProcessStages/DepthOfField.js +2 -2
- package/Source/Shaders/PostProcessStages/DepthView.glsl +2 -2
- package/Source/Shaders/PostProcessStages/DepthView.js +2 -2
- package/Source/Shaders/PostProcessStages/DepthViewPacked.glsl +3 -3
- package/Source/Shaders/PostProcessStages/DepthViewPacked.js +3 -3
- package/Source/Shaders/PostProcessStages/EdgeDetection.glsl +7 -7
- package/Source/Shaders/PostProcessStages/EdgeDetection.js +7 -7
- package/Source/Shaders/PostProcessStages/FXAA.glsl +3 -3
- package/Source/Shaders/PostProcessStages/FXAA.js +3 -3
- package/Source/Shaders/PostProcessStages/FilmicTonemapping.glsl +4 -4
- package/Source/Shaders/PostProcessStages/FilmicTonemapping.js +4 -4
- package/Source/Shaders/PostProcessStages/GaussianBlur1D.glsl +5 -5
- package/Source/Shaders/PostProcessStages/GaussianBlur1D.js +5 -5
- package/Source/Shaders/PostProcessStages/LensFlare.glsl +13 -13
- package/Source/Shaders/PostProcessStages/LensFlare.js +13 -13
- package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.glsl +4 -4
- package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.js +4 -4
- package/Source/Shaders/PostProcessStages/NightVision.glsl +3 -3
- package/Source/Shaders/PostProcessStages/NightVision.js +3 -3
- package/Source/Shaders/PostProcessStages/PassThrough.glsl +2 -2
- package/Source/Shaders/PostProcessStages/PassThrough.js +2 -2
- package/Source/Shaders/PostProcessStages/PassThroughDepth.glsl +2 -2
- package/Source/Shaders/PostProcessStages/PassThroughDepth.js +2 -2
- package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.glsl +7 -9
- package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.js +8 -10
- package/Source/Shaders/PostProcessStages/ReinhardTonemapping.glsl +4 -4
- package/Source/Shaders/PostProcessStages/ReinhardTonemapping.js +4 -4
- package/Source/Shaders/PostProcessStages/Silhouette.glsl +4 -4
- package/Source/Shaders/PostProcessStages/Silhouette.js +4 -4
- package/Source/Shaders/ReprojectWebMercatorFS.glsl +2 -2
- package/Source/Shaders/ReprojectWebMercatorFS.js +2 -2
- package/Source/Shaders/ReprojectWebMercatorVS.glsl +3 -3
- package/Source/Shaders/ReprojectWebMercatorVS.js +3 -3
- package/Source/Shaders/ShadowVolumeAppearanceFS.glsl +19 -23
- package/Source/Shaders/ShadowVolumeAppearanceFS.js +20 -24
- package/Source/Shaders/ShadowVolumeAppearanceVS.glsl +12 -12
- package/Source/Shaders/ShadowVolumeAppearanceVS.js +12 -12
- package/Source/Shaders/ShadowVolumeFS.glsl +2 -6
- package/Source/Shaders/ShadowVolumeFS.js +3 -7
- package/Source/Shaders/SkyAtmosphereFS.glsl +6 -6
- package/Source/Shaders/SkyAtmosphereFS.js +6 -6
- package/Source/Shaders/SkyAtmosphereVS.glsl +6 -6
- package/Source/Shaders/SkyAtmosphereVS.js +6 -6
- package/Source/Shaders/SkyBoxFS.glsl +3 -3
- package/Source/Shaders/SkyBoxFS.js +3 -3
- package/Source/Shaders/SkyBoxVS.glsl +2 -2
- package/Source/Shaders/SkyBoxVS.js +2 -2
- package/Source/Shaders/SunFS.glsl +3 -3
- package/Source/Shaders/SunFS.js +3 -3
- package/Source/Shaders/SunTextureFS.glsl +2 -2
- package/Source/Shaders/SunTextureFS.js +2 -2
- package/Source/Shaders/SunVS.glsl +2 -2
- package/Source/Shaders/SunVS.js +2 -2
- package/Source/Shaders/Vector3DTileClampedPolylinesFS.glsl +9 -13
- package/Source/Shaders/Vector3DTileClampedPolylinesFS.js +9 -13
- package/Source/Shaders/Vector3DTileClampedPolylinesVS.glsl +12 -12
- package/Source/Shaders/Vector3DTileClampedPolylinesVS.js +12 -12
- package/Source/Shaders/Vector3DTilePolylinesVS.glsl +5 -5
- package/Source/Shaders/Vector3DTilePolylinesVS.js +5 -5
- package/Source/Shaders/VectorTileVS.glsl +2 -2
- package/Source/Shaders/VectorTileVS.js +2 -2
- package/Source/Shaders/ViewportQuadFS.glsl +2 -2
- package/Source/Shaders/ViewportQuadFS.js +2 -2
- package/Source/Shaders/ViewportQuadVS.glsl +3 -3
- package/Source/Shaders/ViewportQuadVS.js +3 -3
- package/Source/Shaders/Voxels/IntersectBox.glsl +79 -0
- package/Source/Shaders/Voxels/IntersectBox.js +81 -0
- package/Source/Shaders/Voxels/IntersectClippingPlanes.glsl +70 -0
- package/Source/Shaders/Voxels/IntersectClippingPlanes.js +72 -0
- package/Source/Shaders/Voxels/IntersectCylinder.glsl +273 -0
- package/Source/Shaders/Voxels/IntersectCylinder.js +275 -0
- package/Source/Shaders/Voxels/IntersectDepth.glsl +23 -0
- package/Source/Shaders/Voxels/IntersectDepth.js +25 -0
- package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +347 -0
- package/Source/Shaders/Voxels/IntersectEllipsoid.js +349 -0
- package/Source/Shaders/Voxels/Intersection.glsl +54 -0
- package/Source/Shaders/Voxels/Intersection.js +56 -0
- package/Source/Shaders/Voxels/IntersectionUtils.glsl +151 -0
- package/Source/Shaders/Voxels/IntersectionUtils.js +153 -0
- package/Source/Shaders/Voxels/Megatexture.glsl +136 -0
- package/Source/Shaders/Voxels/Megatexture.js +138 -0
- package/Source/Shaders/Voxels/Octree.glsl +221 -0
- package/Source/Shaders/Voxels/Octree.js +223 -0
- package/Source/Shaders/Voxels/VoxelFS.glsl +150 -0
- package/Source/Shaders/Voxels/VoxelFS.js +152 -0
- package/Source/Shaders/Voxels/VoxelVS.glsl +11 -0
- package/Source/Shaders/Voxels/VoxelVS.js +13 -0
- package/Source/Shaders/Voxels/convertUvToBox.glsl +16 -0
- package/Source/Shaders/Voxels/convertUvToBox.js +18 -0
- package/Source/Shaders/Voxels/convertUvToCylinder.glsl +75 -0
- package/Source/Shaders/Voxels/convertUvToCylinder.js +77 -0
- package/Source/Shaders/Voxels/convertUvToEllipsoid.glsl +130 -0
- package/Source/Shaders/Voxels/convertUvToEllipsoid.js +132 -0
- package/Source/ThirdParty/Workers/z-worker-pako.js +0 -0
- package/Source/WorkersES6/decodeDraco.js +9 -1
- package/index.d.ts +3148 -2297
- package/index.js +1118 -1085
- package/package.json +3 -4
- package/Build/Workers/PolygonPipeline-774a8aaf.js +0 -1341
- package/Source/Renderer/modernizeShader.js +0 -242
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import Check from "../Core/Check.js";
|
|
2
|
+
import clone from "../Core/clone.js";
|
|
3
|
+
import defaultValue from "../Core/defaultValue.js";
|
|
2
4
|
import defined from "../Core/defined.js";
|
|
3
5
|
import MetadataClass from "./MetadataClass.js";
|
|
4
6
|
import MetadataEnum from "./MetadataEnum.js";
|
|
@@ -6,17 +8,50 @@ import MetadataEnum from "./MetadataEnum.js";
|
|
|
6
8
|
/**
|
|
7
9
|
* A schema containing classes and enums.
|
|
8
10
|
* <p>
|
|
9
|
-
* See the {@link https://github.com/CesiumGS/3d-tiles/tree/main/
|
|
11
|
+
* See the {@link https://github.com/CesiumGS/3d-tiles/tree/main/specification/Metadata|3D Metadata Specification} for 3D Tiles
|
|
10
12
|
* </p>
|
|
11
13
|
*
|
|
12
|
-
* @param {Object}
|
|
14
|
+
* @param {Object} options Object with the following properties:
|
|
15
|
+
* @param {String} [options.id] The ID of the schema
|
|
16
|
+
* @param {String} [options.name] The name of the schema.
|
|
17
|
+
* @param {String} [options.description] The description of the schema.
|
|
18
|
+
* @param {String} [options.version] The application-specific version of the schema.
|
|
19
|
+
* @param {Object.<String, MetadataClass>} [options.classes] Classes defined in the schema, where each key is the class ID.
|
|
20
|
+
* @param {Object.<String, MetadataEnum>} [options.enums] Enums defined in the schema, where each key is the enum ID.
|
|
21
|
+
* @param {*} [options.extras] Extra user-defined properties.
|
|
22
|
+
* @param {Object} [options.extensions] An object containing extensions.
|
|
13
23
|
*
|
|
14
24
|
* @alias MetadataSchema
|
|
15
25
|
* @constructor
|
|
26
|
+
* @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.
|
|
27
|
+
*/
|
|
28
|
+
function MetadataSchema(options) {
|
|
29
|
+
options = defaultValue(options, defaultValue.EMPTY_OBJECT);
|
|
30
|
+
|
|
31
|
+
const classes = defaultValue(options.classes, {});
|
|
32
|
+
const enums = defaultValue(options.enums, {});
|
|
33
|
+
|
|
34
|
+
this._classes = classes;
|
|
35
|
+
this._enums = enums;
|
|
36
|
+
this._id = options.id;
|
|
37
|
+
this._name = options.name;
|
|
38
|
+
this._description = options.description;
|
|
39
|
+
this._version = options.version;
|
|
40
|
+
this._extras = clone(options.extras, true);
|
|
41
|
+
this._extensions = clone(options.extensions, true);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Creates a {@link MetadataSchema} from either 3D Tiles 1.1, 3DTILES_metadata, EXT_structural_metadata, or EXT_feature_metadata.
|
|
46
|
+
*
|
|
47
|
+
* @param {Object} schema The schema JSON object.
|
|
48
|
+
*
|
|
49
|
+
* @returns {MetadataSchema} The newly created metadata schema
|
|
50
|
+
*
|
|
16
51
|
* @private
|
|
17
52
|
* @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.
|
|
18
53
|
*/
|
|
19
|
-
function
|
|
54
|
+
MetadataSchema.fromJson = function (schema) {
|
|
20
55
|
//>>includeStart('debug', pragmas.debug);
|
|
21
56
|
Check.typeOf.object("schema", schema);
|
|
22
57
|
//>>includeEnd('debug');
|
|
@@ -25,7 +60,7 @@ function MetadataSchema(schema) {
|
|
|
25
60
|
if (defined(schema.enums)) {
|
|
26
61
|
for (const enumId in schema.enums) {
|
|
27
62
|
if (schema.enums.hasOwnProperty(enumId)) {
|
|
28
|
-
enums[enumId] =
|
|
63
|
+
enums[enumId] = MetadataEnum.fromJson({
|
|
29
64
|
id: enumId,
|
|
30
65
|
enum: schema.enums[enumId],
|
|
31
66
|
});
|
|
@@ -37,7 +72,7 @@ function MetadataSchema(schema) {
|
|
|
37
72
|
if (defined(schema.classes)) {
|
|
38
73
|
for (const classId in schema.classes) {
|
|
39
74
|
if (schema.classes.hasOwnProperty(classId)) {
|
|
40
|
-
classes[classId] =
|
|
75
|
+
classes[classId] = MetadataClass.fromJson({
|
|
41
76
|
id: classId,
|
|
42
77
|
class: schema.classes[classId],
|
|
43
78
|
enums: enums,
|
|
@@ -46,15 +81,17 @@ function MetadataSchema(schema) {
|
|
|
46
81
|
}
|
|
47
82
|
}
|
|
48
83
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
84
|
+
return new MetadataSchema({
|
|
85
|
+
id: schema.id,
|
|
86
|
+
name: schema.name,
|
|
87
|
+
description: schema.description,
|
|
88
|
+
version: schema.version,
|
|
89
|
+
classes: classes,
|
|
90
|
+
enums: enums,
|
|
91
|
+
extras: schema.extras,
|
|
92
|
+
extensions: schema.extensions,
|
|
93
|
+
});
|
|
94
|
+
};
|
|
58
95
|
|
|
59
96
|
Object.defineProperties(MetadataSchema.prototype, {
|
|
60
97
|
/**
|
|
@@ -63,7 +100,6 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
63
100
|
* @memberof MetadataSchema.prototype
|
|
64
101
|
* @type {Object.<String, MetadataClass>}
|
|
65
102
|
* @readonly
|
|
66
|
-
* @private
|
|
67
103
|
*/
|
|
68
104
|
classes: {
|
|
69
105
|
get: function () {
|
|
@@ -77,7 +113,6 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
77
113
|
* @memberof MetadataSchema.prototype
|
|
78
114
|
* @type {Object.<String, MetadataEnum>}
|
|
79
115
|
* @readonly
|
|
80
|
-
* @private
|
|
81
116
|
*/
|
|
82
117
|
enums: {
|
|
83
118
|
get: function () {
|
|
@@ -91,7 +126,6 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
91
126
|
* @memberof MetadataSchema.prototype
|
|
92
127
|
* @type {String}
|
|
93
128
|
* @readonly
|
|
94
|
-
* @private
|
|
95
129
|
*/
|
|
96
130
|
id: {
|
|
97
131
|
get: function () {
|
|
@@ -105,7 +139,6 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
105
139
|
* @memberof MetadataSchema.prototype
|
|
106
140
|
* @type {String}
|
|
107
141
|
* @readonly
|
|
108
|
-
* @private
|
|
109
142
|
*/
|
|
110
143
|
name: {
|
|
111
144
|
get: function () {
|
|
@@ -119,7 +152,6 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
119
152
|
* @memberof MetadataSchema.prototype
|
|
120
153
|
* @type {String}
|
|
121
154
|
* @readonly
|
|
122
|
-
* @private
|
|
123
155
|
*/
|
|
124
156
|
description: {
|
|
125
157
|
get: function () {
|
|
@@ -133,7 +165,6 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
133
165
|
* @memberof MetadataSchema.prototype
|
|
134
166
|
* @type {String}
|
|
135
167
|
* @readonly
|
|
136
|
-
* @private
|
|
137
168
|
*/
|
|
138
169
|
version: {
|
|
139
170
|
get: function () {
|
|
@@ -142,12 +173,11 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
142
173
|
},
|
|
143
174
|
|
|
144
175
|
/**
|
|
145
|
-
*
|
|
176
|
+
* Extra user-defined properties.
|
|
146
177
|
*
|
|
147
178
|
* @memberof MetadataSchema.prototype
|
|
148
179
|
* @type {*}
|
|
149
180
|
* @readonly
|
|
150
|
-
* @private
|
|
151
181
|
*/
|
|
152
182
|
extras: {
|
|
153
183
|
get: function () {
|
|
@@ -156,12 +186,11 @@ Object.defineProperties(MetadataSchema.prototype, {
|
|
|
156
186
|
},
|
|
157
187
|
|
|
158
188
|
/**
|
|
159
|
-
*
|
|
189
|
+
* An object containing extensions.
|
|
160
190
|
*
|
|
161
191
|
* @memberof MetadataSchema.prototype
|
|
162
192
|
* @type {Object}
|
|
163
193
|
* @readonly
|
|
164
|
-
* @private
|
|
165
194
|
*/
|
|
166
195
|
extensions: {
|
|
167
196
|
get: function () {
|
|
@@ -39,7 +39,7 @@ function MetadataSchemaLoader(options) {
|
|
|
39
39
|
}
|
|
40
40
|
//>>includeEnd('debug');
|
|
41
41
|
|
|
42
|
-
this._schema = defined(schema) ?
|
|
42
|
+
this._schema = defined(schema) ? MetadataSchema.fromJson(schema) : undefined;
|
|
43
43
|
this._resource = resource;
|
|
44
44
|
this._cacheKey = cacheKey;
|
|
45
45
|
this._state = ResourceLoaderState.UNLOADED;
|
|
@@ -120,7 +120,7 @@ function loadExternalSchema(schemaLoader) {
|
|
|
120
120
|
if (schemaLoader.isDestroyed()) {
|
|
121
121
|
return;
|
|
122
122
|
}
|
|
123
|
-
schemaLoader._schema =
|
|
123
|
+
schemaLoader._schema = MetadataSchema.fromJson(json);
|
|
124
124
|
schemaLoader._state = ResourceLoaderState.READY;
|
|
125
125
|
return schemaLoader;
|
|
126
126
|
})
|
|
@@ -32,6 +32,14 @@ const MetadataSemantic = {
|
|
|
32
32
|
* @private
|
|
33
33
|
*/
|
|
34
34
|
DESCRIPTION: "DESCRIPTION",
|
|
35
|
+
/**
|
|
36
|
+
* The number of tiles in a tileset, stored as a <code>UINT64</code>.
|
|
37
|
+
*
|
|
38
|
+
* @type {String}
|
|
39
|
+
* @constant
|
|
40
|
+
* @private
|
|
41
|
+
*/
|
|
42
|
+
TILESET_TILE_COUNT: "TILESET_TILE_COUNT",
|
|
35
43
|
/**
|
|
36
44
|
* A bounding box for a tile, stored as an array of 12 <code>FLOAT32</code> or <code>FLOAT64</code> components. The components are the same format as for <code>boundingVolume.box</code> in 3D Tiles 1.0. This semantic is used to provide a tighter bounding volume than the one implicitly calculated in implicit tiling.
|
|
37
45
|
*
|
|
@@ -265,7 +265,7 @@ Object.defineProperties(MetadataTableProperty.prototype, {
|
|
|
265
265
|
},
|
|
266
266
|
|
|
267
267
|
/**
|
|
268
|
-
*
|
|
268
|
+
* Extra user-defined properties.
|
|
269
269
|
*
|
|
270
270
|
* @memberof MetadataTableProperty.prototype
|
|
271
271
|
* @type {*}
|
|
@@ -279,7 +279,7 @@ Object.defineProperties(MetadataTableProperty.prototype, {
|
|
|
279
279
|
},
|
|
280
280
|
|
|
281
281
|
/**
|
|
282
|
-
*
|
|
282
|
+
* An object containing extensions.
|
|
283
283
|
*
|
|
284
284
|
* @memberof MetadataTableProperty.prototype
|
|
285
285
|
* @type {*}
|
|
@@ -11,8 +11,7 @@ import Matrix4 from "../Core/Matrix4.js";
|
|
|
11
11
|
* An enum of metadata types. These metadata types are containers containing
|
|
12
12
|
* one or more components of type {@link MetadataComponentType}
|
|
13
13
|
*
|
|
14
|
-
* @enum
|
|
15
|
-
* @private
|
|
14
|
+
* @enum {String}
|
|
16
15
|
* @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.
|
|
17
16
|
*/
|
|
18
17
|
const MetadataType = {
|
|
@@ -21,7 +20,6 @@ const MetadataType = {
|
|
|
21
20
|
*
|
|
22
21
|
* @type {String}
|
|
23
22
|
* @constant
|
|
24
|
-
* @private
|
|
25
23
|
*/
|
|
26
24
|
SCALAR: "SCALAR",
|
|
27
25
|
/**
|
|
@@ -29,7 +27,6 @@ const MetadataType = {
|
|
|
29
27
|
*
|
|
30
28
|
* @type {String}
|
|
31
29
|
* @constant
|
|
32
|
-
* @private
|
|
33
30
|
*/
|
|
34
31
|
VEC2: "VEC2",
|
|
35
32
|
/**
|
|
@@ -37,7 +34,6 @@ const MetadataType = {
|
|
|
37
34
|
*
|
|
38
35
|
* @type {String}
|
|
39
36
|
* @constant
|
|
40
|
-
* @private
|
|
41
37
|
*/
|
|
42
38
|
VEC3: "VEC3",
|
|
43
39
|
/**
|
|
@@ -45,7 +41,6 @@ const MetadataType = {
|
|
|
45
41
|
*
|
|
46
42
|
* @type {String}
|
|
47
43
|
* @constant
|
|
48
|
-
* @private
|
|
49
44
|
*/
|
|
50
45
|
VEC4: "VEC4",
|
|
51
46
|
/**
|
|
@@ -53,23 +48,20 @@ const MetadataType = {
|
|
|
53
48
|
*
|
|
54
49
|
* @type {String}
|
|
55
50
|
* @constant
|
|
56
|
-
* @private
|
|
57
51
|
*/
|
|
58
52
|
MAT2: "MAT2",
|
|
59
53
|
/**
|
|
60
|
-
* A
|
|
54
|
+
* A 3x3 matrix, stored in column-major format.
|
|
61
55
|
*
|
|
62
56
|
* @type {String}
|
|
63
57
|
* @constant
|
|
64
|
-
* @private
|
|
65
58
|
*/
|
|
66
59
|
MAT3: "MAT3",
|
|
67
60
|
/**
|
|
68
|
-
* A
|
|
61
|
+
* A 4x4 matrix, stored in column-major format.
|
|
69
62
|
*
|
|
70
63
|
* @type {String}
|
|
71
64
|
* @constant
|
|
72
|
-
* @private
|
|
73
65
|
*/
|
|
74
66
|
MAT4: "MAT4",
|
|
75
67
|
/**
|
|
@@ -77,7 +69,6 @@ const MetadataType = {
|
|
|
77
69
|
*
|
|
78
70
|
* @type {String}
|
|
79
71
|
* @constant
|
|
80
|
-
* @private
|
|
81
72
|
*/
|
|
82
73
|
BOOLEAN: "BOOLEAN",
|
|
83
74
|
/**
|
|
@@ -85,7 +76,6 @@ const MetadataType = {
|
|
|
85
76
|
*
|
|
86
77
|
* @type {String}
|
|
87
78
|
* @constant
|
|
88
|
-
* @private
|
|
89
79
|
*/
|
|
90
80
|
STRING: "STRING",
|
|
91
81
|
/**
|
|
@@ -95,7 +85,6 @@ const MetadataType = {
|
|
|
95
85
|
*
|
|
96
86
|
* @type {String}
|
|
97
87
|
* @constant
|
|
98
|
-
* @private
|
|
99
88
|
*/
|
|
100
89
|
ENUM: "ENUM",
|
|
101
90
|
};
|
|
@@ -105,6 +94,7 @@ const MetadataType = {
|
|
|
105
94
|
*
|
|
106
95
|
* @param {MetadataType} type The type
|
|
107
96
|
* @return {Boolean} <code>true</code> if the type is a vector, <code>false</code> otherwise
|
|
97
|
+
* @private
|
|
108
98
|
*/
|
|
109
99
|
MetadataType.isVectorType = function (type) {
|
|
110
100
|
//>>includeStart('debug', pragmas.debug);
|
|
@@ -126,6 +116,7 @@ MetadataType.isVectorType = function (type) {
|
|
|
126
116
|
*
|
|
127
117
|
* @param {MetadataType} type The type
|
|
128
118
|
* @return {Boolean} <code>true</code> if the type is a matrix, <code>false</code> otherwise
|
|
119
|
+
* @private
|
|
129
120
|
*/
|
|
130
121
|
MetadataType.isMatrixType = function (type) {
|
|
131
122
|
//>>includeStart('debug', pragmas.debug);
|
|
@@ -148,6 +139,7 @@ MetadataType.isMatrixType = function (type) {
|
|
|
148
139
|
*
|
|
149
140
|
* @param {MetadataType} type The type to get the component count for
|
|
150
141
|
* @return {Number} The number of components
|
|
142
|
+
* @private
|
|
151
143
|
*/
|
|
152
144
|
MetadataType.getComponentCount = function (type) {
|
|
153
145
|
//>>includeStart('debug', pragmas.debug);
|
|
@@ -113,7 +113,7 @@ import CustomShaderTranslucencyMode from "./CustomShaderTranslucencyMode.js";
|
|
|
113
113
|
* `,
|
|
114
114
|
* fragmentShaderText: `
|
|
115
115
|
* void fragmentMain(FragmentInput fsInput, inout czm_modelMaterial material) {
|
|
116
|
-
* material.normal =
|
|
116
|
+
* material.normal = texture(u_normalMap, fsInput.attributes.texCoord_0);
|
|
117
117
|
* material.diffuse = v_selectedColor;
|
|
118
118
|
* }
|
|
119
119
|
* `
|
|
@@ -295,13 +295,13 @@ function processImplicitRange(
|
|
|
295
295
|
);
|
|
296
296
|
|
|
297
297
|
// Declare the vertex attribute in the shader
|
|
298
|
-
// Example:
|
|
298
|
+
// Example: in float a_implicit_feature_id_n;
|
|
299
299
|
const shaderBuilder = renderResources.shaderBuilder;
|
|
300
300
|
const implicitAttributeName = `a_implicit_${variableName}`;
|
|
301
301
|
shaderBuilder.addAttribute("float", implicitAttributeName);
|
|
302
302
|
|
|
303
303
|
// Also declare the corresponding varyings
|
|
304
|
-
// Example:
|
|
304
|
+
// Example: in float v_implicit_feature_id_n;
|
|
305
305
|
const implicitVaryingName = `v_implicit_${variableName}`;
|
|
306
306
|
shaderBuilder.addVarying("float", implicitVaryingName);
|
|
307
307
|
|
|
@@ -388,9 +388,9 @@ function processTexture(
|
|
|
388
388
|
);
|
|
389
389
|
|
|
390
390
|
// Read one or more channels from the texture
|
|
391
|
-
// example:
|
|
391
|
+
// example: texture(u_featureIdTexture_0, v_texCoord_1).rg
|
|
392
392
|
const texCoord = `v_texCoord_${textureReader.texCoord}`;
|
|
393
|
-
const textureRead = `
|
|
393
|
+
const textureRead = `texture(${uniformName}, ${texCoord}).${channels}`;
|
|
394
394
|
|
|
395
395
|
// Finally, assign to the struct field. Example:
|
|
396
396
|
// featureIds.featureId_0 = unpacked;
|
|
@@ -606,7 +606,7 @@ function parse(geoJson, frameState) {
|
|
|
606
606
|
});
|
|
607
607
|
const propertyTables = [propertyTable];
|
|
608
608
|
|
|
609
|
-
const schema =
|
|
609
|
+
const schema = MetadataSchema.fromJson({});
|
|
610
610
|
|
|
611
611
|
const structuralMetadata = new StructuralMetadata({
|
|
612
612
|
schema: schema,
|
|
@@ -9,7 +9,7 @@ const LightingModel = {
|
|
|
9
9
|
/**
|
|
10
10
|
* Use unlit shading, i.e. skip lighting calculations. The model's
|
|
11
11
|
* diffuse color (assumed to be linear RGB, not sRGB) is used directly
|
|
12
|
-
* when computing <code>
|
|
12
|
+
* when computing <code>out_FragColor</code>. The alpha mode is still
|
|
13
13
|
* applied.
|
|
14
14
|
*
|
|
15
15
|
* @type {Number}
|
|
@@ -452,7 +452,7 @@ function addPropertyTexturePropertyMetadata(renderResources, propertyInfo) {
|
|
|
452
452
|
|
|
453
453
|
// Get a GLSL expression for the value of the property
|
|
454
454
|
const texCoordVariable = `attributes.texCoord_${texCoord}`;
|
|
455
|
-
const valueExpression = `
|
|
455
|
+
const valueExpression = `texture(${textureUniformName}, ${texCoordVariable}).${channels}`;
|
|
456
456
|
|
|
457
457
|
// Some types need an unpacking step or two. For example, since texture reads
|
|
458
458
|
// are always normalized, UINT8 (not normalized) properties need to be
|
|
@@ -2099,9 +2099,8 @@ function updateComputedScale(model, modelMatrix, frameState) {
|
|
|
2099
2099
|
context.drawingBufferWidth,
|
|
2100
2100
|
context.drawingBufferHeight
|
|
2101
2101
|
);
|
|
2102
|
-
|
|
2103
|
-
|
|
2104
|
-
scratchPosition.z = modelMatrix[14];
|
|
2102
|
+
|
|
2103
|
+
Matrix4.getTranslation(modelMatrix, scratchPosition);
|
|
2105
2104
|
|
|
2106
2105
|
if (model._sceneMode !== SceneMode.SCENE3D) {
|
|
2107
2106
|
SceneTransforms.computeActualWgs84Position(
|
|
@@ -157,7 +157,7 @@ function processPickTexture(renderResources, primitive, instances) {
|
|
|
157
157
|
|
|
158
158
|
// The feature ID is ignored if it is greater than the number of features.
|
|
159
159
|
renderResources.pickId =
|
|
160
|
-
"((selectedFeature.id < int(model_featuresLength)) ?
|
|
160
|
+
"((selectedFeature.id < int(model_featuresLength)) ? texture(model_pickTexture, selectedFeature.st) : vec4(0.0))";
|
|
161
161
|
}
|
|
162
162
|
|
|
163
163
|
function processInstancedPickIds(renderResources, context) {
|
|
@@ -48,21 +48,29 @@ function buildDrawCommand(primitiveRenderResources, frameState) {
|
|
|
48
48
|
const pass = primitiveRenderResources.alphaOptions.pass;
|
|
49
49
|
const sceneGraph = model.sceneGraph;
|
|
50
50
|
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
const is3D = frameState.mode === SceneMode.SCENE3D;
|
|
52
|
+
let modelMatrix, boundingSphere;
|
|
53
|
+
|
|
54
|
+
if (!is3D && !frameState.scene3DOnly && model._projectTo2D) {
|
|
55
|
+
modelMatrix = Matrix4.multiplyTransformation(
|
|
56
|
+
sceneGraph._computedModelMatrix,
|
|
57
|
+
primitiveRenderResources.runtimeNode.computedTransform,
|
|
58
|
+
new Matrix4()
|
|
59
|
+
);
|
|
56
60
|
|
|
57
|
-
let boundingSphere;
|
|
58
|
-
if (
|
|
59
|
-
frameState.mode !== SceneMode.SCENE3D &&
|
|
60
|
-
!frameState.scene3DOnly &&
|
|
61
|
-
model._projectTo2D
|
|
62
|
-
) {
|
|
63
61
|
const runtimePrimitive = primitiveRenderResources.runtimePrimitive;
|
|
64
62
|
boundingSphere = runtimePrimitive.boundingSphere2D;
|
|
65
63
|
} else {
|
|
64
|
+
const computedModelMatrix = is3D
|
|
65
|
+
? sceneGraph._computedModelMatrix
|
|
66
|
+
: sceneGraph._computedModelMatrix2D;
|
|
67
|
+
|
|
68
|
+
modelMatrix = Matrix4.multiplyTransformation(
|
|
69
|
+
computedModelMatrix,
|
|
70
|
+
primitiveRenderResources.runtimeNode.computedTransform,
|
|
71
|
+
new Matrix4()
|
|
72
|
+
);
|
|
73
|
+
|
|
66
74
|
boundingSphere = BoundingSphere.transform(
|
|
67
75
|
primitiveRenderResources.boundingSphere,
|
|
68
76
|
modelMatrix,
|