@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.
Files changed (380) hide show
  1. package/Build/Workers/{AxisAlignedBoundingBox-a4321399.js → AxisAlignedBoundingBox-47525601.js} +1 -1
  2. package/Build/Workers/{BoundingRectangle-80d8801f.js → BoundingRectangle-93b263ac.js} +1 -1
  3. package/Build/Workers/{BoxGeometry-33c10a4f.js → BoxGeometry-8c4b4125.js} +1 -1
  4. package/Build/Workers/{Color-1bf9a6e0.js → Color-52c60ed7.js} +1 -1
  5. package/Build/Workers/{CoplanarPolygonGeometryLibrary-5c5b981b.js → CoplanarPolygonGeometryLibrary-33c4c1f8.js} +1 -1
  6. package/Build/Workers/{CorridorGeometryLibrary-7cbae7a0.js → CorridorGeometryLibrary-5039cd8e.js} +1 -1
  7. package/Build/Workers/{CylinderGeometry-42740df0.js → CylinderGeometry-3ac44974.js} +1 -1
  8. package/Build/Workers/{EllipseGeometry-49a3ac21.js → EllipseGeometry-a9c9b3be.js} +1 -1
  9. package/Build/Workers/{EllipseGeometryLibrary-b891b2f8.js → EllipseGeometryLibrary-855d4681.js} +1 -1
  10. package/Build/Workers/{EllipseOutlineGeometry-fbd72e07.js → EllipseOutlineGeometry-017a5929.js} +1 -1
  11. package/Build/Workers/{EllipsoidGeometry-a351dba8.js → EllipsoidGeometry-826e7bce.js} +1 -1
  12. package/Build/Workers/{EllipsoidOutlineGeometry-3e8779bf.js → EllipsoidOutlineGeometry-784dcdb5.js} +1 -1
  13. package/Build/Workers/{EllipsoidTangentPlane-cfb50678.js → EllipsoidTangentPlane-ed9443a1.js} +1 -1
  14. package/Build/Workers/{FrustumGeometry-c5754412.js → FrustumGeometry-9f1ee4d8.js} +1 -1
  15. package/Build/Workers/{GeometryAttribute-0bfd05e8.js → GeometryAttribute-334718f8.js} +1 -1
  16. package/Build/Workers/{GeometryPipeline-0166905d.js → GeometryPipeline-8fb0db69.js} +1 -1
  17. package/Build/Workers/{IntersectionTests-a93d3de9.js → IntersectionTests-27d49265.js} +1 -1
  18. package/Build/Workers/{OrientedBoundingBox-b450cb61.js → OrientedBoundingBox-79ee7cbb.js} +1 -1
  19. package/Build/Workers/{PolygonGeometryLibrary-f918ac26.js → PolygonGeometryLibrary-6b5a29e9.js} +1 -1
  20. package/Build/Workers/{PolygonPipeline-f59a8f0a.js → PolygonPipeline-21668b3f.js} +1 -1
  21. package/Build/Workers/{PolylinePipeline-d8e6bd9b.js → PolylinePipeline-5e2e1b21.js} +1 -1
  22. package/Build/Workers/{PolylineVolumeGeometryLibrary-125d2edf.js → PolylineVolumeGeometryLibrary-97f0b94e.js} +1 -1
  23. package/Build/Workers/{PrimitivePipeline-0d7b5ed4.js → PrimitivePipeline-5640850a.js} +1 -1
  24. package/Build/Workers/{RectangleGeometryLibrary-0768db63.js → RectangleGeometryLibrary-d5457f7b.js} +1 -1
  25. package/Build/Workers/{TerrainEncoding-06470d7f.js → TerrainEncoding-bfdf2021.js} +1 -1
  26. package/Build/Workers/{Transforms-26539bce.js → Transforms-a05e5e6e.js} +17 -0
  27. package/Build/Workers/{WallGeometryLibrary-6167b0fc.js → WallGeometryLibrary-6db0ebb6.js} +1 -1
  28. package/Build/Workers/cesiumWorkerBootstrapper.js +68 -2
  29. package/Build/Workers/combineGeometry.js +1 -1
  30. package/Build/Workers/createBoxGeometry.js +1 -1
  31. package/Build/Workers/createBoxOutlineGeometry.js +1 -1
  32. package/Build/Workers/createCircleGeometry.js +1 -1
  33. package/Build/Workers/createCircleOutlineGeometry.js +1 -1
  34. package/Build/Workers/createCoplanarPolygonGeometry.js +1 -1
  35. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +1 -1
  36. package/Build/Workers/createCorridorGeometry.js +1 -1
  37. package/Build/Workers/createCorridorOutlineGeometry.js +1 -1
  38. package/Build/Workers/createCylinderGeometry.js +1 -1
  39. package/Build/Workers/createCylinderOutlineGeometry.js +1 -1
  40. package/Build/Workers/createEllipseGeometry.js +1 -1
  41. package/Build/Workers/createEllipseOutlineGeometry.js +1 -1
  42. package/Build/Workers/createEllipsoidGeometry.js +1 -1
  43. package/Build/Workers/createEllipsoidOutlineGeometry.js +1 -1
  44. package/Build/Workers/createFrustumGeometry.js +1 -1
  45. package/Build/Workers/createFrustumOutlineGeometry.js +1 -1
  46. package/Build/Workers/createGeometry.js +1 -1
  47. package/Build/Workers/createGroundPolylineGeometry.js +1 -1
  48. package/Build/Workers/createPlaneGeometry.js +1 -1
  49. package/Build/Workers/createPlaneOutlineGeometry.js +1 -1
  50. package/Build/Workers/createPolygonGeometry.js +1 -1
  51. package/Build/Workers/createPolygonOutlineGeometry.js +1 -1
  52. package/Build/Workers/createPolylineGeometry.js +1 -1
  53. package/Build/Workers/createPolylineVolumeGeometry.js +1 -1
  54. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +1 -1
  55. package/Build/Workers/createRectangleGeometry.js +1 -1
  56. package/Build/Workers/createRectangleOutlineGeometry.js +1 -1
  57. package/Build/Workers/createSimplePolylineGeometry.js +1 -1
  58. package/Build/Workers/createSphereGeometry.js +1 -1
  59. package/Build/Workers/createSphereOutlineGeometry.js +1 -1
  60. package/Build/Workers/createVectorTileGeometries.js +1 -1
  61. package/Build/Workers/createVectorTilePolygons.js +1 -1
  62. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
  63. package/Build/Workers/createVerticesFromHeightmap.js +1 -1
  64. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +1 -1
  65. package/Build/Workers/createWallGeometry.js +1 -1
  66. package/Build/Workers/createWallOutlineGeometry.js +1 -1
  67. package/Build/Workers/decodeDraco.js +9 -1
  68. package/Build/Workers/package.js +1 -1
  69. package/Build/Workers/transcodeKTX2.js +22 -2
  70. package/Build/Workers/transferTypedArrayTest.js +1 -1
  71. package/Build/Workers/upsampleQuantizedTerrainMesh.js +1 -1
  72. package/README.md +14 -16
  73. package/Source/Core/FeatureDetection.js +18 -0
  74. package/Source/Core/Ion.js +1 -2
  75. package/Source/Core/PixelFormat.js +22 -2
  76. package/Source/Core/sampleTerrain.js +5 -0
  77. package/Source/Renderer/AutomaticUniforms.js +3 -3
  78. package/Source/Renderer/Context.js +4 -14
  79. package/Source/Renderer/ShaderBuilder.js +13 -12
  80. package/Source/Renderer/ShaderSource.js +31 -26
  81. package/Source/Renderer/demodernizeShader.js +76 -0
  82. package/Source/Scene/AutoExposure.js +5 -5
  83. package/Source/Scene/BatchTable.js +5 -5
  84. package/Source/Scene/BillboardCollection.js +2 -2
  85. package/Source/Scene/BingMapsImageryProvider.js +1 -1
  86. package/Source/Scene/Cesium3DTile.js +8 -2
  87. package/Source/Scene/Cesium3DTileBatchTable.js +28 -28
  88. package/Source/Scene/Cesium3DTilesVoxelProvider.js +12 -0
  89. package/Source/Scene/Cesium3DTileset.js +6 -1
  90. package/Source/Scene/ClassificationPrimitive.js +3 -8
  91. package/Source/Scene/DebugAppearance.js +7 -9
  92. package/Source/Scene/DebugInspector.js +5 -5
  93. package/Source/Scene/DepthPlane.js +0 -6
  94. package/Source/Scene/DerivedCommand.js +8 -22
  95. package/Source/Scene/EllipsoidPrimitive.js +0 -7
  96. package/Source/Scene/GlobeTranslucencyState.js +6 -6
  97. package/Source/Scene/GroundPolylinePrimitive.js +2 -4
  98. package/Source/Scene/InvertClassification.js +9 -10
  99. package/Source/Scene/Material.js +6 -6
  100. package/Source/Scene/Megatexture.js +2 -2
  101. package/Source/Scene/MetadataSemantic.js +8 -0
  102. package/Source/Scene/Model/CustomShader.js +1 -1
  103. package/Source/Scene/Model/FeatureIdPipelineStage.js +4 -4
  104. package/Source/Scene/Model/LightingModel.js +1 -1
  105. package/Source/Scene/Model/MetadataPipelineStage.js +1 -1
  106. package/Source/Scene/Model/PickingPipelineStage.js +1 -1
  107. package/Source/Scene/OIT.js +211 -119
  108. package/Source/Scene/PickDepth.js +2 -2
  109. package/Source/Scene/PointCloud.js +11 -11
  110. package/Source/Scene/PointCloudEyeDomeLighting.js +9 -4
  111. package/Source/Scene/PolylineCollection.js +2 -7
  112. package/Source/Scene/PolylineMaterialAppearance.js +2 -3
  113. package/Source/Scene/PostProcessStage.js +13 -13
  114. package/Source/Scene/PostProcessStageLibrary.js +3 -3
  115. package/Source/Scene/Primitive.js +22 -31
  116. package/Source/Scene/ShadowMap.js +7 -7
  117. package/Source/Scene/ShadowMapShader.js +9 -9
  118. package/Source/Scene/ShadowVolumeAppearance.js +1 -1
  119. package/Source/Scene/TextureAtlas.js +5 -3
  120. package/Source/Scene/Vector3DTilePolylines.js +1 -1
  121. package/Source/Scene/Vector3DTilePrimitive.js +2 -2
  122. package/Source/Scene/VoxelEllipsoidShape.js +15 -7
  123. package/Source/Scene/VoxelPrimitive.js +4 -4
  124. package/Source/Scene/computeFlyToLocationForRectangle.js +10 -1
  125. package/Source/Scene/createElevationBandMaterial.js +10 -15
  126. package/Source/Scene/getClipAndStyleCode.js +1 -1
  127. package/Source/Scene/getClippingFunction.js +3 -3
  128. package/Source/Scene/processVoxelProperties.js +1 -1
  129. package/Source/Shaders/AdjustTranslucentFS.glsl +9 -6
  130. package/Source/Shaders/AdjustTranslucentFS.js +9 -6
  131. package/Source/Shaders/Appearances/AllMaterialAppearanceFS.glsl +7 -7
  132. package/Source/Shaders/Appearances/AllMaterialAppearanceFS.js +7 -7
  133. package/Source/Shaders/Appearances/AllMaterialAppearanceVS.glsl +12 -12
  134. package/Source/Shaders/Appearances/AllMaterialAppearanceVS.js +12 -12
  135. package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.glsl +4 -4
  136. package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.js +4 -4
  137. package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.glsl +6 -6
  138. package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.js +6 -6
  139. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.glsl +5 -5
  140. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.js +5 -5
  141. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.glsl +7 -7
  142. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.js +7 -7
  143. package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.glsl +4 -4
  144. package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.js +4 -4
  145. package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.glsl +8 -8
  146. package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.js +8 -8
  147. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.glsl +2 -2
  148. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.js +2 -2
  149. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.glsl +5 -5
  150. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.js +5 -5
  151. package/Source/Shaders/Appearances/PolylineColorAppearanceVS.glsl +10 -10
  152. package/Source/Shaders/Appearances/PolylineColorAppearanceVS.js +10 -10
  153. package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.glsl +12 -12
  154. package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.js +12 -12
  155. package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.glsl +5 -5
  156. package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.js +5 -5
  157. package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.glsl +8 -8
  158. package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.js +8 -8
  159. package/Source/Shaders/BillboardCollectionFS.glsl +15 -15
  160. package/Source/Shaders/BillboardCollectionFS.js +15 -15
  161. package/Source/Shaders/BillboardCollectionVS.glsl +23 -23
  162. package/Source/Shaders/BillboardCollectionVS.js +23 -23
  163. package/Source/Shaders/BrdfLutGeneratorFS.glsl +2 -2
  164. package/Source/Shaders/BrdfLutGeneratorFS.js +2 -2
  165. package/Source/Shaders/Builtin/CzmBuiltins.js +2 -0
  166. package/Source/Shaders/Builtin/Functions/depthClamp.glsl +3 -3
  167. package/Source/Shaders/Builtin/Functions/depthClamp.js +3 -3
  168. package/Source/Shaders/Builtin/Functions/getWaterNoise.glsl +4 -4
  169. package/Source/Shaders/Builtin/Functions/getWaterNoise.js +4 -4
  170. package/Source/Shaders/Builtin/Functions/phong.glsl +1 -1
  171. package/Source/Shaders/Builtin/Functions/phong.js +1 -1
  172. package/Source/Shaders/Builtin/Functions/readDepth.glsl +1 -1
  173. package/Source/Shaders/Builtin/Functions/readDepth.js +1 -1
  174. package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.glsl +5 -5
  175. package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.js +5 -5
  176. package/Source/Shaders/Builtin/Functions/shadowDepthCompare.glsl +3 -3
  177. package/Source/Shaders/Builtin/Functions/shadowDepthCompare.js +3 -3
  178. package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.glsl +1 -1
  179. package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js +1 -1
  180. package/Source/Shaders/Builtin/Functions/textureCube.glsl +17 -0
  181. package/Source/Shaders/Builtin/Functions/textureCube.js +18 -0
  182. package/Source/Shaders/Builtin/Functions/translateRelativeToEye.glsl +2 -2
  183. package/Source/Shaders/Builtin/Functions/translateRelativeToEye.js +2 -2
  184. package/Source/Shaders/Builtin/Functions/vertexLogDepth.glsl +2 -2
  185. package/Source/Shaders/Builtin/Functions/vertexLogDepth.js +2 -2
  186. package/Source/Shaders/Builtin/Functions/writeDepthClamp.glsl +5 -8
  187. package/Source/Shaders/Builtin/Functions/writeDepthClamp.js +5 -8
  188. package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +6 -6
  189. package/Source/Shaders/Builtin/Functions/writeLogDepth.js +6 -6
  190. package/Source/Shaders/CloudCollectionFS.glsl +18 -18
  191. package/Source/Shaders/CloudCollectionFS.js +18 -18
  192. package/Source/Shaders/CloudCollectionVS.glsl +11 -11
  193. package/Source/Shaders/CloudCollectionVS.js +11 -11
  194. package/Source/Shaders/CloudNoiseFS.glsl +5 -5
  195. package/Source/Shaders/CloudNoiseFS.js +5 -5
  196. package/Source/Shaders/CloudNoiseVS.glsl +2 -2
  197. package/Source/Shaders/CloudNoiseVS.js +2 -2
  198. package/Source/Shaders/CompareAndPackTranslucentDepth.glsl +4 -4
  199. package/Source/Shaders/CompareAndPackTranslucentDepth.js +4 -4
  200. package/Source/Shaders/CompositeOITFS.glsl +6 -6
  201. package/Source/Shaders/CompositeOITFS.js +6 -6
  202. package/Source/Shaders/DepthPlaneFS.glsl +2 -2
  203. package/Source/Shaders/DepthPlaneFS.js +2 -2
  204. package/Source/Shaders/DepthPlaneVS.glsl +2 -2
  205. package/Source/Shaders/DepthPlaneVS.js +2 -2
  206. package/Source/Shaders/EllipsoidFS.glsl +5 -13
  207. package/Source/Shaders/EllipsoidFS.js +6 -14
  208. package/Source/Shaders/EllipsoidVS.glsl +2 -2
  209. package/Source/Shaders/EllipsoidVS.js +2 -2
  210. package/Source/Shaders/FXAA3_11.glsl +4 -4
  211. package/Source/Shaders/FXAA3_11.js +4 -4
  212. package/Source/Shaders/GlobeFS.glsl +15 -15
  213. package/Source/Shaders/GlobeFS.js +15 -15
  214. package/Source/Shaders/GlobeVS.glsl +17 -17
  215. package/Source/Shaders/GlobeVS.js +17 -17
  216. package/Source/Shaders/Materials/AspectRampMaterial.glsl +1 -1
  217. package/Source/Shaders/Materials/AspectRampMaterial.js +1 -1
  218. package/Source/Shaders/Materials/BumpMapMaterial.glsl +3 -3
  219. package/Source/Shaders/Materials/BumpMapMaterial.js +3 -3
  220. package/Source/Shaders/Materials/ElevationBandMaterial.glsl +3 -3
  221. package/Source/Shaders/Materials/ElevationBandMaterial.js +3 -3
  222. package/Source/Shaders/Materials/ElevationContourMaterial.glsl +2 -1
  223. package/Source/Shaders/Materials/ElevationContourMaterial.js +2 -1
  224. package/Source/Shaders/Materials/ElevationRampMaterial.glsl +1 -1
  225. package/Source/Shaders/Materials/ElevationRampMaterial.js +1 -1
  226. package/Source/Shaders/Materials/GridMaterial.glsl +3 -2
  227. package/Source/Shaders/Materials/GridMaterial.js +3 -2
  228. package/Source/Shaders/Materials/NormalMapMaterial.glsl +1 -1
  229. package/Source/Shaders/Materials/NormalMapMaterial.js +1 -1
  230. package/Source/Shaders/Materials/PolylineArrowMaterial.glsl +3 -2
  231. package/Source/Shaders/Materials/PolylineArrowMaterial.js +3 -2
  232. package/Source/Shaders/Materials/PolylineDashMaterial.glsl +1 -1
  233. package/Source/Shaders/Materials/PolylineDashMaterial.js +1 -1
  234. package/Source/Shaders/Materials/PolylineOutlineMaterial.glsl +1 -1
  235. package/Source/Shaders/Materials/PolylineOutlineMaterial.js +1 -1
  236. package/Source/Shaders/Materials/SlopeRampMaterial.glsl +1 -1
  237. package/Source/Shaders/Materials/SlopeRampMaterial.js +1 -1
  238. package/Source/Shaders/Materials/Water.glsl +1 -1
  239. package/Source/Shaders/Materials/Water.js +1 -1
  240. package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +3 -3
  241. package/Source/Shaders/Model/ImageBasedLightingStageFS.js +3 -3
  242. package/Source/Shaders/Model/MaterialStageFS.glsl +10 -10
  243. package/Source/Shaders/Model/MaterialStageFS.js +10 -10
  244. package/Source/Shaders/Model/ModelClippingPlanesStageFS.glsl +3 -3
  245. package/Source/Shaders/Model/ModelClippingPlanesStageFS.js +3 -3
  246. package/Source/Shaders/Model/ModelFS.glsl +1 -1
  247. package/Source/Shaders/Model/ModelFS.js +1 -1
  248. package/Source/Shaders/Model/PrimitiveOutlineStageFS.glsl +3 -3
  249. package/Source/Shaders/Model/PrimitiveOutlineStageFS.js +3 -3
  250. package/Source/Shaders/Model/SelectedFeatureIdStageCommon.glsl +1 -1
  251. package/Source/Shaders/Model/SelectedFeatureIdStageCommon.js +1 -1
  252. package/Source/Shaders/OctahedralProjectionAtlasFS.glsl +8 -8
  253. package/Source/Shaders/OctahedralProjectionAtlasFS.js +8 -8
  254. package/Source/Shaders/OctahedralProjectionFS.glsl +4 -4
  255. package/Source/Shaders/OctahedralProjectionFS.js +4 -4
  256. package/Source/Shaders/OctahedralProjectionVS.glsl +3 -3
  257. package/Source/Shaders/OctahedralProjectionVS.js +3 -3
  258. package/Source/Shaders/PointPrimitiveCollectionFS.glsl +6 -6
  259. package/Source/Shaders/PointPrimitiveCollectionFS.js +6 -6
  260. package/Source/Shaders/PointPrimitiveCollectionVS.glsl +12 -12
  261. package/Source/Shaders/PointPrimitiveCollectionVS.js +12 -12
  262. package/Source/Shaders/PolylineFS.glsl +3 -3
  263. package/Source/Shaders/PolylineFS.js +3 -3
  264. package/Source/Shaders/PolylineShadowVolumeFS.glsl +12 -16
  265. package/Source/Shaders/PolylineShadowVolumeFS.js +12 -16
  266. package/Source/Shaders/PolylineShadowVolumeMorphFS.glsl +8 -8
  267. package/Source/Shaders/PolylineShadowVolumeMorphFS.js +8 -8
  268. package/Source/Shaders/PolylineShadowVolumeMorphVS.glsl +20 -20
  269. package/Source/Shaders/PolylineShadowVolumeMorphVS.js +20 -20
  270. package/Source/Shaders/PolylineShadowVolumeVS.glsl +20 -20
  271. package/Source/Shaders/PolylineShadowVolumeVS.js +20 -20
  272. package/Source/Shaders/PolylineVS.glsl +17 -17
  273. package/Source/Shaders/PolylineVS.js +17 -17
  274. package/Source/Shaders/PostProcessStages/AcesTonemappingStage.glsl +4 -4
  275. package/Source/Shaders/PostProcessStages/AcesTonemappingStage.js +4 -4
  276. package/Source/Shaders/PostProcessStages/AdditiveBlend.glsl +4 -4
  277. package/Source/Shaders/PostProcessStages/AdditiveBlend.js +4 -4
  278. package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.glsl +4 -4
  279. package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.js +4 -4
  280. package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.glsl +4 -4
  281. package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.js +4 -4
  282. package/Source/Shaders/PostProcessStages/BlackAndWhite.glsl +4 -4
  283. package/Source/Shaders/PostProcessStages/BlackAndWhite.js +4 -4
  284. package/Source/Shaders/PostProcessStages/BloomComposite.glsl +5 -5
  285. package/Source/Shaders/PostProcessStages/BloomComposite.js +5 -5
  286. package/Source/Shaders/PostProcessStages/BrightPass.glsl +3 -3
  287. package/Source/Shaders/PostProcessStages/BrightPass.js +3 -3
  288. package/Source/Shaders/PostProcessStages/Brightness.glsl +3 -3
  289. package/Source/Shaders/PostProcessStages/Brightness.js +3 -3
  290. package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.glsl +5 -5
  291. package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.js +5 -5
  292. package/Source/Shaders/PostProcessStages/ContrastBias.glsl +3 -3
  293. package/Source/Shaders/PostProcessStages/ContrastBias.js +3 -3
  294. package/Source/Shaders/PostProcessStages/DepthOfField.glsl +2 -2
  295. package/Source/Shaders/PostProcessStages/DepthOfField.js +2 -2
  296. package/Source/Shaders/PostProcessStages/DepthView.glsl +2 -2
  297. package/Source/Shaders/PostProcessStages/DepthView.js +2 -2
  298. package/Source/Shaders/PostProcessStages/DepthViewPacked.glsl +3 -3
  299. package/Source/Shaders/PostProcessStages/DepthViewPacked.js +3 -3
  300. package/Source/Shaders/PostProcessStages/EdgeDetection.glsl +7 -7
  301. package/Source/Shaders/PostProcessStages/EdgeDetection.js +7 -7
  302. package/Source/Shaders/PostProcessStages/FXAA.glsl +3 -3
  303. package/Source/Shaders/PostProcessStages/FXAA.js +3 -3
  304. package/Source/Shaders/PostProcessStages/FilmicTonemapping.glsl +4 -4
  305. package/Source/Shaders/PostProcessStages/FilmicTonemapping.js +4 -4
  306. package/Source/Shaders/PostProcessStages/GaussianBlur1D.glsl +5 -5
  307. package/Source/Shaders/PostProcessStages/GaussianBlur1D.js +5 -5
  308. package/Source/Shaders/PostProcessStages/LensFlare.glsl +13 -13
  309. package/Source/Shaders/PostProcessStages/LensFlare.js +13 -13
  310. package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.glsl +4 -4
  311. package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.js +4 -4
  312. package/Source/Shaders/PostProcessStages/NightVision.glsl +3 -3
  313. package/Source/Shaders/PostProcessStages/NightVision.js +3 -3
  314. package/Source/Shaders/PostProcessStages/PassThrough.glsl +2 -2
  315. package/Source/Shaders/PostProcessStages/PassThrough.js +2 -2
  316. package/Source/Shaders/PostProcessStages/PassThroughDepth.glsl +2 -2
  317. package/Source/Shaders/PostProcessStages/PassThroughDepth.js +2 -2
  318. package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.glsl +7 -9
  319. package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.js +8 -10
  320. package/Source/Shaders/PostProcessStages/ReinhardTonemapping.glsl +4 -4
  321. package/Source/Shaders/PostProcessStages/ReinhardTonemapping.js +4 -4
  322. package/Source/Shaders/PostProcessStages/Silhouette.glsl +4 -4
  323. package/Source/Shaders/PostProcessStages/Silhouette.js +4 -4
  324. package/Source/Shaders/ReprojectWebMercatorFS.glsl +2 -2
  325. package/Source/Shaders/ReprojectWebMercatorFS.js +2 -2
  326. package/Source/Shaders/ReprojectWebMercatorVS.glsl +3 -3
  327. package/Source/Shaders/ReprojectWebMercatorVS.js +3 -3
  328. package/Source/Shaders/ShadowVolumeAppearanceFS.glsl +19 -23
  329. package/Source/Shaders/ShadowVolumeAppearanceFS.js +20 -24
  330. package/Source/Shaders/ShadowVolumeAppearanceVS.glsl +12 -12
  331. package/Source/Shaders/ShadowVolumeAppearanceVS.js +12 -12
  332. package/Source/Shaders/ShadowVolumeFS.glsl +2 -6
  333. package/Source/Shaders/ShadowVolumeFS.js +3 -7
  334. package/Source/Shaders/SkyAtmosphereFS.glsl +6 -6
  335. package/Source/Shaders/SkyAtmosphereFS.js +6 -6
  336. package/Source/Shaders/SkyAtmosphereVS.glsl +6 -6
  337. package/Source/Shaders/SkyAtmosphereVS.js +6 -6
  338. package/Source/Shaders/SkyBoxFS.glsl +3 -3
  339. package/Source/Shaders/SkyBoxFS.js +3 -3
  340. package/Source/Shaders/SkyBoxVS.glsl +2 -2
  341. package/Source/Shaders/SkyBoxVS.js +2 -2
  342. package/Source/Shaders/SunFS.glsl +3 -3
  343. package/Source/Shaders/SunFS.js +3 -3
  344. package/Source/Shaders/SunTextureFS.glsl +2 -2
  345. package/Source/Shaders/SunTextureFS.js +2 -2
  346. package/Source/Shaders/SunVS.glsl +2 -2
  347. package/Source/Shaders/SunVS.js +2 -2
  348. package/Source/Shaders/Vector3DTileClampedPolylinesFS.glsl +9 -13
  349. package/Source/Shaders/Vector3DTileClampedPolylinesFS.js +9 -13
  350. package/Source/Shaders/Vector3DTileClampedPolylinesVS.glsl +12 -12
  351. package/Source/Shaders/Vector3DTileClampedPolylinesVS.js +12 -12
  352. package/Source/Shaders/Vector3DTilePolylinesVS.glsl +5 -5
  353. package/Source/Shaders/Vector3DTilePolylinesVS.js +5 -5
  354. package/Source/Shaders/VectorTileVS.glsl +2 -2
  355. package/Source/Shaders/VectorTileVS.js +2 -2
  356. package/Source/Shaders/ViewportQuadFS.glsl +2 -2
  357. package/Source/Shaders/ViewportQuadFS.js +2 -2
  358. package/Source/Shaders/ViewportQuadVS.glsl +3 -3
  359. package/Source/Shaders/ViewportQuadVS.js +3 -3
  360. package/Source/Shaders/Voxels/IntersectDepth.glsl +1 -1
  361. package/Source/Shaders/Voxels/IntersectDepth.js +1 -1
  362. package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +12 -2
  363. package/Source/Shaders/Voxels/IntersectEllipsoid.js +12 -2
  364. package/Source/Shaders/Voxels/Megatexture.glsl +1 -1
  365. package/Source/Shaders/Voxels/Megatexture.js +1 -1
  366. package/Source/Shaders/Voxels/Octree.glsl +4 -4
  367. package/Source/Shaders/Voxels/Octree.js +4 -4
  368. package/Source/Shaders/Voxels/VoxelFS.glsl +2 -2
  369. package/Source/Shaders/Voxels/VoxelFS.js +2 -2
  370. package/Source/Shaders/Voxels/VoxelVS.glsl +1 -1
  371. package/Source/Shaders/Voxels/VoxelVS.js +1 -1
  372. package/Source/Shaders/Voxels/convertUvToCylinder.glsl +5 -9
  373. package/Source/Shaders/Voxels/convertUvToCylinder.js +5 -9
  374. package/Source/Shaders/Voxels/convertUvToEllipsoid.glsl +3 -6
  375. package/Source/Shaders/Voxels/convertUvToEllipsoid.js +3 -6
  376. package/Source/WorkersES6/decodeDraco.js +9 -1
  377. package/index.d.ts +26 -12
  378. package/index.js +53 -52
  379. package/package.json +1 -1
  380. package/Source/Renderer/modernizeShader.js +0 -242
