@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
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
varying vec4 v_endPlaneEC;
|
|
7
|
-
varying vec4 v_rightPlaneEC;
|
|
8
|
-
varying float v_halfWidth;
|
|
9
|
-
varying vec3 v_volumeUpEC;
|
|
1
|
+
in vec4 v_startPlaneEC;
|
|
2
|
+
in vec4 v_endPlaneEC;
|
|
3
|
+
in vec4 v_rightPlaneEC;
|
|
4
|
+
in float v_halfWidth;
|
|
5
|
+
in vec3 v_volumeUpEC;
|
|
10
6
|
|
|
11
7
|
uniform vec4 u_highlightColor;
|
|
12
8
|
void main()
|
|
13
9
|
{
|
|
14
|
-
float logDepthOrDepth = czm_branchFreeTernary(czm_sceneMode == czm_sceneMode2D, gl_FragCoord.z, czm_unpackDepth(
|
|
10
|
+
float logDepthOrDepth = czm_branchFreeTernary(czm_sceneMode == czm_sceneMode2D, gl_FragCoord.z, czm_unpackDepth(texture(czm_globeDepthTexture, gl_FragCoord.xy / czm_viewport.zw)));
|
|
15
11
|
|
|
16
12
|
// Discard for sky
|
|
17
13
|
if (logDepthOrDepth == 0.0) {
|
|
18
14
|
#ifdef DEBUG_SHOW_VOLUME
|
|
19
|
-
|
|
15
|
+
out_FragColor = vec4(0.0, 0.0, 1.0, 0.5);
|
|
20
16
|
return;
|
|
21
17
|
#else // DEBUG_SHOW_VOLUME
|
|
22
18
|
discard;
|
|
@@ -40,13 +36,13 @@ void main()
|
|
|
40
36
|
|
|
41
37
|
if (abs(widthwiseDistance) > halfMaxWidth || distanceFromStart < 0.0 || distanceFromEnd < 0.0) {
|
|
42
38
|
#ifdef DEBUG_SHOW_VOLUME
|
|
43
|
-
|
|
39
|
+
out_FragColor = vec4(logDepthOrDepth, 0.0, 0.0, 0.5);
|
|
44
40
|
return;
|
|
45
41
|
#else // DEBUG_SHOW_VOLUME
|
|
46
42
|
discard;
|
|
47
43
|
#endif // DEBUG_SHOW_VOLUME
|
|
48
44
|
}
|
|
49
|
-
|
|
45
|
+
out_FragColor = u_highlightColor;
|
|
50
46
|
|
|
51
47
|
czm_writeDepthClamp();
|
|
52
48
|
}
|
|
@@ -1,23 +1,19 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
|
-
export default "
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
varying vec4 v_endPlaneEC;\n\
|
|
8
|
-
varying vec4 v_rightPlaneEC;\n\
|
|
9
|
-
varying float v_halfWidth;\n\
|
|
10
|
-
varying vec3 v_volumeUpEC;\n\
|
|
2
|
+
export default "in vec4 v_startPlaneEC;\n\
|
|
3
|
+
in vec4 v_endPlaneEC;\n\
|
|
4
|
+
in vec4 v_rightPlaneEC;\n\
|
|
5
|
+
in float v_halfWidth;\n\
|
|
6
|
+
in vec3 v_volumeUpEC;\n\
|
|
11
7
|
\n\
|
|
12
8
|
uniform vec4 u_highlightColor;\n\
|
|
13
9
|
void main()\n\
|
|
14
10
|
{\n\
|
|
15
|
-
float logDepthOrDepth = czm_branchFreeTernary(czm_sceneMode == czm_sceneMode2D, gl_FragCoord.z, czm_unpackDepth(
|
|
11
|
+
float logDepthOrDepth = czm_branchFreeTernary(czm_sceneMode == czm_sceneMode2D, gl_FragCoord.z, czm_unpackDepth(texture(czm_globeDepthTexture, gl_FragCoord.xy / czm_viewport.zw)));\n\
|
|
16
12
|
\n\
|
|
17
13
|
// Discard for sky\n\
|
|
18
14
|
if (logDepthOrDepth == 0.0) {\n\
|
|
19
15
|
#ifdef DEBUG_SHOW_VOLUME\n\
|
|
20
|
-
|
|
16
|
+
out_FragColor = vec4(0.0, 0.0, 1.0, 0.5);\n\
|
|
21
17
|
return;\n\
|
|
22
18
|
#else // DEBUG_SHOW_VOLUME\n\
|
|
23
19
|
discard;\n\
|
|
@@ -41,13 +37,13 @@ void main()\n\
|
|
|
41
37
|
\n\
|
|
42
38
|
if (abs(widthwiseDistance) > halfMaxWidth || distanceFromStart < 0.0 || distanceFromEnd < 0.0) {\n\
|
|
43
39
|
#ifdef DEBUG_SHOW_VOLUME\n\
|
|
44
|
-
|
|
40
|
+
out_FragColor = vec4(logDepthOrDepth, 0.0, 0.0, 0.5);\n\
|
|
45
41
|
return;\n\
|
|
46
42
|
#else // DEBUG_SHOW_VOLUME\n\
|
|
47
43
|
discard;\n\
|
|
48
44
|
#endif // DEBUG_SHOW_VOLUME\n\
|
|
49
45
|
}\n\
|
|
50
|
-
|
|
46
|
+
out_FragColor = u_highlightColor;\n\
|
|
51
47
|
\n\
|
|
52
48
|
czm_writeDepthClamp();\n\
|
|
53
49
|
}\n\
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
1
|
+
in vec3 startEllipsoidNormal;
|
|
2
|
+
in vec3 endEllipsoidNormal;
|
|
3
|
+
in vec4 startPositionAndHeight;
|
|
4
|
+
in vec4 endPositionAndHeight;
|
|
5
|
+
in vec4 startFaceNormalAndVertexCorner;
|
|
6
|
+
in vec4 endFaceNormalAndHalfWidth;
|
|
7
|
+
in float a_batchId;
|
|
8
8
|
|
|
9
9
|
uniform mat4 u_modifiedModelView;
|
|
10
10
|
uniform vec2 u_minimumMaximumVectorHeights;
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
12
|
+
out vec4 v_startPlaneEC;
|
|
13
|
+
out vec4 v_endPlaneEC;
|
|
14
|
+
out vec4 v_rightPlaneEC;
|
|
15
|
+
out float v_halfWidth;
|
|
16
|
+
out vec3 v_volumeUpEC;
|
|
17
17
|
|
|
18
18
|
void main()
|
|
19
19
|
{
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
|
-
export default "
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
export default "in vec3 startEllipsoidNormal;\n\
|
|
3
|
+
in vec3 endEllipsoidNormal;\n\
|
|
4
|
+
in vec4 startPositionAndHeight;\n\
|
|
5
|
+
in vec4 endPositionAndHeight;\n\
|
|
6
|
+
in vec4 startFaceNormalAndVertexCorner;\n\
|
|
7
|
+
in vec4 endFaceNormalAndHalfWidth;\n\
|
|
8
|
+
in float a_batchId;\n\
|
|
9
9
|
\n\
|
|
10
10
|
uniform mat4 u_modifiedModelView;\n\
|
|
11
11
|
uniform vec2 u_minimumMaximumVectorHeights;\n\
|
|
12
12
|
\n\
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
out vec4 v_startPlaneEC;\n\
|
|
14
|
+
out vec4 v_endPlaneEC;\n\
|
|
15
|
+
out vec4 v_rightPlaneEC;\n\
|
|
16
|
+
out float v_halfWidth;\n\
|
|
17
|
+
out vec3 v_volumeUpEC;\n\
|
|
18
18
|
\n\
|
|
19
19
|
void main()\n\
|
|
20
20
|
{\n\
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
in vec4 currentPosition;
|
|
2
|
+
in vec4 previousPosition;
|
|
3
|
+
in vec4 nextPosition;
|
|
4
|
+
in vec2 expandAndWidth;
|
|
5
|
+
in float a_batchId;
|
|
6
6
|
|
|
7
7
|
uniform mat4 u_modifiedModelView;
|
|
8
8
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
|
-
export default "
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
export default "in vec4 currentPosition;\n\
|
|
3
|
+
in vec4 previousPosition;\n\
|
|
4
|
+
in vec4 nextPosition;\n\
|
|
5
|
+
in vec2 expandAndWidth;\n\
|
|
6
|
+
in float a_batchId;\n\
|
|
7
7
|
\n\
|
|
8
8
|
uniform mat4 u_modifiedModelView;\n\
|
|
9
9
|
\n\
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
|
-
export default "
|
|
3
|
-
|
|
2
|
+
export default "in vec3 position;\n\
|
|
3
|
+
in float a_batchId;\n\
|
|
4
4
|
\n\
|
|
5
5
|
uniform mat4 u_modifiedModelViewProjection;\n\
|
|
6
6
|
\n\
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
|
|
2
|
+
in vec2 v_textureCoordinates;
|
|
3
3
|
|
|
4
4
|
void main()
|
|
5
5
|
{
|
|
@@ -12,5 +12,5 @@ void main()
|
|
|
12
12
|
|
|
13
13
|
czm_material material = czm_getMaterial(materialInput);
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
out_FragColor = vec4(material.diffuse + material.emission, material.alpha);
|
|
16
16
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "\n\
|
|
3
|
-
|
|
3
|
+
in vec2 v_textureCoordinates;\n\
|
|
4
4
|
\n\
|
|
5
5
|
void main()\n\
|
|
6
6
|
{\n\
|
|
@@ -13,6 +13,6 @@ void main()\n\
|
|
|
13
13
|
\n\
|
|
14
14
|
czm_material material = czm_getMaterial(materialInput);\n\
|
|
15
15
|
\n\
|
|
16
|
-
|
|
16
|
+
out_FragColor = vec4(material.diffuse + material.emission, material.alpha);\n\
|
|
17
17
|
}\n\
|
|
18
18
|
";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
|
-
export default "
|
|
3
|
-
|
|
2
|
+
export default "in vec4 position;\n\
|
|
3
|
+
in vec2 textureCoordinates;\n\
|
|
4
4
|
\n\
|
|
5
|
-
|
|
5
|
+
out vec2 v_textureCoordinates;\n\
|
|
6
6
|
\n\
|
|
7
7
|
void main() \n\
|
|
8
8
|
{\n\
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
uniform mat4 u_transformPositionViewToUv;
|
|
9
9
|
|
|
10
10
|
void intersectDepth(vec2 screenCoord, Ray ray, inout Intersections ix) {
|
|
11
|
-
float logDepthOrDepth = czm_unpackDepth(
|
|
11
|
+
float logDepthOrDepth = czm_unpackDepth(texture(czm_globeDepthTexture, screenCoord));
|
|
12
12
|
if (logDepthOrDepth != 0.0) {
|
|
13
13
|
// Calculate how far the ray must travel before it hits the depth buffer.
|
|
14
14
|
vec4 eyeCoordinateDepth = czm_screenToEyeCoordinates(screenCoord, logDepthOrDepth);
|
|
@@ -9,7 +9,7 @@ export default "// See IntersectionUtils.glsl for the definitions of Ray, Inters
|
|
|
9
9
|
uniform mat4 u_transformPositionViewToUv;\n\
|
|
10
10
|
\n\
|
|
11
11
|
void intersectDepth(vec2 screenCoord, Ray ray, inout Intersections ix) {\n\
|
|
12
|
-
float logDepthOrDepth = czm_unpackDepth(
|
|
12
|
+
float logDepthOrDepth = czm_unpackDepth(texture(czm_globeDepthTexture, screenCoord));\n\
|
|
13
13
|
if (logDepthOrDepth != 0.0) {\n\
|
|
14
14
|
// Calculate how far the ray must travel before it hits the depth buffer.\n\
|
|
15
15
|
vec4 eyeCoordinateDepth = czm_screenToEyeCoordinates(screenCoord, logDepthOrDepth);\n\
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_UNDER_HALF
|
|
15
15
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_EQUAL_HALF
|
|
16
16
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_OVER_HALF
|
|
17
|
+
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MAX
|
|
17
18
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MIN
|
|
18
19
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_FLAT
|
|
19
20
|
#define ELLIPSOID_INTERSECTION_INDEX_LONGITUDE
|
|
@@ -29,6 +30,9 @@
|
|
|
29
30
|
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_UNDER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_OVER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MAX_UNDER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MAX_OVER_HALF)
|
|
30
31
|
uniform vec2 u_ellipsoidRenderLatitudeCosSqrHalfMinMax;
|
|
31
32
|
#endif
|
|
33
|
+
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MAX)
|
|
34
|
+
uniform float u_ellipsoidInverseOuterScaleUv;
|
|
35
|
+
#endif
|
|
32
36
|
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MIN)
|
|
33
37
|
uniform float u_ellipsoidInverseInnerScaleUv;
|
|
34
38
|
#endif
|
|
@@ -230,8 +234,14 @@ void intersectShape(in Ray ray, inout Intersections ix) {
|
|
|
230
234
|
ray.pos = ray.pos * 2.0 - 1.0;
|
|
231
235
|
ray.dir *= 2.0;
|
|
232
236
|
|
|
237
|
+
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MAX)
|
|
238
|
+
Ray outerRay = Ray(ray.pos * u_ellipsoidInverseOuterScaleUv, ray.dir * u_ellipsoidInverseOuterScaleUv);
|
|
239
|
+
#else
|
|
240
|
+
Ray outerRay = ray;
|
|
241
|
+
#endif
|
|
242
|
+
|
|
233
243
|
// Outer ellipsoid
|
|
234
|
-
vec2 outerIntersect = intersectUnitSphereUnnormalizedDirection(
|
|
244
|
+
vec2 outerIntersect = intersectUnitSphereUnnormalizedDirection(outerRay);
|
|
235
245
|
setIntersectionPair(ix, ELLIPSOID_INTERSECTION_INDEX_HEIGHT_MAX, outerIntersect);
|
|
236
246
|
|
|
237
247
|
// Exit early if the outer ellipsoid was missed.
|
|
@@ -287,7 +297,7 @@ void intersectShape(in Ray ray, inout Intersections ix) {
|
|
|
287
297
|
|
|
288
298
|
// Flip the ray because the intersection function expects a cone growing towards +Z.
|
|
289
299
|
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_UNDER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_EQUAL_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MAX_UNDER_HALF)
|
|
290
|
-
Ray flippedRay =
|
|
300
|
+
Ray flippedRay = outerRay;
|
|
291
301
|
flippedRay.dir.z *= -1.0;
|
|
292
302
|
flippedRay.pos.z *= -1.0;
|
|
293
303
|
#endif
|
|
@@ -15,6 +15,7 @@ export default "// See IntersectionUtils.glsl for the definitions of Ray, Inters
|
|
|
15
15
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_UNDER_HALF\n\
|
|
16
16
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_EQUAL_HALF\n\
|
|
17
17
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_OVER_HALF\n\
|
|
18
|
+
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MAX\n\
|
|
18
19
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MIN\n\
|
|
19
20
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_FLAT\n\
|
|
20
21
|
#define ELLIPSOID_INTERSECTION_INDEX_LONGITUDE\n\
|
|
@@ -30,6 +31,9 @@ export default "// See IntersectionUtils.glsl for the definitions of Ray, Inters
|
|
|
30
31
|
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_UNDER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_OVER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MAX_UNDER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MAX_OVER_HALF)\n\
|
|
31
32
|
uniform vec2 u_ellipsoidRenderLatitudeCosSqrHalfMinMax;\n\
|
|
32
33
|
#endif\n\
|
|
34
|
+
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MAX)\n\
|
|
35
|
+
uniform float u_ellipsoidInverseOuterScaleUv;\n\
|
|
36
|
+
#endif\n\
|
|
33
37
|
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MIN)\n\
|
|
34
38
|
uniform float u_ellipsoidInverseInnerScaleUv;\n\
|
|
35
39
|
#endif\n\
|
|
@@ -230,9 +234,15 @@ void intersectShape(in Ray ray, inout Intersections ix) {\n\
|
|
|
230
234
|
// Direction is scaled as well to be in sync with position.\n\
|
|
231
235
|
ray.pos = ray.pos * 2.0 - 1.0;\n\
|
|
232
236
|
ray.dir *= 2.0;\n\
|
|
237
|
+
\n\
|
|
238
|
+
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_MAX)\n\
|
|
239
|
+
Ray outerRay = Ray(ray.pos * u_ellipsoidInverseOuterScaleUv, ray.dir * u_ellipsoidInverseOuterScaleUv);\n\
|
|
240
|
+
#else\n\
|
|
241
|
+
Ray outerRay = ray;\n\
|
|
242
|
+
#endif\n\
|
|
233
243
|
\n\
|
|
234
244
|
// Outer ellipsoid\n\
|
|
235
|
-
vec2 outerIntersect = intersectUnitSphereUnnormalizedDirection(
|
|
245
|
+
vec2 outerIntersect = intersectUnitSphereUnnormalizedDirection(outerRay);\n\
|
|
236
246
|
setIntersectionPair(ix, ELLIPSOID_INTERSECTION_INDEX_HEIGHT_MAX, outerIntersect);\n\
|
|
237
247
|
\n\
|
|
238
248
|
// Exit early if the outer ellipsoid was missed.\n\
|
|
@@ -288,7 +298,7 @@ void intersectShape(in Ray ray, inout Intersections ix) {\n\
|
|
|
288
298
|
\n\
|
|
289
299
|
// Flip the ray because the intersection function expects a cone growing towards +Z.\n\
|
|
290
300
|
#if defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_UNDER_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MIN_EQUAL_HALF) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_MAX_UNDER_HALF)\n\
|
|
291
|
-
Ray flippedRay =
|
|
301
|
+
Ray flippedRay = outerRay;\n\
|
|
292
302
|
flippedRay.dir.z *= -1.0;\n\
|
|
293
303
|
flippedRay.pos.z *= -1.0;\n\
|
|
294
304
|
#endif\n\
|
|
@@ -83,7 +83,7 @@ Properties getPropertiesFromMegatexture(in SampleData sampleData) {
|
|
|
83
83
|
|
|
84
84
|
#if defined(NEAREST_SAMPLING)
|
|
85
85
|
// Round to the center of the nearest voxel
|
|
86
|
-
voxelCoord = floor(voxelCoord + vec3(0.5)
|
|
86
|
+
voxelCoord = floor(voxelCoord) + vec3(0.5);
|
|
87
87
|
#endif
|
|
88
88
|
|
|
89
89
|
// Tile location
|
|
@@ -84,7 +84,7 @@ Properties getPropertiesFromMegatexture(in SampleData sampleData) {\n\
|
|
|
84
84
|
\n\
|
|
85
85
|
#if defined(NEAREST_SAMPLING)\n\
|
|
86
86
|
// Round to the center of the nearest voxel\n\
|
|
87
|
-
voxelCoord = floor(voxelCoord + vec3(0.5)
|
|
87
|
+
voxelCoord = floor(voxelCoord) + vec3(0.5);\n\
|
|
88
88
|
#endif\n\
|
|
89
89
|
\n\
|
|
90
90
|
// Tile location\n\
|
|
@@ -49,7 +49,7 @@ float normU8x2_toFloat(in vec2 value) {
|
|
|
49
49
|
}
|
|
50
50
|
|
|
51
51
|
OctreeNodeData getOctreeNodeData(in vec2 octreeUv) {
|
|
52
|
-
vec4 texData =
|
|
52
|
+
vec4 texData = texture(u_octreeInternalNodeTexture, octreeUv);
|
|
53
53
|
|
|
54
54
|
OctreeNodeData data;
|
|
55
55
|
data.data = normU8x2_toInt(texData.xy);
|
|
@@ -69,7 +69,7 @@ int getOctreeParentIndex(in int octreeIndex) {
|
|
|
69
69
|
int octreeCoordX = intMod(octreeIndex, u_octreeInternalNodeTilesPerRow) * 9;
|
|
70
70
|
int octreeCoordY = octreeIndex / u_octreeInternalNodeTilesPerRow;
|
|
71
71
|
vec2 octreeUv = u_octreeInternalNodeTexelSizeUv * vec2(float(octreeCoordX) + 0.5, float(octreeCoordY) + 0.5);
|
|
72
|
-
vec4 parentData =
|
|
72
|
+
vec4 parentData = texture(u_octreeInternalNodeTexture, octreeUv);
|
|
73
73
|
int parentOctreeIndex = normU8x2_toInt(parentData.xy);
|
|
74
74
|
return parentOctreeIndex;
|
|
75
75
|
}
|
|
@@ -106,8 +106,8 @@ void getOctreeLeafSampleDatas(in OctreeNodeData data, out SampleData sampleData0
|
|
|
106
106
|
|
|
107
107
|
vec2 leafUv0 = u_octreeLeafNodeTexelSizeUv * vec2(leafCoordXStart + 0.0, leafCoordY);
|
|
108
108
|
vec2 leafUv1 = u_octreeLeafNodeTexelSizeUv * vec2(leafCoordXStart + 1.0, leafCoordY);
|
|
109
|
-
vec4 leafData0 =
|
|
110
|
-
vec4 leafData1 =
|
|
109
|
+
vec4 leafData0 = texture(u_octreeLeafNodeTexture, leafUv0);
|
|
110
|
+
vec4 leafData1 = texture(u_octreeLeafNodeTexture, leafUv1);
|
|
111
111
|
|
|
112
112
|
float lerp = normU8x2_toFloat(leafData0.xy);
|
|
113
113
|
|
|
@@ -50,7 +50,7 @@ float normU8x2_toFloat(in vec2 value) {\n\
|
|
|
50
50
|
}\n\
|
|
51
51
|
\n\
|
|
52
52
|
OctreeNodeData getOctreeNodeData(in vec2 octreeUv) {\n\
|
|
53
|
-
vec4 texData =
|
|
53
|
+
vec4 texData = texture(u_octreeInternalNodeTexture, octreeUv);\n\
|
|
54
54
|
\n\
|
|
55
55
|
OctreeNodeData data;\n\
|
|
56
56
|
data.data = normU8x2_toInt(texData.xy);\n\
|
|
@@ -70,7 +70,7 @@ int getOctreeParentIndex(in int octreeIndex) {\n\
|
|
|
70
70
|
int octreeCoordX = intMod(octreeIndex, u_octreeInternalNodeTilesPerRow) * 9;\n\
|
|
71
71
|
int octreeCoordY = octreeIndex / u_octreeInternalNodeTilesPerRow;\n\
|
|
72
72
|
vec2 octreeUv = u_octreeInternalNodeTexelSizeUv * vec2(float(octreeCoordX) + 0.5, float(octreeCoordY) + 0.5);\n\
|
|
73
|
-
vec4 parentData =
|
|
73
|
+
vec4 parentData = texture(u_octreeInternalNodeTexture, octreeUv);\n\
|
|
74
74
|
int parentOctreeIndex = normU8x2_toInt(parentData.xy);\n\
|
|
75
75
|
return parentOctreeIndex;\n\
|
|
76
76
|
}\n\
|
|
@@ -107,8 +107,8 @@ void getOctreeLeafSampleDatas(in OctreeNodeData data, out SampleData sampleData0
|
|
|
107
107
|
\n\
|
|
108
108
|
vec2 leafUv0 = u_octreeLeafNodeTexelSizeUv * vec2(leafCoordXStart + 0.0, leafCoordY);\n\
|
|
109
109
|
vec2 leafUv1 = u_octreeLeafNodeTexelSizeUv * vec2(leafCoordXStart + 1.0, leafCoordY);\n\
|
|
110
|
-
vec4 leafData0 =
|
|
111
|
-
vec4 leafData1 =
|
|
110
|
+
vec4 leafData0 = texture(u_octreeLeafNodeTexture, leafUv0);\n\
|
|
111
|
+
vec4 leafData1 = texture(u_octreeLeafNodeTexture, leafUv1);\n\
|
|
112
112
|
\n\
|
|
113
113
|
float lerp = normU8x2_toFloat(leafData0.xy);\n\
|
|
114
114
|
\n\
|
|
@@ -144,9 +144,9 @@ void main()\n\
|
|
|
144
144
|
if (colorAccum.a == 0.0) {\n\
|
|
145
145
|
discard;\n\
|
|
146
146
|
}\n\
|
|
147
|
-
|
|
147
|
+
out_FragColor = u_pickColor;\n\
|
|
148
148
|
#else\n\
|
|
149
|
-
|
|
149
|
+
out_FragColor = colorAccum;\n\
|
|
150
150
|
#endif\n\
|
|
151
151
|
}\n\
|
|
152
152
|
";
|
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
/* Cylinder defines (set in Scene/VoxelCylinderShape.js)
|
|
2
|
-
#define CYLINDER_HAS_RENDER_BOUNDS_RADIUS_FLAT
|
|
3
|
-
#define CYLINDER_HAS_RENDER_BOUNDS_HEIGHT_FLAT
|
|
4
|
-
#define CYLINDER_HAS_RENDER_BOUNDS_ANGLE_RANGE_EQUAL_ZERO
|
|
5
|
-
|
|
6
2
|
#define CYLINDER_HAS_SHAPE_BOUNDS_RADIUS
|
|
7
3
|
#define CYLINDER_HAS_SHAPE_BOUNDS_RADIUS_FLAT
|
|
8
4
|
#define CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT
|
|
@@ -34,8 +30,8 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {
|
|
|
34
30
|
vec3 positionLocal = positionUv * 2.0 - 1.0; // [-1,+1]
|
|
35
31
|
|
|
36
32
|
// Compute radius
|
|
37
|
-
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_RADIUS_FLAT)
|
|
38
|
-
float radius =
|
|
33
|
+
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_RADIUS_FLAT)
|
|
34
|
+
float radius = 1.0;
|
|
39
35
|
#else
|
|
40
36
|
float radius = length(positionLocal.xy); // [0,1]
|
|
41
37
|
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_RADIUS)
|
|
@@ -44,8 +40,8 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {
|
|
|
44
40
|
#endif
|
|
45
41
|
|
|
46
42
|
// Compute height
|
|
47
|
-
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)
|
|
48
|
-
float height =
|
|
43
|
+
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)
|
|
44
|
+
float height = 1.0;
|
|
49
45
|
#else
|
|
50
46
|
float height = positionUv.z; // [0,1]
|
|
51
47
|
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT)
|
|
@@ -54,7 +50,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {
|
|
|
54
50
|
#endif
|
|
55
51
|
|
|
56
52
|
// Compute angle
|
|
57
|
-
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_ANGLE_RANGE_EQUAL_ZERO)
|
|
53
|
+
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_ANGLE_RANGE_EQUAL_ZERO)
|
|
58
54
|
float angle = 1.0;
|
|
59
55
|
#else
|
|
60
56
|
float angle = (atan(positionLocal.y, positionLocal.x) + czm_pi) / czm_twoPi; // [0,1]
|
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
//This file is automatically rebuilt by the Cesium build process.
|
|
2
2
|
export default "/* Cylinder defines (set in Scene/VoxelCylinderShape.js)\n\
|
|
3
|
-
#define CYLINDER_HAS_RENDER_BOUNDS_RADIUS_FLAT\n\
|
|
4
|
-
#define CYLINDER_HAS_RENDER_BOUNDS_HEIGHT_FLAT\n\
|
|
5
|
-
#define CYLINDER_HAS_RENDER_BOUNDS_ANGLE_RANGE_EQUAL_ZERO\n\
|
|
6
|
-
\n\
|
|
7
3
|
#define CYLINDER_HAS_SHAPE_BOUNDS_RADIUS\n\
|
|
8
4
|
#define CYLINDER_HAS_SHAPE_BOUNDS_RADIUS_FLAT\n\
|
|
9
5
|
#define CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT\n\
|
|
@@ -35,8 +31,8 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {\n\
|
|
|
35
31
|
vec3 positionLocal = positionUv * 2.0 - 1.0; // [-1,+1]\n\
|
|
36
32
|
\n\
|
|
37
33
|
// Compute radius\n\
|
|
38
|
-
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_RADIUS_FLAT)
|
|
39
|
-
float radius =
|
|
34
|
+
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_RADIUS_FLAT)\n\
|
|
35
|
+
float radius = 1.0;\n\
|
|
40
36
|
#else\n\
|
|
41
37
|
float radius = length(positionLocal.xy); // [0,1]\n\
|
|
42
38
|
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_RADIUS)\n\
|
|
@@ -45,8 +41,8 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {\n\
|
|
|
45
41
|
#endif\n\
|
|
46
42
|
\n\
|
|
47
43
|
// Compute height\n\
|
|
48
|
-
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)
|
|
49
|
-
float height =
|
|
44
|
+
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)\n\
|
|
45
|
+
float height = 1.0;\n\
|
|
50
46
|
#else\n\
|
|
51
47
|
float height = positionUv.z; // [0,1]\n\
|
|
52
48
|
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_HEIGHT)\n\
|
|
@@ -55,7 +51,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {\n\
|
|
|
55
51
|
#endif\n\
|
|
56
52
|
\n\
|
|
57
53
|
// Compute angle\n\
|
|
58
|
-
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_ANGLE_RANGE_EQUAL_ZERO)
|
|
54
|
+
#if defined(CYLINDER_HAS_SHAPE_BOUNDS_ANGLE_RANGE_EQUAL_ZERO)\n\
|
|
59
55
|
float angle = 1.0;\n\
|
|
60
56
|
#else\n\
|
|
61
57
|
float angle = (atan(positionLocal.y, positionLocal.x) + czm_pi) / czm_twoPi; // [0,1]\n\
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
/* Ellipsoid defines (set in Scene/VoxelEllipsoidShape.js)
|
|
2
|
-
#define ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO
|
|
3
2
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_MIN_DISCONTINUITY
|
|
4
3
|
#define ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_MAX_DISCONTINUITY
|
|
5
4
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE
|
|
6
5
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO
|
|
7
6
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_MIN_MAX_REVERSED
|
|
8
|
-
#define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO
|
|
9
7
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE
|
|
10
8
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO
|
|
11
|
-
#define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_FLAT
|
|
12
9
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_MIN
|
|
13
10
|
#define ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_FLAT
|
|
14
11
|
#define ELLIPSOID_IS_SPHERE
|
|
@@ -69,7 +66,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {
|
|
|
69
66
|
#endif
|
|
70
67
|
|
|
71
68
|
// Compute longitude
|
|
72
|
-
#if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO)
|
|
69
|
+
#if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO)
|
|
73
70
|
float longitude = 1.0;
|
|
74
71
|
#else
|
|
75
72
|
float longitude = (atan(normal.y, normal.x) + czm_pi) / czm_twoPi;
|
|
@@ -94,7 +91,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {
|
|
|
94
91
|
#endif
|
|
95
92
|
|
|
96
93
|
// Compute latitude
|
|
97
|
-
#if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO)
|
|
94
|
+
#if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO)
|
|
98
95
|
float latitude = 1.0;
|
|
99
96
|
#else
|
|
100
97
|
float latitude = (asin(normal.z) + czm_piOverTwo) / czm_pi;
|
|
@@ -104,7 +101,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {
|
|
|
104
101
|
#endif
|
|
105
102
|
|
|
106
103
|
// Compute height
|
|
107
|
-
#if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)
|
|
104
|
+
#if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)
|
|
108
105
|
// TODO: This breaks down when minBounds == maxBounds. To fix it, this
|
|
109
106
|
// function would have to know if ray is intersecting the front or back of the shape
|
|
110
107
|
// and set the shape space position to 1 (front) or 0 (back) accordingly.
|