@cesium/engine 1.1.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/{AxisAlignedBoundingBox-a4321399.js → AxisAlignedBoundingBox-47525601.js} +1 -1
- package/Build/Workers/{BoundingRectangle-80d8801f.js → BoundingRectangle-93b263ac.js} +1 -1
- package/Build/Workers/{BoxGeometry-33c10a4f.js → BoxGeometry-8c4b4125.js} +1 -1
- package/Build/Workers/{Color-1bf9a6e0.js → Color-52c60ed7.js} +1 -1
- package/Build/Workers/{CoplanarPolygonGeometryLibrary-5c5b981b.js → CoplanarPolygonGeometryLibrary-33c4c1f8.js} +1 -1
- package/Build/Workers/{CorridorGeometryLibrary-7cbae7a0.js → CorridorGeometryLibrary-5039cd8e.js} +1 -1
- package/Build/Workers/{CylinderGeometry-42740df0.js → CylinderGeometry-3ac44974.js} +1 -1
- package/Build/Workers/{EllipseGeometry-49a3ac21.js → EllipseGeometry-a9c9b3be.js} +1 -1
- package/Build/Workers/{EllipseGeometryLibrary-b891b2f8.js → EllipseGeometryLibrary-855d4681.js} +1 -1
- package/Build/Workers/{EllipseOutlineGeometry-fbd72e07.js → EllipseOutlineGeometry-017a5929.js} +1 -1
- package/Build/Workers/{EllipsoidGeometry-a351dba8.js → EllipsoidGeometry-826e7bce.js} +1 -1
- package/Build/Workers/{EllipsoidOutlineGeometry-3e8779bf.js → EllipsoidOutlineGeometry-784dcdb5.js} +1 -1
- package/Build/Workers/{EllipsoidTangentPlane-cfb50678.js → EllipsoidTangentPlane-ed9443a1.js} +1 -1
- package/Build/Workers/{FrustumGeometry-c5754412.js → FrustumGeometry-9f1ee4d8.js} +1 -1
- package/Build/Workers/{GeometryAttribute-0bfd05e8.js → GeometryAttribute-334718f8.js} +1 -1
- package/Build/Workers/{GeometryPipeline-0166905d.js → GeometryPipeline-8fb0db69.js} +1 -1
- package/Build/Workers/{IntersectionTests-a93d3de9.js → IntersectionTests-27d49265.js} +1 -1
- package/Build/Workers/{OrientedBoundingBox-b450cb61.js → OrientedBoundingBox-79ee7cbb.js} +1 -1
- package/Build/Workers/{PolygonGeometryLibrary-f918ac26.js → PolygonGeometryLibrary-6b5a29e9.js} +1 -1
- package/Build/Workers/{PolygonPipeline-f59a8f0a.js → PolygonPipeline-21668b3f.js} +1 -1
- package/Build/Workers/{PolylinePipeline-d8e6bd9b.js → PolylinePipeline-5e2e1b21.js} +1 -1
- package/Build/Workers/{PolylineVolumeGeometryLibrary-125d2edf.js → PolylineVolumeGeometryLibrary-97f0b94e.js} +1 -1
- package/Build/Workers/{PrimitivePipeline-0d7b5ed4.js → PrimitivePipeline-5640850a.js} +1 -1
- package/Build/Workers/{RectangleGeometryLibrary-0768db63.js → RectangleGeometryLibrary-d5457f7b.js} +1 -1
- package/Build/Workers/{TerrainEncoding-06470d7f.js → TerrainEncoding-bfdf2021.js} +1 -1
- package/Build/Workers/{Transforms-26539bce.js → Transforms-a05e5e6e.js} +17 -0
- package/Build/Workers/{WallGeometryLibrary-6167b0fc.js → WallGeometryLibrary-6db0ebb6.js} +1 -1
- package/Build/Workers/cesiumWorkerBootstrapper.js +68 -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/createVectorTileGeometries.js +1 -1
- package/Build/Workers/createVectorTilePolygons.js +1 -1
- package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
- package/Build/Workers/createVerticesFromHeightmap.js +1 -1
- 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/package.js +1 -1
- package/Build/Workers/transcodeKTX2.js +22 -2
- package/Build/Workers/transferTypedArrayTest.js +1 -1
- package/Build/Workers/upsampleQuantizedTerrainMesh.js +1 -1
- package/README.md +14 -16
- package/Source/Core/FeatureDetection.js +18 -0
- package/Source/Core/Ion.js +1 -2
- package/Source/Core/PixelFormat.js +22 -2
- package/Source/Core/sampleTerrain.js +5 -0
- package/Source/Renderer/AutomaticUniforms.js +3 -3
- package/Source/Renderer/Context.js +4 -14
- 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/Cesium3DTilesVoxelProvider.js +12 -0
- package/Source/Scene/Cesium3DTileset.js +6 -1
- package/Source/Scene/ClassificationPrimitive.js +3 -8
- 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 +8 -22
- package/Source/Scene/EllipsoidPrimitive.js +0 -7
- package/Source/Scene/GlobeTranslucencyState.js +6 -6
- package/Source/Scene/GroundPolylinePrimitive.js +2 -4
- package/Source/Scene/InvertClassification.js +9 -10
- package/Source/Scene/Material.js +6 -6
- package/Source/Scene/Megatexture.js +2 -2
- package/Source/Scene/MetadataSemantic.js +8 -0
- package/Source/Scene/Model/CustomShader.js +1 -1
- package/Source/Scene/Model/FeatureIdPipelineStage.js +4 -4
- package/Source/Scene/Model/LightingModel.js +1 -1
- package/Source/Scene/Model/MetadataPipelineStage.js +1 -1
- package/Source/Scene/Model/PickingPipelineStage.js +1 -1
- package/Source/Scene/OIT.js +211 -119
- package/Source/Scene/PickDepth.js +2 -2
- package/Source/Scene/PointCloud.js +11 -11
- 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/ShadowMap.js +7 -7
- package/Source/Scene/ShadowMapShader.js +9 -9
- package/Source/Scene/ShadowVolumeAppearance.js +1 -1
- package/Source/Scene/TextureAtlas.js +5 -3
- package/Source/Scene/Vector3DTilePolylines.js +1 -1
- package/Source/Scene/Vector3DTilePrimitive.js +2 -2
- package/Source/Scene/VoxelEllipsoidShape.js +15 -7
- package/Source/Scene/VoxelPrimitive.js +4 -4
- 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/processVoxelProperties.js +1 -1
- 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 +23 -23
- package/Source/Shaders/BillboardCollectionVS.js +23 -23
- package/Source/Shaders/BrdfLutGeneratorFS.glsl +2 -2
- package/Source/Shaders/BrdfLutGeneratorFS.js +2 -2
- package/Source/Shaders/Builtin/CzmBuiltins.js +2 -0
- 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/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 +15 -15
- package/Source/Shaders/GlobeFS.js +15 -15
- 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 +12 -12
- package/Source/Shaders/PointPrimitiveCollectionVS.js +12 -12
- 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/IntersectDepth.glsl +1 -1
- package/Source/Shaders/Voxels/IntersectDepth.js +1 -1
- package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +12 -2
- package/Source/Shaders/Voxels/IntersectEllipsoid.js +12 -2
- package/Source/Shaders/Voxels/Megatexture.glsl +1 -1
- package/Source/Shaders/Voxels/Megatexture.js +1 -1
- package/Source/Shaders/Voxels/Octree.glsl +4 -4
- package/Source/Shaders/Voxels/Octree.js +4 -4
- package/Source/Shaders/Voxels/VoxelFS.glsl +2 -2
- package/Source/Shaders/Voxels/VoxelFS.js +2 -2
- package/Source/Shaders/Voxels/VoxelVS.glsl +1 -1
- package/Source/Shaders/Voxels/VoxelVS.js +1 -1
- package/Source/Shaders/Voxels/convertUvToCylinder.glsl +5 -9
- package/Source/Shaders/Voxels/convertUvToCylinder.js +5 -9
- package/Source/Shaders/Voxels/convertUvToEllipsoid.glsl +3 -6
- package/Source/Shaders/Voxels/convertUvToEllipsoid.js +3 -6
- package/Source/WorkersES6/decodeDraco.js +9 -1
- package/index.d.ts +26 -12
- package/index.js +53 -52
- package/package.json +1 -1
- package/Source/Renderer/modernizeShader.js +0 -242
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A wrapper around the texture (WebGL2) / textureCube (WebGL1)
|
|
3
|
+
* function to allow for WebGL 1 support.
|
|
4
|
+
*
|
|
5
|
+
* @name czm_textureCube
|
|
6
|
+
* @glslFunction
|
|
7
|
+
*
|
|
8
|
+
* @param {samplerCube} sampler The sampler.
|
|
9
|
+
* @param {vec3} p The coordinates to sample the texture at.
|
|
10
|
+
*/
|
|
11
|
+
vec4 czm_textureCube(samplerCube sampler, vec3 p) {
|
|
12
|
+
#if __VERSION__ == 300
|
|
13
|
+
return texture(sampler, p);
|
|
14
|
+
#else
|
|
15
|
+
return textureCube(sampler, p);
|
|
16
|
+
#endif
|
|
17
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
//This file is automatically rebuilt by the Cesium build process.
|
|
2
|
+
export default "/**\n\
|
|
3
|
+
* A wrapper around the texture (WebGL2) / textureCube (WebGL1)\n\
|
|
4
|
+
* function to allow for WebGL 1 support.\n\
|
|
5
|
+
* \n\
|
|
6
|
+
* @name czm_textureCube\n\
|
|
7
|
+
* @glslFunction\n\
|
|
8
|
+
*\n\
|
|
9
|
+
* @param {samplerCube} sampler The sampler.\n\
|
|
10
|
+
* @param {vec3} p The coordinates to sample the texture at.\n\
|
|
11
|
+
*/\n\
|
|
12
|
+
vec4 czm_textureCube(samplerCube sampler, vec3 p) {\n\
|
|
13
|
+
#if __VERSION__ == 300\n\
|
|
14
|
+
return texture(sampler, p);\n\
|
|
15
|
+
#else \n\
|
|
16
|
+
return textureCube(sampler, p);\n\
|
|
17
|
+
#endif\n\
|
|
18
|
+
}";
|
|
@@ -18,8 +18,8 @@ export default "/**\n\
|
|
|
18
18
|
* @returns {vec3} The position translated to be relative to the camera's position.\n\
|
|
19
19
|
*\n\
|
|
20
20
|
* @example\n\
|
|
21
|
-
*
|
|
22
|
-
*
|
|
21
|
+
* in vec3 positionHigh;\n\
|
|
22
|
+
* in vec3 positionLow;\n\
|
|
23
23
|
*\n\
|
|
24
24
|
* void main()\n\
|
|
25
25
|
* {\n\
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "#ifdef LOG_DEPTH\n\
|
|
3
3
|
// 1.0 at the near plane, increasing linearly from there.\n\
|
|
4
|
-
|
|
4
|
+
out float v_depthFromNearPlusOne;\n\
|
|
5
5
|
#ifdef SHADOW_MAP\n\
|
|
6
|
-
|
|
6
|
+
out vec3 v_logPositionEC;\n\
|
|
7
7
|
#endif\n\
|
|
8
8
|
#endif\n\
|
|
9
9
|
\n\
|
|
@@ -1,27 +1,24 @@
|
|
|
1
1
|
// emulated noperspective
|
|
2
|
-
#if
|
|
3
|
-
|
|
2
|
+
#if !defined(LOG_DEPTH)
|
|
3
|
+
in float v_WindowZ;
|
|
4
4
|
#endif
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Emulates GL_DEPTH_CLAMP. Clamps a fragment to the near and far plane
|
|
8
8
|
* by writing the fragment's depth. See czm_depthClamp for more details.
|
|
9
|
-
* <p>
|
|
10
|
-
* The shader must enable the GL_EXT_frag_depth extension.
|
|
11
|
-
* </p>
|
|
12
9
|
*
|
|
13
10
|
* @name czm_writeDepthClamp
|
|
14
11
|
* @glslFunction
|
|
15
12
|
*
|
|
16
13
|
* @example
|
|
17
|
-
*
|
|
14
|
+
* out_FragColor = color;
|
|
18
15
|
* czm_writeDepthClamp();
|
|
19
16
|
*
|
|
20
17
|
* @see czm_depthClamp
|
|
21
18
|
*/
|
|
22
19
|
void czm_writeDepthClamp()
|
|
23
20
|
{
|
|
24
|
-
#if defined(
|
|
25
|
-
|
|
21
|
+
#if (!defined(LOG_DEPTH) && (__VERSION__ == 300 || defined(GL_EXT_frag_depth)))
|
|
22
|
+
gl_FragDepth = clamp(v_WindowZ * gl_FragCoord.w, 0.0, 1.0);
|
|
26
23
|
#endif
|
|
27
24
|
}
|
|
@@ -1,29 +1,26 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "// emulated noperspective\n\
|
|
3
|
-
#if
|
|
4
|
-
|
|
3
|
+
#if !defined(LOG_DEPTH)\n\
|
|
4
|
+
in float v_WindowZ;\n\
|
|
5
5
|
#endif\n\
|
|
6
6
|
\n\
|
|
7
7
|
/**\n\
|
|
8
8
|
* Emulates GL_DEPTH_CLAMP. Clamps a fragment to the near and far plane\n\
|
|
9
9
|
* by writing the fragment's depth. See czm_depthClamp for more details.\n\
|
|
10
|
-
* <p>\n\
|
|
11
|
-
* The shader must enable the GL_EXT_frag_depth extension.\n\
|
|
12
|
-
* </p>\n\
|
|
13
10
|
*\n\
|
|
14
11
|
* @name czm_writeDepthClamp\n\
|
|
15
12
|
* @glslFunction\n\
|
|
16
13
|
*\n\
|
|
17
14
|
* @example\n\
|
|
18
|
-
*
|
|
15
|
+
* out_FragColor = color;\n\
|
|
19
16
|
* czm_writeDepthClamp();\n\
|
|
20
17
|
*\n\
|
|
21
18
|
* @see czm_depthClamp\n\
|
|
22
19
|
*/\n\
|
|
23
20
|
void czm_writeDepthClamp()\n\
|
|
24
21
|
{\n\
|
|
25
|
-
#if defined(
|
|
26
|
-
|
|
22
|
+
#if (!defined(LOG_DEPTH) && (__VERSION__ == 300 || defined(GL_EXT_frag_depth)))\n\
|
|
23
|
+
gl_FragDepth = clamp(v_WindowZ * gl_FragCoord.w, 0.0, 1.0);\n\
|
|
27
24
|
#endif\n\
|
|
28
25
|
}\n\
|
|
29
26
|
";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#ifdef LOG_DEPTH
|
|
2
|
-
|
|
2
|
+
in float v_depthFromNearPlusOne;
|
|
3
3
|
|
|
4
4
|
#ifdef POLYGON_OFFSET
|
|
5
5
|
uniform vec2 u_polygonOffset;
|
|
@@ -27,7 +27,7 @@ uniform vec2 u_polygonOffset;
|
|
|
27
27
|
*/
|
|
28
28
|
void czm_writeLogDepth(float depth)
|
|
29
29
|
{
|
|
30
|
-
#if defined(
|
|
30
|
+
#if (defined(LOG_DEPTH) && (__VERSION__ == 300 || defined(GL_EXT_frag_depth)))
|
|
31
31
|
// Discard the vertex if it's not between the near and far planes.
|
|
32
32
|
// We allow a bit of epsilon on the near plane comparison because a 1.0
|
|
33
33
|
// from the vertex shader (indicating the vertex should be _on_ the near
|
|
@@ -41,8 +41,8 @@ void czm_writeLogDepth(float depth)
|
|
|
41
41
|
float factor = u_polygonOffset[0];
|
|
42
42
|
float units = u_polygonOffset[1];
|
|
43
43
|
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
#if (__VERSION__ == 300 || defined(GL_OES_standard_derivatives))
|
|
45
|
+
// This factor doesn't work in IE 10
|
|
46
46
|
if (factor != 0.0) {
|
|
47
47
|
// m = sqrt(dZdX^2 + dZdY^2);
|
|
48
48
|
float x = dFdx(depth);
|
|
@@ -56,11 +56,11 @@ void czm_writeLogDepth(float depth)
|
|
|
56
56
|
|
|
57
57
|
#endif
|
|
58
58
|
|
|
59
|
-
|
|
59
|
+
gl_FragDepth = log2(depth) * czm_oneOverLog2FarDepthFromNearPlusOne;
|
|
60
60
|
|
|
61
61
|
#ifdef POLYGON_OFFSET
|
|
62
62
|
// Apply the units after the log depth.
|
|
63
|
-
|
|
63
|
+
gl_FragDepth += czm_epsilon7 * units;
|
|
64
64
|
#endif
|
|
65
65
|
|
|
66
66
|
#endif
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "#ifdef LOG_DEPTH\n\
|
|
3
|
-
|
|
3
|
+
in float v_depthFromNearPlusOne;\n\
|
|
4
4
|
\n\
|
|
5
5
|
#ifdef POLYGON_OFFSET\n\
|
|
6
6
|
uniform vec2 u_polygonOffset;\n\
|
|
@@ -28,7 +28,7 @@ uniform vec2 u_polygonOffset;\n\
|
|
|
28
28
|
*/\n\
|
|
29
29
|
void czm_writeLogDepth(float depth)\n\
|
|
30
30
|
{\n\
|
|
31
|
-
#if defined(
|
|
31
|
+
#if (defined(LOG_DEPTH) && (__VERSION__ == 300 || defined(GL_EXT_frag_depth)))\n\
|
|
32
32
|
// Discard the vertex if it's not between the near and far planes.\n\
|
|
33
33
|
// We allow a bit of epsilon on the near plane comparison because a 1.0\n\
|
|
34
34
|
// from the vertex shader (indicating the vertex should be _on_ the near\n\
|
|
@@ -42,8 +42,8 @@ void czm_writeLogDepth(float depth)\n\
|
|
|
42
42
|
float factor = u_polygonOffset[0];\n\
|
|
43
43
|
float units = u_polygonOffset[1];\n\
|
|
44
44
|
\n\
|
|
45
|
-
|
|
46
|
-
|
|
45
|
+
#if (__VERSION__ == 300 || defined(GL_OES_standard_derivatives))\n\
|
|
46
|
+
// This factor doesn't work in IE 10\n\
|
|
47
47
|
if (factor != 0.0) {\n\
|
|
48
48
|
// m = sqrt(dZdX^2 + dZdY^2);\n\
|
|
49
49
|
float x = dFdx(depth);\n\
|
|
@@ -57,11 +57,11 @@ void czm_writeLogDepth(float depth)\n\
|
|
|
57
57
|
\n\
|
|
58
58
|
#endif\n\
|
|
59
59
|
\n\
|
|
60
|
-
|
|
60
|
+
gl_FragDepth = log2(depth) * czm_oneOverLog2FarDepthFromNearPlusOne;\n\
|
|
61
61
|
\n\
|
|
62
62
|
#ifdef POLYGON_OFFSET\n\
|
|
63
63
|
// Apply the units after the log depth.\n\
|
|
64
|
-
|
|
64
|
+
gl_FragDepth += czm_epsilon7 * units;\n\
|
|
65
65
|
#endif\n\
|
|
66
66
|
\n\
|
|
67
67
|
#endif\n\
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
uniform sampler2D u_noiseTexture;
|
|
2
2
|
uniform vec3 u_noiseTextureDimensions;
|
|
3
3
|
uniform float u_noiseDetail;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
in vec2 v_offset;
|
|
5
|
+
in vec3 v_maximumSize;
|
|
6
|
+
in vec4 v_color;
|
|
7
|
+
in float v_slice;
|
|
8
|
+
in float v_brightness;
|
|
9
9
|
|
|
10
10
|
float wrap(float value, float rangeLength) {
|
|
11
11
|
if(value < 0.0) {
|
|
@@ -22,15 +22,14 @@ vec3 wrapVec(vec3 value, float rangeLength) {
|
|
|
22
22
|
wrap(value.z, rangeLength));
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
float textureSliceWidth = u_noiseTextureDimensions.x;
|
|
26
|
-
float noiseTextureRows = u_noiseTextureDimensions.y;
|
|
27
|
-
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;
|
|
28
|
-
|
|
29
|
-
float textureSliceWidthSquared = textureSliceWidth * textureSliceWidth;
|
|
30
|
-
vec2 inverseNoiseTextureDimensions = vec2(noiseTextureRows / textureSliceWidthSquared,
|
|
31
|
-
inverseNoiseTextureRows / textureSliceWidth);
|
|
32
|
-
|
|
33
25
|
vec2 voxelToUV(vec3 voxelIndex) {
|
|
26
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;
|
|
27
|
+
float noiseTextureRows = u_noiseTextureDimensions.y;
|
|
28
|
+
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;
|
|
29
|
+
|
|
30
|
+
float textureSliceWidthSquared = textureSliceWidth * textureSliceWidth;
|
|
31
|
+
vec2 inverseNoiseTextureDimensions = vec2(noiseTextureRows / textureSliceWidthSquared,
|
|
32
|
+
inverseNoiseTextureRows / textureSliceWidth);
|
|
34
33
|
vec3 wrappedIndex = wrapVec(voxelIndex, textureSliceWidth);
|
|
35
34
|
float column = mod(wrappedIndex.z, textureSliceWidth * inverseNoiseTextureRows);
|
|
36
35
|
float row = floor(wrappedIndex.z / textureSliceWidth * noiseTextureRows);
|
|
@@ -44,12 +43,13 @@ vec2 voxelToUV(vec3 voxelIndex) {
|
|
|
44
43
|
vec4 lerpSamplesX(vec3 voxelIndex, float x) {
|
|
45
44
|
vec2 uv0 = voxelToUV(voxelIndex);
|
|
46
45
|
vec2 uv1 = voxelToUV(voxelIndex + vec3(1.0, 0.0, 0.0));
|
|
47
|
-
vec4 sample0 =
|
|
48
|
-
vec4 sample1 =
|
|
46
|
+
vec4 sample0 = texture(u_noiseTexture, uv0);
|
|
47
|
+
vec4 sample1 = texture(u_noiseTexture, uv1);
|
|
49
48
|
return mix(sample0, sample1, x);
|
|
50
49
|
}
|
|
51
50
|
|
|
52
51
|
vec4 sampleNoiseTexture(vec3 position) {
|
|
52
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;
|
|
53
53
|
vec3 recenteredPos = position + vec3(textureSliceWidth / 2.0);
|
|
54
54
|
vec3 lerpValue = fract(recenteredPos);
|
|
55
55
|
vec3 voxelIndex = floor(recenteredPos);
|
|
@@ -231,7 +231,7 @@ vec4 drawCloud(vec3 rayOrigin, vec3 rayDir, vec3 cloudCenter, vec3 cloudScale, f
|
|
|
231
231
|
|
|
232
232
|
void main() {
|
|
233
233
|
#ifdef DEBUG_BILLBOARDS
|
|
234
|
-
|
|
234
|
+
out_FragColor = vec4(0.0, 0.5, 0.5, 1.0);
|
|
235
235
|
#endif
|
|
236
236
|
// To avoid calculations with high values,
|
|
237
237
|
// we raycast from an arbitrarily smaller space.
|
|
@@ -248,7 +248,7 @@ void main() {
|
|
|
248
248
|
vec3 point, normal;
|
|
249
249
|
if(intersectEllipsoid(rayOrigin, rayDir, ellipsoidCenter, ellipsoidScale, v_slice,
|
|
250
250
|
point, normal)) {
|
|
251
|
-
|
|
251
|
+
out_FragColor = v_brightness * v_color;
|
|
252
252
|
}
|
|
253
253
|
#else
|
|
254
254
|
#ifndef DEBUG_BILLBOARDS
|
|
@@ -257,7 +257,7 @@ void main() {
|
|
|
257
257
|
if(cloud.w < 0.01) {
|
|
258
258
|
discard;
|
|
259
259
|
}
|
|
260
|
-
|
|
260
|
+
out_FragColor = cloud;
|
|
261
261
|
#endif
|
|
262
262
|
#endif
|
|
263
263
|
}
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
export default "uniform sampler2D u_noiseTexture;\n\
|
|
3
3
|
uniform vec3 u_noiseTextureDimensions;\n\
|
|
4
4
|
uniform float u_noiseDetail;\n\
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
in vec2 v_offset;\n\
|
|
6
|
+
in vec3 v_maximumSize;\n\
|
|
7
|
+
in vec4 v_color;\n\
|
|
8
|
+
in float v_slice;\n\
|
|
9
|
+
in float v_brightness;\n\
|
|
10
10
|
\n\
|
|
11
11
|
float wrap(float value, float rangeLength) {\n\
|
|
12
12
|
if(value < 0.0) {\n\
|
|
@@ -23,15 +23,14 @@ vec3 wrapVec(vec3 value, float rangeLength) {\n\
|
|
|
23
23
|
wrap(value.z, rangeLength));\n\
|
|
24
24
|
}\n\
|
|
25
25
|
\n\
|
|
26
|
-
float textureSliceWidth = u_noiseTextureDimensions.x;\n\
|
|
27
|
-
float noiseTextureRows = u_noiseTextureDimensions.y;\n\
|
|
28
|
-
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;\n\
|
|
29
|
-
\n\
|
|
30
|
-
float textureSliceWidthSquared = textureSliceWidth * textureSliceWidth;\n\
|
|
31
|
-
vec2 inverseNoiseTextureDimensions = vec2(noiseTextureRows / textureSliceWidthSquared,\n\
|
|
32
|
-
inverseNoiseTextureRows / textureSliceWidth);\n\
|
|
33
|
-
\n\
|
|
34
26
|
vec2 voxelToUV(vec3 voxelIndex) {\n\
|
|
27
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;\n\
|
|
28
|
+
float noiseTextureRows = u_noiseTextureDimensions.y;\n\
|
|
29
|
+
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;\n\
|
|
30
|
+
\n\
|
|
31
|
+
float textureSliceWidthSquared = textureSliceWidth * textureSliceWidth;\n\
|
|
32
|
+
vec2 inverseNoiseTextureDimensions = vec2(noiseTextureRows / textureSliceWidthSquared,\n\
|
|
33
|
+
inverseNoiseTextureRows / textureSliceWidth);\n\
|
|
35
34
|
vec3 wrappedIndex = wrapVec(voxelIndex, textureSliceWidth);\n\
|
|
36
35
|
float column = mod(wrappedIndex.z, textureSliceWidth * inverseNoiseTextureRows);\n\
|
|
37
36
|
float row = floor(wrappedIndex.z / textureSliceWidth * noiseTextureRows);\n\
|
|
@@ -45,12 +44,13 @@ vec2 voxelToUV(vec3 voxelIndex) {\n\
|
|
|
45
44
|
vec4 lerpSamplesX(vec3 voxelIndex, float x) {\n\
|
|
46
45
|
vec2 uv0 = voxelToUV(voxelIndex);\n\
|
|
47
46
|
vec2 uv1 = voxelToUV(voxelIndex + vec3(1.0, 0.0, 0.0));\n\
|
|
48
|
-
vec4 sample0 =
|
|
49
|
-
vec4 sample1 =
|
|
47
|
+
vec4 sample0 = texture(u_noiseTexture, uv0);\n\
|
|
48
|
+
vec4 sample1 = texture(u_noiseTexture, uv1);\n\
|
|
50
49
|
return mix(sample0, sample1, x);\n\
|
|
51
50
|
}\n\
|
|
52
51
|
\n\
|
|
53
52
|
vec4 sampleNoiseTexture(vec3 position) {\n\
|
|
53
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;\n\
|
|
54
54
|
vec3 recenteredPos = position + vec3(textureSliceWidth / 2.0);\n\
|
|
55
55
|
vec3 lerpValue = fract(recenteredPos);\n\
|
|
56
56
|
vec3 voxelIndex = floor(recenteredPos);\n\
|
|
@@ -232,7 +232,7 @@ vec4 drawCloud(vec3 rayOrigin, vec3 rayDir, vec3 cloudCenter, vec3 cloudScale, f
|
|
|
232
232
|
\n\
|
|
233
233
|
void main() {\n\
|
|
234
234
|
#ifdef DEBUG_BILLBOARDS\n\
|
|
235
|
-
|
|
235
|
+
out_FragColor = vec4(0.0, 0.5, 0.5, 1.0);\n\
|
|
236
236
|
#endif\n\
|
|
237
237
|
// To avoid calculations with high values,\n\
|
|
238
238
|
// we raycast from an arbitrarily smaller space.\n\
|
|
@@ -249,7 +249,7 @@ void main() {\n\
|
|
|
249
249
|
vec3 point, normal;\n\
|
|
250
250
|
if(intersectEllipsoid(rayOrigin, rayDir, ellipsoidCenter, ellipsoidScale, v_slice,\n\
|
|
251
251
|
point, normal)) {\n\
|
|
252
|
-
|
|
252
|
+
out_FragColor = v_brightness * v_color;\n\
|
|
253
253
|
}\n\
|
|
254
254
|
#else\n\
|
|
255
255
|
#ifndef DEBUG_BILLBOARDS\n\
|
|
@@ -258,7 +258,7 @@ void main() {\n\
|
|
|
258
258
|
if(cloud.w < 0.01) {\n\
|
|
259
259
|
discard;\n\
|
|
260
260
|
}\n\
|
|
261
|
-
|
|
261
|
+
out_FragColor = cloud;\n\
|
|
262
262
|
#endif\n\
|
|
263
263
|
#endif\n\
|
|
264
264
|
}\n\
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
#ifdef INSTANCED
|
|
2
|
-
|
|
2
|
+
in vec2 direction;
|
|
3
3
|
#endif
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
in vec4 positionHighAndScaleX;
|
|
5
|
+
in vec4 positionLowAndScaleY;
|
|
6
|
+
in vec4 packedAttribute0;
|
|
7
|
+
in vec4 packedAttribute1;
|
|
8
|
+
in vec4 color;
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
10
|
+
out vec2 v_offset;
|
|
11
|
+
out vec3 v_maximumSize;
|
|
12
|
+
out vec4 v_color;
|
|
13
|
+
out float v_slice;
|
|
14
|
+
out float v_brightness;
|
|
15
15
|
|
|
16
16
|
void main() {
|
|
17
17
|
// Unpack attributes.
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "#ifdef INSTANCED\n\
|
|
3
|
-
|
|
3
|
+
in vec2 direction;\n\
|
|
4
4
|
#endif\n\
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
in vec4 positionHighAndScaleX;\n\
|
|
6
|
+
in vec4 positionLowAndScaleY;\n\
|
|
7
|
+
in vec4 packedAttribute0;\n\
|
|
8
|
+
in vec4 packedAttribute1;\n\
|
|
9
|
+
in vec4 color;\n\
|
|
10
10
|
\n\
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
out vec2 v_offset;\n\
|
|
12
|
+
out vec3 v_maximumSize;\n\
|
|
13
|
+
out vec4 v_color;\n\
|
|
14
|
+
out float v_slice;\n\
|
|
15
|
+
out float v_brightness;\n\
|
|
16
16
|
\n\
|
|
17
17
|
void main() {\n\
|
|
18
18
|
// Unpack attributes.\n\
|
|
@@ -1,10 +1,7 @@
|
|
|
1
1
|
uniform vec3 u_noiseTextureDimensions;
|
|
2
2
|
uniform float u_noiseDetail;
|
|
3
3
|
uniform vec3 u_noiseOffset;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
float textureSliceWidth = u_noiseTextureDimensions.x;
|
|
7
|
-
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;
|
|
4
|
+
in vec2 v_position;
|
|
8
5
|
|
|
9
6
|
float wrap(float value, float rangeLength) {
|
|
10
7
|
if(value < 0.0) {
|
|
@@ -30,6 +27,7 @@ vec3 random3(vec3 p) {
|
|
|
30
27
|
// Frequency corresponds to cell size.
|
|
31
28
|
// The higher the frequency, the smaller the cell size.
|
|
32
29
|
vec3 getWorleyCellPoint(vec3 centerCell, vec3 offset, float freq) {
|
|
30
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;
|
|
33
31
|
vec3 cell = centerCell + offset;
|
|
34
32
|
cell = wrapVec(cell, textureSliceWidth / u_noiseDetail);
|
|
35
33
|
cell += floor(u_noiseOffset / u_noiseDetail);
|
|
@@ -78,6 +76,8 @@ float worleyFBMNoise(vec3 p, float octaves, float scale) {
|
|
|
78
76
|
}
|
|
79
77
|
|
|
80
78
|
void main() {
|
|
79
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;
|
|
80
|
+
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;
|
|
81
81
|
float x = mod(v_position.x, textureSliceWidth);
|
|
82
82
|
float y = mod(v_position.y, textureSliceWidth);
|
|
83
83
|
float sliceRow = floor(v_position.y / textureSliceWidth);
|
|
@@ -88,5 +88,5 @@ void main() {
|
|
|
88
88
|
float worley0 = clamp(worleyFBMNoise(position, 3.0, 1.0), 0.0, 1.0);
|
|
89
89
|
float worley1 = clamp(worleyFBMNoise(position, 3.0, 2.0), 0.0, 1.0);
|
|
90
90
|
float worley2 = clamp(worleyFBMNoise(position, 3.0, 3.0), 0.0, 1.0);
|
|
91
|
-
|
|
91
|
+
out_FragColor = vec4(worley0, worley1, worley2, 1.0);
|
|
92
92
|
}
|
|
@@ -2,10 +2,7 @@
|
|
|
2
2
|
export default "uniform vec3 u_noiseTextureDimensions;\n\
|
|
3
3
|
uniform float u_noiseDetail;\n\
|
|
4
4
|
uniform vec3 u_noiseOffset;\n\
|
|
5
|
-
|
|
6
|
-
\n\
|
|
7
|
-
float textureSliceWidth = u_noiseTextureDimensions.x;\n\
|
|
8
|
-
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;\n\
|
|
5
|
+
in vec2 v_position;\n\
|
|
9
6
|
\n\
|
|
10
7
|
float wrap(float value, float rangeLength) {\n\
|
|
11
8
|
if(value < 0.0) {\n\
|
|
@@ -31,6 +28,7 @@ vec3 random3(vec3 p) {\n\
|
|
|
31
28
|
// Frequency corresponds to cell size.\n\
|
|
32
29
|
// The higher the frequency, the smaller the cell size.\n\
|
|
33
30
|
vec3 getWorleyCellPoint(vec3 centerCell, vec3 offset, float freq) {\n\
|
|
31
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;\n\
|
|
34
32
|
vec3 cell = centerCell + offset;\n\
|
|
35
33
|
cell = wrapVec(cell, textureSliceWidth / u_noiseDetail);\n\
|
|
36
34
|
cell += floor(u_noiseOffset / u_noiseDetail);\n\
|
|
@@ -79,6 +77,8 @@ float worleyFBMNoise(vec3 p, float octaves, float scale) {\n\
|
|
|
79
77
|
}\n\
|
|
80
78
|
\n\
|
|
81
79
|
void main() {\n\
|
|
80
|
+
float textureSliceWidth = u_noiseTextureDimensions.x;\n\
|
|
81
|
+
float inverseNoiseTextureRows = u_noiseTextureDimensions.z;\n\
|
|
82
82
|
float x = mod(v_position.x, textureSliceWidth);\n\
|
|
83
83
|
float y = mod(v_position.y, textureSliceWidth);\n\
|
|
84
84
|
float sliceRow = floor(v_position.y / textureSliceWidth);\n\
|
|
@@ -89,6 +89,6 @@ void main() {\n\
|
|
|
89
89
|
float worley0 = clamp(worleyFBMNoise(position, 3.0, 1.0), 0.0, 1.0);\n\
|
|
90
90
|
float worley1 = clamp(worleyFBMNoise(position, 3.0, 2.0), 0.0, 1.0);\n\
|
|
91
91
|
float worley2 = clamp(worleyFBMNoise(position, 3.0, 3.0), 0.0, 1.0);\n\
|
|
92
|
-
|
|
92
|
+
out_FragColor = vec4(worley0, worley1, worley2, 1.0);\n\
|
|
93
93
|
}\n\
|
|
94
94
|
";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "uniform vec3 u_noiseTextureDimensions;\n\
|
|
3
|
-
|
|
3
|
+
in vec2 position;\n\
|
|
4
4
|
\n\
|
|
5
|
-
|
|
5
|
+
out vec2 v_position;\n\
|
|
6
6
|
\n\
|
|
7
7
|
void main()\n\
|
|
8
8
|
{\n\
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
uniform sampler2D u_opaqueDepthTexture;
|
|
2
2
|
uniform sampler2D u_translucentDepthTexture;
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
in vec2 v_textureCoordinates;
|
|
5
5
|
|
|
6
6
|
void main()
|
|
7
7
|
{
|
|
8
|
-
float opaqueDepth =
|
|
9
|
-
float translucentDepth =
|
|
8
|
+
float opaqueDepth = texture(u_opaqueDepthTexture, v_textureCoordinates).r;
|
|
9
|
+
float translucentDepth = texture(u_translucentDepthTexture, v_textureCoordinates).r;
|
|
10
10
|
translucentDepth = czm_branchFreeTernary(translucentDepth > opaqueDepth, 1.0, translucentDepth);
|
|
11
|
-
|
|
11
|
+
out_FragColor = czm_packDepth(translucentDepth);
|
|
12
12
|
}
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
export default "uniform sampler2D u_opaqueDepthTexture;\n\
|
|
3
3
|
uniform sampler2D u_translucentDepthTexture;\n\
|
|
4
4
|
\n\
|
|
5
|
-
|
|
5
|
+
in vec2 v_textureCoordinates;\n\
|
|
6
6
|
\n\
|
|
7
7
|
void main()\n\
|
|
8
8
|
{\n\
|
|
9
|
-
float opaqueDepth =
|
|
10
|
-
float translucentDepth =
|
|
9
|
+
float opaqueDepth = texture(u_opaqueDepthTexture, v_textureCoordinates).r;\n\
|
|
10
|
+
float translucentDepth = texture(u_translucentDepthTexture, v_textureCoordinates).r;\n\
|
|
11
11
|
translucentDepth = czm_branchFreeTernary(translucentDepth > opaqueDepth, 1.0, translucentDepth);\n\
|
|
12
|
-
|
|
12
|
+
out_FragColor = czm_packDepth(translucentDepth);\n\
|
|
13
13
|
}\n\
|
|
14
14
|
";
|
|
@@ -8,13 +8,13 @@ uniform sampler2D u_opaque;
|
|
|
8
8
|
uniform sampler2D u_accumulation;
|
|
9
9
|
uniform sampler2D u_revealage;
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
in vec2 v_textureCoordinates;
|
|
12
12
|
|
|
13
13
|
void main()
|
|
14
14
|
{
|
|
15
|
-
vec4 opaque =
|
|
16
|
-
vec4 accum =
|
|
17
|
-
float r =
|
|
15
|
+
vec4 opaque = texture(u_opaque, v_textureCoordinates);
|
|
16
|
+
vec4 accum = texture(u_accumulation, v_textureCoordinates);
|
|
17
|
+
float r = texture(u_revealage, v_textureCoordinates).r;
|
|
18
18
|
|
|
19
19
|
#ifdef MRT
|
|
20
20
|
vec4 transparent = vec4(accum.rgb / clamp(r, 1e-4, 5e4), accum.a);
|
|
@@ -22,10 +22,10 @@ void main()
|
|
|
22
22
|
vec4 transparent = vec4(accum.rgb / clamp(accum.a, 1e-4, 5e4), r);
|
|
23
23
|
#endif
|
|
24
24
|
|
|
25
|
-
|
|
25
|
+
out_FragColor = (1.0 - transparent.a) * transparent + transparent.a * opaque;
|
|
26
26
|
|
|
27
27
|
if (opaque != czm_backgroundColor)
|
|
28
28
|
{
|
|
29
|
-
|
|
29
|
+
out_FragColor.a = 1.0;
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -9,13 +9,13 @@ uniform sampler2D u_opaque;\n\
|
|
|
9
9
|
uniform sampler2D u_accumulation;\n\
|
|
10
10
|
uniform sampler2D u_revealage;\n\
|
|
11
11
|
\n\
|
|
12
|
-
|
|
12
|
+
in vec2 v_textureCoordinates;\n\
|
|
13
13
|
\n\
|
|
14
14
|
void main()\n\
|
|
15
15
|
{\n\
|
|
16
|
-
vec4 opaque =
|
|
17
|
-
vec4 accum =
|
|
18
|
-
float r =
|
|
16
|
+
vec4 opaque = texture(u_opaque, v_textureCoordinates);\n\
|
|
17
|
+
vec4 accum = texture(u_accumulation, v_textureCoordinates);\n\
|
|
18
|
+
float r = texture(u_revealage, v_textureCoordinates).r;\n\
|
|
19
19
|
\n\
|
|
20
20
|
#ifdef MRT\n\
|
|
21
21
|
vec4 transparent = vec4(accum.rgb / clamp(r, 1e-4, 5e4), accum.a);\n\
|
|
@@ -23,11 +23,11 @@ void main()\n\
|
|
|
23
23
|
vec4 transparent = vec4(accum.rgb / clamp(accum.a, 1e-4, 5e4), r);\n\
|
|
24
24
|
#endif\n\
|
|
25
25
|
\n\
|
|
26
|
-
|
|
26
|
+
out_FragColor = (1.0 - transparent.a) * transparent + transparent.a * opaque;\n\
|
|
27
27
|
\n\
|
|
28
28
|
if (opaque != czm_backgroundColor)\n\
|
|
29
29
|
{\n\
|
|
30
|
-
|
|
30
|
+
out_FragColor.a = 1.0;\n\
|
|
31
31
|
}\n\
|
|
32
32
|
}\n\
|
|
33
33
|
";
|