@@ -1,15 +1,12 @@
1
1
  //This file is automatically rebuilt by the Cesium build process.
2
2
  export default "/* Ellipsoid defines (set in Scene/VoxelEllipsoidShape.js)\n\
3
- #define ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO\n\
4
3
  #define ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_MIN_DISCONTINUITY\n\
5
4
  #define ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_MAX_DISCONTINUITY\n\
6
5
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE\n\
7
6
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO\n\
8
7
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_MIN_MAX_REVERSED\n\
9
- #define ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO\n\
10
8
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE\n\
11
9
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO\n\
12
- #define ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_FLAT\n\
13
10
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_MIN\n\
14
11
  #define ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_FLAT\n\
15
12
  #define ELLIPSOID_IS_SPHERE\n\
@@ -70,7 +67,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {\n\
70
67
  #endif\n\
71
68
  \n\
72
69
  // Compute longitude\n\
73
- #if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO)\n\
70
+ #if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LONGITUDE_RANGE_EQUAL_ZERO)\n\
74
71
  float longitude = 1.0;\n\
75
72
  #else\n\
76
73
  float longitude = (atan(normal.y, normal.x) + czm_pi) / czm_twoPi;\n\
@@ -95,7 +92,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {\n\
95
92
  #endif\n\
96
93
  \n\
97
94
  // Compute latitude\n\
98
- #if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO)\n\
95
+ #if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_LATITUDE_RANGE_EQUAL_ZERO)\n\
99
96
  float latitude = 1.0;\n\
100
97
  #else\n\
101
98
  float latitude = (asin(normal.z) + czm_piOverTwo) / czm_pi;\n\
@@ -105,7 +102,7 @@ vec3 convertUvToShapeUvSpace(in vec3 positionUv) {\n\
105
102
  #endif\n\
106
103
  \n\
107
104
  // Compute height\n\
108
- #if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_FLAT) || defined(ELLIPSOID_HAS_RENDER_BOUNDS_HEIGHT_FLAT)\n\
105
+ #if defined(ELLIPSOID_HAS_SHAPE_BOUNDS_HEIGHT_FLAT)\n\
109
106
  // TODO: This breaks down when minBounds == maxBounds. To fix it, this\n\
110
107
  // function would have to know if ray is intersecting the front or back of the shape\n\
111
108
  // and set the shape space position to 1 (front) or 0 (back) accordingly.\n\
@@ -49,7 +49,7 @@ function decodeQuantizedDracoTypedArray(
49
49
  dracoAttribute,
50
50
  attributeData
51
51
  );
52
- } else {
52
+ } else if (quantization.quantizationBits <= 16) {
53
53
  attributeData = new draco.DracoUInt16Array();
54
54
  vertexArray = new Uint16Array(vertexArrayLength);
55
55
  dracoDecoder.GetAttributeUInt16ForAllPoints(
@@ -57,6 +57,14 @@ function decodeQuantizedDracoTypedArray(
57
57
  dracoAttribute,
58
58
  attributeData
59
59
  );
60
+ } else {
61
+ attributeData = new draco.DracoFloat32Array();
62
+ vertexArray = new Float32Array(vertexArrayLength);
63
+ dracoDecoder.GetAttributeFloatForAllPoints(
64
+ dracoGeometry,
65
+ dracoAttribute,
66
+ attributeData
67
+ );
60
68
  }
61
69
 
62
70
  for (let i = 0; i < vertexArrayLength; ++i) {
package/index.d.ts CHANGED
@@ -6362,6 +6362,12 @@ export namespace FeatureDetection {
6362
6362
  * @returns true if the browsers supports Web Assembly, false if not.
6363
6363
  */
6364
6364
  function supportsWebAssembly(): boolean;
6365
+ /**
6366
+ * Detects whether the current browser supports a WebGL2 rendering context for the specified scene.
6367
+ * @param scene - the Cesium scene specifying the rendering context
6368
+ * @returns true if the browser supports a WebGL2 rendering context, false if not.
6369
+ */
6370
+ function supportsWebgl2(scene: Scene): boolean;
6365
6371
  }
6366
6372
 
6367
6373
  /**
@@ -12351,6 +12357,14 @@ export enum PixelFormat {
12351
12357
  * A pixel format containing an alpha channel.
12352
12358
  */
12353
12359
  ALPHA = WebGLConstants.ALPHA,
12360
+ /**
12361
+ * A pixel format containing a red channel
12362
+ */
12363
+ RED = WebGLConstants.RED,
12364
+ /**
12365
+ * A pixel format containing red and green channels.
12366
+ */
12367
+ RG = WebGLConstants.RG,
12354
12368
  /**
12355
12369
  * A pixel format containing red, green, and blue channels.
12356
12370
  */
@@ -24983,13 +24997,13 @@ export type exportKmlModelCallback = (model: ModelGraphics, time: JulianDate, ex
24983
24997
  * Setting this to false will improve performance, but hurt visual quality,
24984
24998
  * especially for horizon views.
24985
24999
  * </p>
24986
- * @property [requestWebgl1 = true] - If true and the browser supports it, use a WebGL 1 rendering context
25000
+ * @property [requestWebGl1 = false] - If true and the browser supports it, use a WebGL 1 rendering context
24987
25001
  * @property [allowTextureFilterAnisotropic = true] - If true, use anisotropic filtering during texture sampling
24988
25002
  * @property [webgl] - WebGL options to be passed on to canvas.getContext
24989
25003
  * @property [getWebGLStub] - A function to create a WebGL stub for testing
24990
25004
  */
24991
25005
  export type ContextOptions = {
24992
- requestWebgl1?: boolean;
25006
+ requestWebGl1?: boolean;
24993
25007
  allowTextureFilterAnisotropic?: boolean;
24994
25008
  webgl?: WebGLOptions;
24995
25009
  getWebGLStub?: (...params: any[]) => any;
@@ -35552,7 +35566,7 @@ export type UniformSpecifier = {
35552
35566
  * `,
35553
35567
  * fragmentShaderText: `
35554
35568
  * void fragmentMain(FragmentInput fsInput, inout czm_modelMaterial material) {
35555
- * material.normal = texture2D(u_normalMap, fsInput.attributes.texCoord_0);
35569
+ * material.normal = texture(u_normalMap, fsInput.attributes.texCoord_0);
35556
35570
  * material.diffuse = v_selectedColor;
35557
35571
  * }
35558
35572
  * `
@@ -35671,7 +35685,7 @@ export enum LightingModel {
35671
35685
  /**
35672
35686
  * Use unlit shading, i.e. skip lighting calculations. The model's
35673
35687
  * diffuse color (assumed to be linear RGB, not sRGB) is used directly
35674
- * when computing <code>gl_FragColor</code>. The alpha mode is still
35688
+ * when computing <code>out_FragColor</code>. The alpha mode is still
35675
35689
  * applied.
35676
35690
  */
35677
35691
  UNLIT = 0,
@@ -38092,12 +38106,12 @@ export class PolylineMaterialAppearance {
38092
38106
  * // Simple stage to change the color
38093
38107
  * const fs =`
38094
38108
  * uniform sampler2D colorTexture;
38095
- * varying vec2 v_textureCoordinates;
38109
+ * in vec2 v_textureCoordinates;
38096
38110
  * uniform float scale;
38097
38111
  * uniform vec3 offset;
38098
38112
  * void main() {
38099
- * vec4 color = texture2D(colorTexture, v_textureCoordinates);
38100
- * gl_FragColor = vec4(color.rgb * scale + offset, 1.0);
38113
+ * vec4 color = texture(colorTexture, v_textureCoordinates);
38114
+ * out_FragColor = vec4(color.rgb * scale + offset, 1.0);
38101
38115
  * }`;
38102
38116
  * scene.postProcessStages.add(new Cesium.PostProcessStage({
38103
38117
  * fragmentShader : fs,
@@ -38113,15 +38127,15 @@ export class PolylineMaterialAppearance {
38113
38127
  * // If czm_selected returns true, the current fragment belongs to geometry in the selected array.
38114
38128
  * const fs =`
38115
38129
  * uniform sampler2D colorTexture;
38116
- * varying vec2 v_textureCoordinates;
38130
+ * in vec2 v_textureCoordinates;
38117
38131
  * uniform vec4 highlight;
38118
38132
  * void main() {
38119
- * vec4 color = texture2D(colorTexture, v_textureCoordinates);
38133
+ * vec4 color = texture(colorTexture, v_textureCoordinates);
38120
38134
  * if (czm_selected()) {
38121
38135
  * vec3 highlighted = highlight.a * highlight.rgb + (1.0 - highlight.a) * color.rgb;
38122
- * gl_FragColor = vec4(highlighted, 1.0);
38136
+ * out_FragColor = vec4(highlighted, 1.0);
38123
38137
  * } else {
38124
- * gl_FragColor = color;
38138
+ * out_FragColor = color;
38125
38139
  * }
38126
38140
  * }`;
38127
38141
  * const stage = scene.postProcessStages.add(new Cesium.PostProcessStage({
@@ -38236,7 +38250,7 @@ export class PostProcessStage {
38236
38250
  * if (czm_selected(v_textureCoordinates)) {
38237
38251
  * // apply post-process stage
38238
38252
  * } else {
38239
- * gl_FragColor = texture2D(colorTexture, v_textureCoordinates);
38253
+ * out_FragColor = texture(colorTexture, v_textureCoordinates);
38240
38254
  * }
38241
38255
  * </code>
38242
38256
  * </p>
package/index.js CHANGED
@@ -37,60 +37,9 @@ export { default as VertexArray } from './Source/Renderer/VertexArray.js';
37
37
  export { default as VertexArrayFacade } from './Source/Renderer/VertexArrayFacade.js';
38
38
  export { default as createUniform } from './Source/Renderer/createUniform.js';
39
39
  export { default as createUniformArray } from './Source/Renderer/createUniformArray.js';
40
+ export { default as demodernizeShader } from './Source/Renderer/demodernizeShader.js';
40
41
  export { default as freezeRenderState } from './Source/Renderer/freezeRenderState.js';
41
42
  export { default as loadCubeMap } from './Source/Renderer/loadCubeMap.js';
42
- export { default as modernizeShader } from './Source/Renderer/modernizeShader.js';
43
- export { default as _shadersAdjustTranslucentFS } from './Source/Shaders/AdjustTranslucentFS.js';
44
- export { default as _shadersAtmosphereCommon } from './Source/Shaders/AtmosphereCommon.js';
45
- export { default as _shadersBillboardCollectionFS } from './Source/Shaders/BillboardCollectionFS.js';
46
- export { default as _shadersBillboardCollectionVS } from './Source/Shaders/BillboardCollectionVS.js';
47
- export { default as _shadersBrdfLutGeneratorFS } from './Source/Shaders/BrdfLutGeneratorFS.js';
48
- export { default as _shadersCloudCollectionFS } from './Source/Shaders/CloudCollectionFS.js';
49
- export { default as _shadersCloudCollectionVS } from './Source/Shaders/CloudCollectionVS.js';
50
- export { default as _shadersCloudNoiseFS } from './Source/Shaders/CloudNoiseFS.js';
51
- export { default as _shadersCloudNoiseVS } from './Source/Shaders/CloudNoiseVS.js';
52
- export { default as _shadersCompareAndPackTranslucentDepth } from './Source/Shaders/CompareAndPackTranslucentDepth.js';
53
- export { default as _shadersCompositeOITFS } from './Source/Shaders/CompositeOITFS.js';
54
- export { default as _shadersDepthPlaneFS } from './Source/Shaders/DepthPlaneFS.js';
55
- export { default as _shadersDepthPlaneVS } from './Source/Shaders/DepthPlaneVS.js';
56
- export { default as _shadersEllipsoidFS } from './Source/Shaders/EllipsoidFS.js';
57
- export { default as _shadersEllipsoidVS } from './Source/Shaders/EllipsoidVS.js';
58
- export { default as _shadersFXAA3_11 } from './Source/Shaders/FXAA3_11.js';
59
- export { default as _shadersGlobeFS } from './Source/Shaders/GlobeFS.js';
60
- export { default as _shadersGlobeVS } from './Source/Shaders/GlobeVS.js';
61
- export { default as _shadersGroundAtmosphere } from './Source/Shaders/GroundAtmosphere.js';
62
- export { default as _shadersOctahedralProjectionAtlasFS } from './Source/Shaders/OctahedralProjectionAtlasFS.js';
63
- export { default as _shadersOctahedralProjectionFS } from './Source/Shaders/OctahedralProjectionFS.js';
64
- export { default as _shadersOctahedralProjectionVS } from './Source/Shaders/OctahedralProjectionVS.js';
65
- export { default as _shadersPointPrimitiveCollectionFS } from './Source/Shaders/PointPrimitiveCollectionFS.js';
66
- export { default as _shadersPointPrimitiveCollectionVS } from './Source/Shaders/PointPrimitiveCollectionVS.js';
67
- export { default as _shadersPolylineCommon } from './Source/Shaders/PolylineCommon.js';
68
- export { default as _shadersPolylineFS } from './Source/Shaders/PolylineFS.js';
69
- export { default as _shadersPolylineShadowVolumeFS } from './Source/Shaders/PolylineShadowVolumeFS.js';
70
- export { default as _shadersPolylineShadowVolumeMorphFS } from './Source/Shaders/PolylineShadowVolumeMorphFS.js';
71
- export { default as _shadersPolylineShadowVolumeMorphVS } from './Source/Shaders/PolylineShadowVolumeMorphVS.js';
72
- export { default as _shadersPolylineShadowVolumeVS } from './Source/Shaders/PolylineShadowVolumeVS.js';
73
- export { default as _shadersPolylineVS } from './Source/Shaders/PolylineVS.js';
74
- export { default as _shadersReprojectWebMercatorFS } from './Source/Shaders/ReprojectWebMercatorFS.js';
75
- export { default as _shadersReprojectWebMercatorVS } from './Source/Shaders/ReprojectWebMercatorVS.js';
76
- export { default as _shadersShadowVolumeAppearanceFS } from './Source/Shaders/ShadowVolumeAppearanceFS.js';
77
- export { default as _shadersShadowVolumeAppearanceVS } from './Source/Shaders/ShadowVolumeAppearanceVS.js';
78
- export { default as _shadersShadowVolumeFS } from './Source/Shaders/ShadowVolumeFS.js';
79
- export { default as _shadersSkyAtmosphereCommon } from './Source/Shaders/SkyAtmosphereCommon.js';
80
- export { default as _shadersSkyAtmosphereFS } from './Source/Shaders/SkyAtmosphereFS.js';
81
- export { default as _shadersSkyAtmosphereVS } from './Source/Shaders/SkyAtmosphereVS.js';
82
- export { default as _shadersSkyBoxFS } from './Source/Shaders/SkyBoxFS.js';
83
- export { default as _shadersSkyBoxVS } from './Source/Shaders/SkyBoxVS.js';
84
- export { default as _shadersSunFS } from './Source/Shaders/SunFS.js';
85
- export { default as _shadersSunTextureFS } from './Source/Shaders/SunTextureFS.js';
86
- export { default as _shadersSunVS } from './Source/Shaders/SunVS.js';
87
- export { default as _shadersVector3DTileClampedPolylinesFS } from './Source/Shaders/Vector3DTileClampedPolylinesFS.js';
88
- export { default as _shadersVector3DTileClampedPolylinesVS } from './Source/Shaders/Vector3DTileClampedPolylinesVS.js';
89
- export { default as _shadersVector3DTilePolylinesVS } from './Source/Shaders/Vector3DTilePolylinesVS.js';
90
- export { default as _shadersVectorTileVS } from './Source/Shaders/VectorTileVS.js';
91
- export { default as _shadersViewportQuadFS } from './Source/Shaders/ViewportQuadFS.js';
92
- export { default as _shadersViewportQuadVS } from './Source/Shaders/ViewportQuadVS.js';
93
- export { default as CesiumWidget } from './Source/Widget/CesiumWidget.js';
94
43
  export { default as BillboardGraphics } from './Source/DataSources/BillboardGraphics.js';
95
44
  export { default as BillboardVisualizer } from './Source/DataSources/BillboardVisualizer.js';
96
45
  export { default as BoundingSphereState } from './Source/DataSources/BoundingSphereState.js';
@@ -197,6 +146,56 @@ export { default as createRawPropertyDescriptor } from './Source/DataSources/cre
197
146
  export { default as exportKml } from './Source/DataSources/exportKml.js';
198
147
  export { default as getElement } from './Source/DataSources/getElement.js';
199
148
  export { default as heightReferenceOnEntityPropertyChanged } from './Source/DataSources/heightReferenceOnEntityPropertyChanged.js';
149
+ export { default as _shadersAdjustTranslucentFS } from './Source/Shaders/AdjustTranslucentFS.js';
150
+ export { default as _shadersAtmosphereCommon } from './Source/Shaders/AtmosphereCommon.js';
151
+ export { default as _shadersBillboardCollectionFS } from './Source/Shaders/BillboardCollectionFS.js';
152
+ export { default as _shadersBillboardCollectionVS } from './Source/Shaders/BillboardCollectionVS.js';
153
+ export { default as _shadersBrdfLutGeneratorFS } from './Source/Shaders/BrdfLutGeneratorFS.js';
154
+ export { default as _shadersCloudCollectionFS } from './Source/Shaders/CloudCollectionFS.js';
155
+ export { default as _shadersCloudCollectionVS } from './Source/Shaders/CloudCollectionVS.js';
156
+ export { default as _shadersCloudNoiseFS } from './Source/Shaders/CloudNoiseFS.js';
157
+ export { default as _shadersCloudNoiseVS } from './Source/Shaders/CloudNoiseVS.js';
158
+ export { default as _shadersCompareAndPackTranslucentDepth } from './Source/Shaders/CompareAndPackTranslucentDepth.js';
159
+ export { default as _shadersCompositeOITFS } from './Source/Shaders/CompositeOITFS.js';
160
+ export { default as _shadersDepthPlaneFS } from './Source/Shaders/DepthPlaneFS.js';
161
+ export { default as _shadersDepthPlaneVS } from './Source/Shaders/DepthPlaneVS.js';
162
+ export { default as _shadersEllipsoidFS } from './Source/Shaders/EllipsoidFS.js';
163
+ export { default as _shadersEllipsoidVS } from './Source/Shaders/EllipsoidVS.js';
164
+ export { default as _shadersFXAA3_11 } from './Source/Shaders/FXAA3_11.js';
165
+ export { default as _shadersGlobeFS } from './Source/Shaders/GlobeFS.js';
166
+ export { default as _shadersGlobeVS } from './Source/Shaders/GlobeVS.js';
167
+ export { default as _shadersGroundAtmosphere } from './Source/Shaders/GroundAtmosphere.js';
168
+ export { default as _shadersOctahedralProjectionAtlasFS } from './Source/Shaders/OctahedralProjectionAtlasFS.js';
169
+ export { default as _shadersOctahedralProjectionFS } from './Source/Shaders/OctahedralProjectionFS.js';
170
+ export { default as _shadersOctahedralProjectionVS } from './Source/Shaders/OctahedralProjectionVS.js';
171
+ export { default as _shadersPointPrimitiveCollectionFS } from './Source/Shaders/PointPrimitiveCollectionFS.js';
172
+ export { default as _shadersPointPrimitiveCollectionVS } from './Source/Shaders/PointPrimitiveCollectionVS.js';
173
+ export { default as _shadersPolylineCommon } from './Source/Shaders/PolylineCommon.js';
174
+ export { default as _shadersPolylineFS } from './Source/Shaders/PolylineFS.js';
175
+ export { default as _shadersPolylineShadowVolumeFS } from './Source/Shaders/PolylineShadowVolumeFS.js';
176
+ export { default as _shadersPolylineShadowVolumeMorphFS } from './Source/Shaders/PolylineShadowVolumeMorphFS.js';
177
+ export { default as _shadersPolylineShadowVolumeMorphVS } from './Source/Shaders/PolylineShadowVolumeMorphVS.js';
178
+ export { default as _shadersPolylineShadowVolumeVS } from './Source/Shaders/PolylineShadowVolumeVS.js';
179
+ export { default as _shadersPolylineVS } from './Source/Shaders/PolylineVS.js';
180
+ export { default as _shadersReprojectWebMercatorFS } from './Source/Shaders/ReprojectWebMercatorFS.js';
181
+ export { default as _shadersReprojectWebMercatorVS } from './Source/Shaders/ReprojectWebMercatorVS.js';
182
+ export { default as _shadersShadowVolumeAppearanceFS } from './Source/Shaders/ShadowVolumeAppearanceFS.js';
183
+ export { default as _shadersShadowVolumeAppearanceVS } from './Source/Shaders/ShadowVolumeAppearanceVS.js';
184
+ export { default as _shadersShadowVolumeFS } from './Source/Shaders/ShadowVolumeFS.js';
185
+ export { default as _shadersSkyAtmosphereCommon } from './Source/Shaders/SkyAtmosphereCommon.js';
186
+ export { default as _shadersSkyAtmosphereFS } from './Source/Shaders/SkyAtmosphereFS.js';
187
+ export { default as _shadersSkyAtmosphereVS } from './Source/Shaders/SkyAtmosphereVS.js';
188
+ export { default as _shadersSkyBoxFS } from './Source/Shaders/SkyBoxFS.js';
189
+ export { default as _shadersSkyBoxVS } from './Source/Shaders/SkyBoxVS.js';
190
+ export { default as _shadersSunFS } from './Source/Shaders/SunFS.js';
191
+ export { default as _shadersSunTextureFS } from './Source/Shaders/SunTextureFS.js';
192
+ export { default as _shadersSunVS } from './Source/Shaders/SunVS.js';
193
+ export { default as _shadersVector3DTileClampedPolylinesFS } from './Source/Shaders/Vector3DTileClampedPolylinesFS.js';
194
+ export { default as _shadersVector3DTileClampedPolylinesVS } from './Source/Shaders/Vector3DTileClampedPolylinesVS.js';
195
+ export { default as _shadersVector3DTilePolylinesVS } from './Source/Shaders/Vector3DTilePolylinesVS.js';
196
+ export { default as _shadersVectorTileVS } from './Source/Shaders/VectorTileVS.js';
197
+ export { default as _shadersViewportQuadFS } from './Source/Shaders/ViewportQuadFS.js';
198
+ export { default as _shadersViewportQuadVS } from './Source/Shaders/ViewportQuadVS.js';
200
199
  export { default as ApproximateTerrainHeights } from './Source/Core/ApproximateTerrainHeights.js';
201
200
  export { default as ArcGISTiledElevationTerrainProvider } from './Source/Core/ArcGISTiledElevationTerrainProvider.js';
202
201
  export { default as ArcType } from './Source/Core/ArcType.js';
@@ -472,6 +471,7 @@ export { default as subdivideArray } from './Source/Core/subdivideArray.js';
472
471
  export { default as webGLConstantToGlslType } from './Source/Core/webGLConstantToGlslType.js';
473
472
  export { default as wrapFunction } from './Source/Core/wrapFunction.js';
474
473
  export { default as writeTextToCanvas } from './Source/Core/writeTextToCanvas.js';
474
+ export { default as CesiumWidget } from './Source/Widget/CesiumWidget.js';
475
475
  export { default as AlphaMode } from './Source/Scene/AlphaMode.js';
476
476
  export { default as Appearance } from './Source/Scene/Appearance.js';
477
477
  export { default as ArcGisMapServerImageryProvider } from './Source/Scene/ArcGisMapServerImageryProvider.js';
@@ -1092,6 +1092,7 @@ export { default as _shaderssignNotZero } from './Source/Shaders/Builtin/Functio
1092
1092
  export { default as _shaderssphericalHarmonics } from './Source/Shaders/Builtin/Functions/sphericalHarmonics.js';
1093
1093
  export { default as _shaderssrgbToLinear } from './Source/Shaders/Builtin/Functions/srgbToLinear.js';
1094
1094
  export { default as _shaderstangentToEyeSpaceMatrix } from './Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js';
1095
+ export { default as _shaderstextureCube } from './Source/Shaders/Builtin/Functions/textureCube.js';
1095
1096
  export { default as _shaderstransformPlane } from './Source/Shaders/Builtin/Functions/transformPlane.js';
1096
1097
  export { default as _shaderstranslateRelativeToEye } from './Source/Shaders/Builtin/Functions/translateRelativeToEye.js';
1097
1098
  export { default as _shaderstranslucentPhong } from './Source/Shaders/Builtin/Functions/translucentPhong.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cesium/engine",
3
- "version": "1.1.0",
3
+ "version": "2.0.0",
4
4
  "description": "CesiumJS is a JavaScript library for creating 3D globes and 2D maps in a web browser without a plugin.",
5
5
  "keywords": [
6
6
  "3D",
@@ -1,242 +0,0 @@
1
- import defined from "../Core/defined.js";
2
- import DeveloperError from "../Core/DeveloperError.js";
3
-
4
- /**
5
- * A function to port GLSL shaders from GLSL ES 1.00 to GLSL ES 3.00
6
- *
7
- * This function is nowhere near comprehensive or complete. It just
8
- * handles some common cases.
9
- *
10
- * Note that this function requires the presence of the
11
- * "#define OUTPUT_DECLARATION" line that is appended
12
- * by ShaderSource.
13
- *
14
- * @private
15
- */
16
- function modernizeShader(source, isFragmentShader) {
17
- const outputDeclarationRegex = /#define OUTPUT_DECLARATION/;
18
- const splitSource = source.split("\n");
19
-
20
- if (/#version 300 es/g.test(source)) {
21
- return source;
22
- }
23
-
24
- let outputDeclarationLine = -1;
25
- let i, line;
26
- for (i = 0; i < splitSource.length; ++i) {
27
- line = splitSource[i];
28
- if (outputDeclarationRegex.test(line)) {
29
- outputDeclarationLine = i;
30
- break;
31
- }
32
- }
33
-
34
- if (outputDeclarationLine === -1) {
35
- throw new DeveloperError("Could not find a #define OUTPUT_DECLARATION!");
36
- }
37
-
38
- const outputVariables = [];
39
-
40
- for (i = 0; i < 10; i++) {
41
- const fragDataString = `gl_FragData\\[${i}\\]`;
42
- const newOutput = `czm_out${i}`;
43
- const regex = new RegExp(fragDataString, "g");
44
- if (regex.test(source)) {
45
- setAdd(newOutput, outputVariables);
46
- replaceInSourceString(fragDataString, newOutput, splitSource);
47
- splitSource.splice(
48
- outputDeclarationLine,
49
- 0,
50
- `layout(location = ${i}) out vec4 ${newOutput};`
51
- );
52
- outputDeclarationLine += 1;
53
- }
54
- }
55
-
56
- const czmFragColor = "czm_fragColor";
57
- if (findInSource("gl_FragColor", splitSource)) {
58
- setAdd(czmFragColor, outputVariables);
59
- replaceInSourceString("gl_FragColor", czmFragColor, splitSource);
60
- splitSource.splice(
61
- outputDeclarationLine,
62
- 0,
63
- "layout(location = 0) out vec4 czm_fragColor;"
64
- );
65
- outputDeclarationLine += 1;
66
- }
67
-
68
- const variableMap = getVariablePreprocessorBranch(
69
- outputVariables,
70
- splitSource
71
- );
72
- const lineAdds = {};
73
- for (i = 0; i < splitSource.length; i++) {
74
- line = splitSource[i];
75
- for (const variable in variableMap) {
76
- if (variableMap.hasOwnProperty(variable)) {
77
- const matchVar = new RegExp(
78
- `(layout)[^]+(out)[^]+(${variable})[^]+`,
79
- "g"
80
- );
81
- if (matchVar.test(line)) {
82
- lineAdds[line] = variable;
83
- }
84
- }
85
- }
86
- }
87
-
88
- for (const layoutDeclaration in lineAdds) {
89
- if (lineAdds.hasOwnProperty(layoutDeclaration)) {
90
- const variableName = lineAdds[layoutDeclaration];
91
- let lineNumber = splitSource.indexOf(layoutDeclaration);
92
- const entry = variableMap[variableName];
93
- const depth = entry.length;
94
- for (let d = 0; d < depth; d++) {
95
- splitSource.splice(lineNumber, 0, entry[d]);
96
- }
97
- lineNumber += depth + 1;
98
- for (let d = depth - 1; d >= 0; d--) {
99
- splitSource.splice(lineNumber, 0, `#endif //${entry[d]}`);
100
- }
101
- }
102
- }
103
-
104
- const webgl2UniqueID = "WEBGL_2";
105
- const webgl2DefineMacro = `#define ${webgl2UniqueID}`;
106
- const versionThree = "#version 300 es";
107
- let foundVersion = false;
108
- for (i = 0; i < splitSource.length; i++) {
109
- if (/#version/.test(splitSource[i])) {
110
- splitSource[i] = versionThree;
111
- foundVersion = true;
112
- break;
113
- }
114
- }
115
-
116
- if (!foundVersion) {
117
- splitSource.splice(0, 0, versionThree);
118
- }
119
-
120
- splitSource.splice(1, 0, webgl2DefineMacro);
121
-
122
- removeExtension("EXT_draw_buffers", webgl2UniqueID, splitSource);
123
- removeExtension("EXT_frag_depth", webgl2UniqueID, splitSource);
124
- removeExtension("OES_standard_derivatives", webgl2UniqueID, splitSource);
125
-
126
- replaceInSourceString("texture2D", "texture", splitSource);
127
- replaceInSourceString("texture3D", "texture", splitSource);
128
- replaceInSourceString("textureCube", "texture", splitSource);
129
- replaceInSourceString("gl_FragDepthEXT", "gl_FragDepth", splitSource);
130
-
131
- if (isFragmentShader) {
132
- replaceInSourceString("varying", "in", splitSource);
133
- } else {
134
- replaceInSourceString("attribute", "in", splitSource);
135
- replaceInSourceString("varying", "out", splitSource);
136
- }
137
-
138
- return compileSource(splitSource);
139
- }
140
-
141
- // Note that this fails if your string looks like
142
- // searchString[singleCharacter]searchString
143
- function replaceInSourceString(str, replacement, splitSource) {
144
- const regexStr = `(^|[^\\w])(${str})($|[^\\w])`;
145
- const regex = new RegExp(regexStr, "g");
146
-
147
- const splitSourceLength = splitSource.length;
148
- for (let i = 0; i < splitSourceLength; ++i) {
149
- const line = splitSource[i];
150
- splitSource[i] = line.replace(regex, `$1${replacement}$3`);
151
- }
152
- }
153
-
154
- function replaceInSourceRegex(regex, replacement, splitSource) {
155
- const splitSourceLength = splitSource.length;
156
- for (let i = 0; i < splitSourceLength; ++i) {
157
- const line = splitSource[i];
158
- splitSource[i] = line.replace(regex, replacement);
159
- }
160
- }
161
-
162
- function findInSource(str, splitSource) {
163
- const regexStr = `(^|[^\\w])(${str})($|[^\\w])`;
164
- const regex = new RegExp(regexStr, "g");
165
-
166
- const splitSourceLength = splitSource.length;
167
- for (let i = 0; i < splitSourceLength; ++i) {
168
- const line = splitSource[i];
169
- if (regex.test(line)) {
170
- return true;
171
- }
172
- }
173
- return false;
174
- }
175
-
176
- function compileSource(splitSource) {
177
- let wholeSource = "";
178
-
179
- const splitSourceLength = splitSource.length;
180
- for (let i = 0; i < splitSourceLength; ++i) {
181
- wholeSource += `${splitSource[i]}\n`;
182
- }
183
- return wholeSource;
184
- }
185
-
186
- function setAdd(variable, set) {
187
- if (set.indexOf(variable) === -1) {
188
- set.push(variable);
189
- }
190
- }
191
-
192
- function getVariablePreprocessorBranch(layoutVariables, splitSource) {
193
- const variableMap = {};
194
-
195
- const numLayoutVariables = layoutVariables.length;
196
-
197
- const stack = [];
198
- for (let i = 0; i < splitSource.length; ++i) {
199
- const line = splitSource[i];
200
- const hasIF = /(#ifdef|#if)/g.test(line);
201
- const hasELSE = /#else/g.test(line);
202
- const hasENDIF = /#endif/g.test(line);
203
-
204
- if (hasIF) {
205
- stack.push(line);
206
- } else if (hasELSE) {
207
- const top = stack[stack.length - 1];
208
- let op = top.replace("ifdef", "ifndef");
209
- if (/if/g.test(op)) {
210
- op = op.replace(/(#if\s+)(\S*)([^]*)/, "$1!($2)$3");
211
- }
212
- stack.pop();
213
- stack.push(op);
214
- } else if (hasENDIF) {
215
- stack.pop();
216
- } else if (!/layout/g.test(line)) {
217
- for (let varIndex = 0; varIndex < numLayoutVariables; ++varIndex) {
218
- const varName = layoutVariables[varIndex];
219
- if (line.indexOf(varName) !== -1) {
220
- if (!defined(variableMap[varName])) {
221
- variableMap[varName] = stack.slice();
222
- } else {
223
- variableMap[varName] = variableMap[varName].filter(function (x) {
224
- return stack.indexOf(x) >= 0;
225
- });
226
- }
227
- }
228
- }
229
- }
230
- }
231
-
232
- return variableMap;
233
- }
234
-
235
- function removeExtension(name, webgl2UniqueID, splitSource) {
236
- const regex = `#extension\\s+GL_${name}\\s+:\\s+[a-zA-Z0-9]+\\s*$`;
237
- replaceInSourceRegex(new RegExp(regex, "g"), "", splitSource);
238
-
239
- // replace any possible directive #ifdef (GL_EXT_extension) with WEBGL_2 unique directive
240
- replaceInSourceString(`GL_${name}`, webgl2UniqueID, splitSource);
241
- }
242
- export default modernizeShader;