@cesium/engine 1.1.0 → 2.1.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 (1063) hide show
  1. package/Build/Workers/{ArcType-ce2e50ab.js → ArcType-2d9abbbc.js} +4 -4
  2. package/Build/Workers/{AttributeCompression-b646d393.js → AttributeCompression-8a5a065e.js} +24 -24
  3. package/Build/Workers/{AxisAlignedBoundingBox-a4321399.js → AxisAlignedBoundingBox-a6f9f0e5.js} +3 -3
  4. package/Build/Workers/{BoundingRectangle-80d8801f.js → BoundingRectangle-b0a68595.js} +18 -18
  5. package/Build/Workers/{BoxGeometry-33c10a4f.js → BoxGeometry-baedd794.js} +9 -9
  6. package/Build/Workers/{Check-666ab1a0.js → Check-6ede7e26.js} +22 -22
  7. package/Build/Workers/{Color-1bf9a6e0.js → Color-f85df1be.js} +59 -59
  8. package/Build/Workers/{ComponentDatatype-f7b11d02.js → ComponentDatatype-cf1fa08e.js} +16 -16
  9. package/Build/Workers/{CoplanarPolygonGeometryLibrary-5c5b981b.js → CoplanarPolygonGeometryLibrary-30516950.js} +1 -1
  10. package/Build/Workers/{CorridorGeometryLibrary-7cbae7a0.js → CorridorGeometryLibrary-5d5d3b3a.js} +1 -1
  11. package/Build/Workers/{CylinderGeometry-42740df0.js → CylinderGeometry-d899ae26.js} +12 -12
  12. package/Build/Workers/{CylinderGeometryLibrary-372c07d8.js → CylinderGeometryLibrary-135b0858.js} +1 -1
  13. package/Build/Workers/{EllipseGeometry-49a3ac21.js → EllipseGeometry-a49f8449.js} +20 -20
  14. package/Build/Workers/{EllipseGeometryLibrary-b891b2f8.js → EllipseGeometryLibrary-cba7edde.js} +1 -1
  15. package/Build/Workers/{EllipseOutlineGeometry-fbd72e07.js → EllipseOutlineGeometry-8095c8cb.js} +15 -15
  16. package/Build/Workers/{EllipsoidGeodesic-98c62a56.js → EllipsoidGeodesic-dcff5cbd.js} +6 -6
  17. package/Build/Workers/{EllipsoidGeometry-a351dba8.js → EllipsoidGeometry-ed93f571.js} +14 -14
  18. package/Build/Workers/{EllipsoidOutlineGeometry-3e8779bf.js → EllipsoidOutlineGeometry-e4854854.js} +15 -15
  19. package/Build/Workers/{EllipsoidRhumbLine-19756602.js → EllipsoidRhumbLine-b672d507.js} +9 -9
  20. package/Build/Workers/{EllipsoidTangentPlane-cfb50678.js → EllipsoidTangentPlane-7ae1aa9a.js} +1 -1
  21. package/Build/Workers/{EncodedCartesian3-81f70735.js → EncodedCartesian3-e8bbca36.js} +6 -6
  22. package/Build/Workers/{FrustumGeometry-c5754412.js → FrustumGeometry-b62db3e3.js} +108 -108
  23. package/Build/Workers/{GeometryAttribute-0bfd05e8.js → GeometryAttribute-780af4fa.js} +20 -20
  24. package/Build/Workers/{GeometryAttributes-f06a2792.js → GeometryAttributes-ad136444.js} +1 -1
  25. package/Build/Workers/{GeometryInstance-451dc1cd.js → GeometryInstance-3fb607b7.js} +6 -6
  26. package/Build/Workers/{GeometryPipeline-0166905d.js → GeometryPipeline-36b61c99.js} +22 -22
  27. package/Build/Workers/{IndexDatatype-a55ceaa1.js → IndexDatatype-b8f3e09d.js} +13 -13
  28. package/Build/Workers/{IntersectionTests-a93d3de9.js → IntersectionTests-e889fcf0.js} +37 -37
  29. package/Build/Workers/{Math-2dbd6b93.js → Math-dad82b4d.js} +137 -137
  30. package/Build/Workers/{Matrix2-13178034.js → Matrix2-1e403d0e.js} +256 -256
  31. package/Build/Workers/{Matrix3-315394f6.js → Matrix3-fa806b97.js} +150 -150
  32. package/Build/Workers/{OrientedBoundingBox-b450cb61.js → OrientedBoundingBox-43478ac8.js} +15 -15
  33. package/Build/Workers/{Plane-900aa728.js → Plane-c27e1ac6.js} +5 -5
  34. package/Build/Workers/{PolygonGeometryLibrary-f918ac26.js → PolygonGeometryLibrary-38a98276.js} +6 -6
  35. package/Build/Workers/{PolygonPipeline-f59a8f0a.js → PolygonPipeline-d31ff61c.js} +14 -14
  36. package/Build/Workers/{PolylinePipeline-d8e6bd9b.js → PolylinePipeline-30e4cec9.js} +16 -16
  37. package/Build/Workers/{PolylineVolumeGeometryLibrary-125d2edf.js → PolylineVolumeGeometryLibrary-90551d26.js} +7 -7
  38. package/Build/Workers/{PrimitivePipeline-0d7b5ed4.js → PrimitivePipeline-558d9cb0.js} +6 -6
  39. package/Build/Workers/{RectangleGeometryLibrary-0768db63.js → RectangleGeometryLibrary-815c68df.js} +1 -1
  40. package/Build/Workers/{RuntimeError-06c93819.js → RuntimeError-ef395448.js} +5 -5
  41. package/Build/Workers/{TerrainEncoding-06470d7f.js → TerrainEncoding-341ead52.js} +30 -30
  42. package/Build/Workers/{Transforms-26539bce.js → Transforms-9e9df299.js} +541 -524
  43. package/Build/Workers/{VertexFormat-6b480673.js → VertexFormat-030f11ff.js} +14 -14
  44. package/Build/Workers/{WallGeometryLibrary-6167b0fc.js → WallGeometryLibrary-ccf90976.js} +1 -1
  45. package/Build/Workers/{WebGLConstants-a8cc3e8c.js → WebGLConstants-0b1ce7ba.js} +1 -1
  46. package/Build/Workers/{WebMercatorProjection-13a90d41.js → WebMercatorProjection-76a3fcc0.js} +6 -6
  47. package/Build/Workers/{arrayRemoveDuplicates-c2038105.js → arrayRemoveDuplicates-fac118a8.js} +5 -5
  48. package/Build/Workers/cesiumWorkerBootstrapper.js +70 -4
  49. package/Build/Workers/{combine-ca22a614.js → combine-d9581036.js} +5 -5
  50. package/Build/Workers/combineGeometry.js +1 -1
  51. package/Build/Workers/createBoxGeometry.js +1 -1
  52. package/Build/Workers/createBoxOutlineGeometry.js +9 -9
  53. package/Build/Workers/createCircleGeometry.js +13 -13
  54. package/Build/Workers/createCircleOutlineGeometry.js +13 -13
  55. package/Build/Workers/createCoplanarPolygonGeometry.js +11 -11
  56. package/Build/Workers/createCoplanarPolygonOutlineGeometry.js +9 -9
  57. package/Build/Workers/createCorridorGeometry.js +14 -14
  58. package/Build/Workers/createCorridorOutlineGeometry.js +12 -12
  59. package/Build/Workers/createCylinderGeometry.js +1 -1
  60. package/Build/Workers/createCylinderOutlineGeometry.js +13 -13
  61. package/Build/Workers/createEllipseGeometry.js +1 -1
  62. package/Build/Workers/createEllipseOutlineGeometry.js +1 -1
  63. package/Build/Workers/createEllipsoidGeometry.js +1 -1
  64. package/Build/Workers/createEllipsoidOutlineGeometry.js +1 -1
  65. package/Build/Workers/createFrustumGeometry.js +1 -1
  66. package/Build/Workers/createFrustumOutlineGeometry.js +8 -8
  67. package/Build/Workers/createGeometry.js +1 -1
  68. package/Build/Workers/createGroundPolylineGeometry.js +33 -33
  69. package/Build/Workers/createPlaneGeometry.js +8 -8
  70. package/Build/Workers/createPlaneOutlineGeometry.js +6 -6
  71. package/Build/Workers/createPolygonGeometry.js +25 -25
  72. package/Build/Workers/createPolygonOutlineGeometry.js +17 -17
  73. package/Build/Workers/createPolylineGeometry.js +11 -11
  74. package/Build/Workers/createPolylineVolumeGeometry.js +9 -9
  75. package/Build/Workers/createPolylineVolumeOutlineGeometry.js +9 -9
  76. package/Build/Workers/createRectangleGeometry.js +16 -16
  77. package/Build/Workers/createRectangleOutlineGeometry.js +12 -12
  78. package/Build/Workers/createSimplePolylineGeometry.js +10 -10
  79. package/Build/Workers/createSphereGeometry.js +11 -11
  80. package/Build/Workers/createSphereOutlineGeometry.js +12 -12
  81. package/Build/Workers/createTaskProcessorWorker.js +2 -2
  82. package/Build/Workers/createVectorTileClampedPolylines.js +1 -1
  83. package/Build/Workers/createVectorTileGeometries.js +8 -8
  84. package/Build/Workers/createVectorTilePoints.js +1 -1
  85. package/Build/Workers/createVectorTilePolygons.js +1 -1
  86. package/Build/Workers/createVectorTilePolylines.js +1 -1
  87. package/Build/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +1 -1
  88. package/Build/Workers/createVerticesFromHeightmap.js +23 -21
  89. package/Build/Workers/createVerticesFromQuantizedTerrainMesh.js +24 -24
  90. package/Build/Workers/createWallGeometry.js +14 -14
  91. package/Build/Workers/createWallOutlineGeometry.js +14 -14
  92. package/Build/Workers/decodeDraco.js +10 -2
  93. package/Build/Workers/decodeGoogleEarthEnterprisePacket.js +15 -15
  94. package/Build/Workers/decodeI3S.js +1 -1
  95. package/Build/Workers/{defaultValue-0a909f67.js → defaultValue-fe22d8c0.js} +2 -2
  96. package/Build/Workers/package.js +1 -1
  97. package/Build/Workers/transcodeKTX2.js +46 -26
  98. package/Build/Workers/transferTypedArrayTest.js +1 -1
  99. package/Build/Workers/upsampleQuantizedTerrainMesh.js +24 -24
  100. package/README.md +14 -16
  101. package/Source/Core/ApproximateTerrainHeights.js +3 -3
  102. package/Source/Core/ArcGISTiledElevationTerrainProvider.js +20 -20
  103. package/Source/Core/ArcType.js +4 -4
  104. package/Source/Core/ArticulationStageType.js +1 -1
  105. package/Source/Core/AssociativeArray.js +7 -7
  106. package/Source/Core/AttributeCompression.js +12 -12
  107. package/Source/Core/AxisAlignedBoundingBox.js +2 -2
  108. package/Source/Core/BingMapsGeocoderService.js +6 -6
  109. package/Source/Core/BoundingRectangle.js +17 -17
  110. package/Source/Core/BoundingSphere.js +25 -25
  111. package/Source/Core/BoxGeometry.js +8 -8
  112. package/Source/Core/BoxOutlineGeometry.js +8 -8
  113. package/Source/Core/Cartesian2.js +38 -38
  114. package/Source/Core/Cartesian3.js +50 -50
  115. package/Source/Core/Cartesian4.js +44 -44
  116. package/Source/Core/Cartographic.js +19 -19
  117. package/Source/Core/CartographicGeocoderService.js +1 -1
  118. package/Source/Core/CatmullRomSpline.js +10 -10
  119. package/Source/Core/CesiumTerrainProvider.js +33 -33
  120. package/Source/Core/Check.js +17 -17
  121. package/Source/Core/CircleGeometry.js +12 -12
  122. package/Source/Core/CircleOutlineGeometry.js +12 -12
  123. package/Source/Core/Clock.js +7 -7
  124. package/Source/Core/ClockRange.js +4 -4
  125. package/Source/Core/ClockStep.js +4 -4
  126. package/Source/Core/Color.js +58 -58
  127. package/Source/Core/ColorGeometryInstanceAttribute.js +7 -7
  128. package/Source/Core/ComponentDatatype.js +15 -15
  129. package/Source/Core/CompressedTextureBuffer.js +7 -7
  130. package/Source/Core/ConstantSpline.js +9 -9
  131. package/Source/Core/CoplanarPolygonGeometry.js +10 -10
  132. package/Source/Core/CoplanarPolygonOutlineGeometry.js +8 -8
  133. package/Source/Core/CornerType.js +4 -4
  134. package/Source/Core/CorridorGeometry.js +13 -13
  135. package/Source/Core/CorridorOutlineGeometry.js +11 -11
  136. package/Source/Core/Credit.js +7 -7
  137. package/Source/Core/CubicRealPolynomial.js +10 -10
  138. package/Source/Core/CullingVolume.js +7 -7
  139. package/Source/Core/CustomHeightmapTerrainProvider.js +28 -28
  140. package/Source/Core/CylinderGeometry.js +11 -11
  141. package/Source/Core/CylinderOutlineGeometry.js +12 -12
  142. package/Source/Core/DefaultProxy.js +3 -3
  143. package/Source/Core/DeveloperError.js +4 -4
  144. package/Source/Core/DistanceDisplayCondition.js +12 -12
  145. package/Source/Core/DistanceDisplayConditionGeometryInstanceAttribute.js +5 -5
  146. package/Source/Core/DoubleEndedPriorityQueue.js +5 -5
  147. package/Source/Core/EarthOrientationParameters.js +6 -6
  148. package/Source/Core/EarthOrientationParametersSample.js +10 -10
  149. package/Source/Core/EasingFunction.js +2 -2
  150. package/Source/Core/EllipseGeometry.js +19 -19
  151. package/Source/Core/EllipseOutlineGeometry.js +14 -14
  152. package/Source/Core/Ellipsoid.js +20 -20
  153. package/Source/Core/EllipsoidGeodesic.js +5 -5
  154. package/Source/Core/EllipsoidGeometry.js +13 -13
  155. package/Source/Core/EllipsoidOutlineGeometry.js +14 -14
  156. package/Source/Core/EllipsoidRhumbLine.js +8 -8
  157. package/Source/Core/EllipsoidTerrainProvider.js +18 -18
  158. package/Source/Core/EllipsoidalOccluder.js +9 -9
  159. package/Source/Core/EncodedCartesian3.js +5 -5
  160. package/Source/Core/Event.js +4 -4
  161. package/Source/Core/EventHelper.js +1 -1
  162. package/Source/Core/ExtrapolationType.js +4 -4
  163. package/Source/Core/FeatureDetection.js +26 -8
  164. package/Source/Core/FrustumGeometry.js +7 -7
  165. package/Source/Core/FrustumOutlineGeometry.js +7 -7
  166. package/Source/Core/Fullscreen.js +8 -8
  167. package/Source/Core/GeocodeType.js +3 -3
  168. package/Source/Core/GeocoderService.js +3 -3
  169. package/Source/Core/GeographicTilingScheme.js +16 -16
  170. package/Source/Core/Geometry.js +5 -5
  171. package/Source/Core/GeometryAttribute.js +6 -6
  172. package/Source/Core/GeometryInstance.js +5 -5
  173. package/Source/Core/GeometryInstanceAttribute.js +7 -7
  174. package/Source/Core/GeometryPipeline.js +11 -11
  175. package/Source/Core/GoogleEarthEnterpriseMetadata.js +22 -22
  176. package/Source/Core/GoogleEarthEnterpriseTerrainData.js +29 -29
  177. package/Source/Core/GoogleEarthEnterpriseTerrainProvider.js +21 -21
  178. package/Source/Core/GoogleEarthEnterpriseTileInformation.js +14 -14
  179. package/Source/Core/GregorianDate.js +16 -16
  180. package/Source/Core/GroundPolylineGeometry.js +13 -13
  181. package/Source/Core/HeadingPitchRange.js +6 -6
  182. package/Source/Core/HeadingPitchRoll.js +18 -18
  183. package/Source/Core/Heap.js +7 -7
  184. package/Source/Core/HeightmapEncoding.js +3 -3
  185. package/Source/Core/HeightmapTerrainData.js +44 -44
  186. package/Source/Core/HeightmapTessellator.js +16 -16
  187. package/Source/Core/HermitePolynomialApproximation.js +17 -17
  188. package/Source/Core/HermiteSpline.js +17 -17
  189. package/Source/Core/HilbertOrder.js +7 -7
  190. package/Source/Core/Iau2006XysData.js +13 -13
  191. package/Source/Core/Iau2006XysSample.js +6 -6
  192. package/Source/Core/IauOrientationParameters.js +4 -4
  193. package/Source/Core/IndexDatatype.js +12 -12
  194. package/Source/Core/InterpolationAlgorithm.js +17 -17
  195. package/Source/Core/InterpolationType.js +1 -1
  196. package/Source/Core/Intersect.js +4 -4
  197. package/Source/Core/IntersectionTests.js +5 -5
  198. package/Source/Core/Intersections2D.js +23 -23
  199. package/Source/Core/Interval.js +4 -4
  200. package/Source/Core/Ion.js +3 -4
  201. package/Source/Core/IonGeocoderService.js +4 -4
  202. package/Source/Core/IonResource.js +6 -6
  203. package/Source/Core/JulianDate.js +27 -27
  204. package/Source/Core/KeyboardEventModifier.js +4 -4
  205. package/Source/Core/LagrangePolynomialApproximation.js +8 -8
  206. package/Source/Core/LeapSecond.js +2 -2
  207. package/Source/Core/LinearApproximation.js +8 -8
  208. package/Source/Core/LinearSpline.js +13 -13
  209. package/Source/Core/ManagedArray.js +8 -8
  210. package/Source/Core/Math.js +136 -136
  211. package/Source/Core/Matrix2.js +44 -44
  212. package/Source/Core/Matrix3.js +59 -59
  213. package/Source/Core/Matrix4.js +91 -91
  214. package/Source/Core/MorphWeightSpline.js +14 -14
  215. package/Source/Core/MortonOrder.js +21 -21
  216. package/Source/Core/NearFarScalar.js +16 -16
  217. package/Source/Core/Occluder.js +5 -5
  218. package/Source/Core/OffsetGeometryInstanceAttribute.js +5 -5
  219. package/Source/Core/OpenCageGeocoderService.js +18 -18
  220. package/Source/Core/OrientedBoundingBox.js +14 -14
  221. package/Source/Core/OrthographicFrustum.js +23 -23
  222. package/Source/Core/OrthographicOffCenterFrustum.js +21 -21
  223. package/Source/Core/Packable.js +7 -7
  224. package/Source/Core/PackableForInterpolation.js +11 -11
  225. package/Source/Core/PeliasGeocoderService.js +2 -2
  226. package/Source/Core/PerspectiveFrustum.js +28 -28
  227. package/Source/Core/PerspectiveOffCenterFrustum.js +21 -21
  228. package/Source/Core/PinBuilder.js +9 -9
  229. package/Source/Core/PixelFormat.js +43 -23
  230. package/Source/Core/Plane.js +4 -4
  231. package/Source/Core/PlaneGeometry.js +7 -7
  232. package/Source/Core/PlaneOutlineGeometry.js +5 -5
  233. package/Source/Core/PolygonGeometry.js +24 -24
  234. package/Source/Core/PolygonGeometryLibrary.js +4 -4
  235. package/Source/Core/PolygonOutlineGeometry.js +16 -16
  236. package/Source/Core/PolygonPipeline.js +10 -10
  237. package/Source/Core/PolylineGeometry.js +10 -10
  238. package/Source/Core/PolylinePipeline.js +15 -15
  239. package/Source/Core/PolylineVolumeGeometry.js +8 -8
  240. package/Source/Core/PolylineVolumeOutlineGeometry.js +8 -8
  241. package/Source/Core/PrimitiveType.js +8 -8
  242. package/Source/Core/Proxy.js +2 -2
  243. package/Source/Core/QuadraticRealPolynomial.js +8 -8
  244. package/Source/Core/QuantizedMeshTerrainData.js +37 -37
  245. package/Source/Core/QuarticRealPolynomial.js +12 -12
  246. package/Source/Core/Quaternion.js +42 -42
  247. package/Source/Core/QuaternionSpline.js +10 -10
  248. package/Source/Core/Queue.js +2 -2
  249. package/Source/Core/Ray.js +1 -1
  250. package/Source/Core/Rectangle.js +38 -38
  251. package/Source/Core/RectangleCollisionChecker.js +3 -3
  252. package/Source/Core/RectangleGeometry.js +15 -15
  253. package/Source/Core/RectangleOutlineGeometry.js +11 -11
  254. package/Source/Core/ReferenceFrame.js +3 -3
  255. package/Source/Core/Request.js +13 -13
  256. package/Source/Core/RequestErrorEvent.js +7 -7
  257. package/Source/Core/RequestScheduler.js +14 -14
  258. package/Source/Core/RequestState.js +7 -7
  259. package/Source/Core/RequestType.js +5 -5
  260. package/Source/Core/Resource.js +223 -223
  261. package/Source/Core/RuntimeError.js +4 -4
  262. package/Source/Core/S2Cell.js +15 -15
  263. package/Source/Core/ScreenSpaceEventHandler.js +7 -7
  264. package/Source/Core/ScreenSpaceEventType.js +16 -16
  265. package/Source/Core/ShowGeometryInstanceAttribute.js +4 -4
  266. package/Source/Core/SimplePolylineGeometry.js +9 -9
  267. package/Source/Core/SphereGeometry.js +10 -10
  268. package/Source/Core/SphereOutlineGeometry.js +11 -11
  269. package/Source/Core/Spherical.js +13 -13
  270. package/Source/Core/Spline.js +14 -14
  271. package/Source/Core/SteppedSpline.js +14 -14
  272. package/Source/Core/TaskProcessor.js +10 -10
  273. package/Source/Core/TerrainData.js +25 -25
  274. package/Source/Core/TerrainEncoding.js +14 -14
  275. package/Source/Core/TerrainExaggeration.js +3 -3
  276. package/Source/Core/TerrainMesh.js +18 -18
  277. package/Source/Core/TerrainProvider.js +23 -23
  278. package/Source/Core/TerrainQuantization.js +3 -3
  279. package/Source/Core/TileAvailability.js +16 -16
  280. package/Source/Core/TileProviderError.js +15 -15
  281. package/Source/Core/TilingScheme.js +13 -13
  282. package/Source/Core/TimeConstants.js +10 -10
  283. package/Source/Core/TimeInterval.js +23 -23
  284. package/Source/Core/TimeIntervalCollection.js +39 -39
  285. package/Source/Core/TimeStandard.js +3 -3
  286. package/Source/Core/Tipsify.js +10 -10
  287. package/Source/Core/Transforms.js +2 -2
  288. package/Source/Core/TranslationRotationScale.js +1 -1
  289. package/Source/Core/TridiagonalSystemSolver.js +3 -3
  290. package/Source/Core/TrustedServers.js +5 -5
  291. package/Source/Core/VRTheWorldTerrainProvider.js +20 -20
  292. package/Source/Core/VertexFormat.js +13 -13
  293. package/Source/Core/VideoSynchronizer.js +4 -4
  294. package/Source/Core/Visibility.js +4 -4
  295. package/Source/Core/VulkanConstants.js +1 -1
  296. package/Source/Core/WallGeometry.js +13 -13
  297. package/Source/Core/WallOutlineGeometry.js +13 -13
  298. package/Source/Core/WebGLConstants.js +1 -1
  299. package/Source/Core/WebMercatorProjection.js +5 -5
  300. package/Source/Core/WebMercatorTilingScheme.js +16 -16
  301. package/Source/Core/WindingOrder.js +3 -3
  302. package/Source/Core/WireframeIndexGenerator.js +3 -3
  303. package/Source/Core/arrayRemoveDuplicates.js +4 -4
  304. package/Source/Core/binarySearch.js +2 -2
  305. package/Source/Core/buildModuleUrl.js +4 -4
  306. package/Source/Core/clone.js +3 -3
  307. package/Source/Core/combine.js +4 -4
  308. package/Source/Core/createGuid.js +1 -1
  309. package/Source/Core/createWorldTerrain.js +3 -3
  310. package/Source/Core/defaultValue.js +1 -1
  311. package/Source/Core/defer.js +1 -1
  312. package/Source/Core/defined.js +1 -1
  313. package/Source/Core/deprecationWarning.js +2 -2
  314. package/Source/Core/destroyObject.js +2 -2
  315. package/Source/Core/formatError.js +1 -1
  316. package/Source/Core/getAbsoluteUri.js +3 -3
  317. package/Source/Core/getBaseUri.js +3 -3
  318. package/Source/Core/getExtensionFromUri.js +2 -2
  319. package/Source/Core/getFilenameFromUri.js +2 -2
  320. package/Source/Core/getImageFromTypedArray.js +2 -2
  321. package/Source/Core/getImagePixels.js +4 -3
  322. package/Source/Core/getJsonFromTypedArray.js +3 -3
  323. package/Source/Core/getStringFromTypedArray.js +3 -3
  324. package/Source/Core/getTimestamp.js +1 -1
  325. package/Source/Core/isBlobUri.js +2 -2
  326. package/Source/Core/isDataUri.js +2 -2
  327. package/Source/Core/isLeapYear.js +2 -2
  328. package/Source/Core/loadKTX2.js +8 -8
  329. package/Source/Core/mergeSort.js +1 -1
  330. package/Source/Core/objectToQuery.js +2 -2
  331. package/Source/Core/oneTimeWarning.js +2 -2
  332. package/Source/Core/parseResponseHeaders.js +2 -2
  333. package/Source/Core/pointInsideTriangle.js +1 -1
  334. package/Source/Core/queryToObject.js +2 -2
  335. package/Source/Core/sampleTerrain.js +12 -7
  336. package/Source/Core/sampleTerrainMostDetailed.js +1 -1
  337. package/Source/Core/scaleToGeodeticSurface.js +1 -1
  338. package/Source/Core/subdivideArray.js +1 -1
  339. package/Source/Core/writeTextToCanvas.js +10 -9
  340. package/Source/DataSources/BillboardGraphics.js +1 -1
  341. package/Source/DataSources/BillboardVisualizer.js +2 -2
  342. package/Source/DataSources/BoundingSphereState.js +1 -1
  343. package/Source/DataSources/BoxGraphics.js +1 -1
  344. package/Source/DataSources/CallbackProperty.js +8 -8
  345. package/Source/DataSources/Cesium3DTilesetGraphics.js +1 -1
  346. package/Source/DataSources/Cesium3DTilesetVisualizer.js +2 -2
  347. package/Source/DataSources/CheckerboardMaterialProperty.js +6 -6
  348. package/Source/DataSources/ColorMaterialProperty.js +5 -5
  349. package/Source/DataSources/CompositeEntityCollection.js +8 -8
  350. package/Source/DataSources/CompositeMaterialProperty.js +5 -5
  351. package/Source/DataSources/CompositePositionProperty.js +2 -2
  352. package/Source/DataSources/CompositeProperty.js +4 -4
  353. package/Source/DataSources/ConstantPositionProperty.js +4 -4
  354. package/Source/DataSources/ConstantProperty.js +5 -5
  355. package/Source/DataSources/CorridorGraphics.js +1 -1
  356. package/Source/DataSources/CustomDataSource.js +5 -5
  357. package/Source/DataSources/CylinderGraphics.js +1 -1
  358. package/Source/DataSources/CzmlDataSource.js +26 -26
  359. package/Source/DataSources/DataSource.js +4 -4
  360. package/Source/DataSources/DataSourceClock.js +2 -2
  361. package/Source/DataSources/DataSourceCollection.js +11 -11
  362. package/Source/DataSources/DataSourceDisplay.js +5 -5
  363. package/Source/DataSources/DynamicGeometryUpdater.js +1 -1
  364. package/Source/DataSources/EllipseGraphics.js +1 -1
  365. package/Source/DataSources/EllipsoidGeometryUpdater.js +2 -2
  366. package/Source/DataSources/EllipsoidGraphics.js +1 -1
  367. package/Source/DataSources/Entity.js +14 -14
  368. package/Source/DataSources/EntityCluster.js +16 -16
  369. package/Source/DataSources/EntityCollection.js +8 -8
  370. package/Source/DataSources/GeoJsonDataSource.js +27 -27
  371. package/Source/DataSources/GeometryUpdater.js +22 -22
  372. package/Source/DataSources/GeometryVisualizer.js +2 -2
  373. package/Source/DataSources/GpxDataSource.js +23 -23
  374. package/Source/DataSources/GridMaterialProperty.js +7 -7
  375. package/Source/DataSources/GroundGeometryUpdater.js +5 -5
  376. package/Source/DataSources/ImageMaterialProperty.js +8 -8
  377. package/Source/DataSources/KmlDataSource.js +32 -32
  378. package/Source/DataSources/KmlTour.js +7 -7
  379. package/Source/DataSources/KmlTourFlyTo.js +6 -6
  380. package/Source/DataSources/KmlTourWait.js +2 -2
  381. package/Source/DataSources/LabelGraphics.js +1 -1
  382. package/Source/DataSources/LabelVisualizer.js +2 -2
  383. package/Source/DataSources/MaterialProperty.js +5 -5
  384. package/Source/DataSources/ModelGraphics.js +3 -3
  385. package/Source/DataSources/ModelVisualizer.js +2 -2
  386. package/Source/DataSources/NodeTransformationProperty.js +3 -3
  387. package/Source/DataSources/PathGraphics.js +1 -1
  388. package/Source/DataSources/PathVisualizer.js +2 -2
  389. package/Source/DataSources/PlaneGraphics.js +1 -1
  390. package/Source/DataSources/PointGraphics.js +1 -1
  391. package/Source/DataSources/PointVisualizer.js +2 -2
  392. package/Source/DataSources/PolygonGraphics.js +3 -3
  393. package/Source/DataSources/PolylineArrowMaterialProperty.js +5 -5
  394. package/Source/DataSources/PolylineDashMaterialProperty.js +8 -8
  395. package/Source/DataSources/PolylineGeometryUpdater.js +13 -13
  396. package/Source/DataSources/PolylineGlowMaterialProperty.js +8 -8
  397. package/Source/DataSources/PolylineGraphics.js +2 -2
  398. package/Source/DataSources/PolylineOutlineMaterialProperty.js +7 -7
  399. package/Source/DataSources/PolylineVisualizer.js +2 -2
  400. package/Source/DataSources/PolylineVolumeGraphics.js +3 -3
  401. package/Source/DataSources/PositionProperty.js +2 -2
  402. package/Source/DataSources/PositionPropertyArray.js +2 -2
  403. package/Source/DataSources/Property.js +4 -4
  404. package/Source/DataSources/PropertyArray.js +2 -2
  405. package/Source/DataSources/PropertyBag.js +10 -10
  406. package/Source/DataSources/RectangleGraphics.js +1 -1
  407. package/Source/DataSources/ReferenceProperty.js +10 -10
  408. package/Source/DataSources/Rotation.js +14 -14
  409. package/Source/DataSources/SampledPositionProperty.js +11 -11
  410. package/Source/DataSources/SampledProperty.js +12 -12
  411. package/Source/DataSources/StripeMaterialProperty.js +8 -8
  412. package/Source/DataSources/StripeOrientation.js +3 -3
  413. package/Source/DataSources/TerrainOffsetProperty.js +1 -1
  414. package/Source/DataSources/TimeIntervalCollectionPositionProperty.js +3 -3
  415. package/Source/DataSources/TimeIntervalCollectionProperty.js +4 -4
  416. package/Source/DataSources/VelocityOrientationProperty.js +2 -2
  417. package/Source/DataSources/VelocityVectorProperty.js +4 -4
  418. package/Source/DataSources/Visualizer.js +2 -2
  419. package/Source/DataSources/WallGraphics.js +4 -4
  420. package/Source/DataSources/exportKml.js +9 -9
  421. package/Source/Renderer/AutomaticUniforms.js +3 -3
  422. package/Source/Renderer/Buffer.js +4 -4
  423. package/Source/Renderer/ClearCommand.js +3 -3
  424. package/Source/Renderer/ComputeCommand.js +3 -3
  425. package/Source/Renderer/Context.js +49 -59
  426. package/Source/Renderer/ContextLimits.js +22 -22
  427. package/Source/Renderer/CubeMapFace.js +11 -11
  428. package/Source/Renderer/DrawCommand.js +15 -15
  429. package/Source/Renderer/Framebuffer.js +4 -4
  430. package/Source/Renderer/FramebufferManager.js +9 -9
  431. package/Source/Renderer/MultisampleFramebuffer.js +1 -1
  432. package/Source/Renderer/PassState.js +2 -2
  433. package/Source/Renderer/PixelDatatype.js +1 -1
  434. package/Source/Renderer/RenderState.js +1 -1
  435. package/Source/Renderer/ShaderBuilder.js +37 -36
  436. package/Source/Renderer/ShaderCache.js +8 -8
  437. package/Source/Renderer/ShaderDestination.js +2 -2
  438. package/Source/Renderer/ShaderFunction.js +3 -3
  439. package/Source/Renderer/ShaderSource.js +38 -33
  440. package/Source/Renderer/ShaderStruct.js +4 -4
  441. package/Source/Renderer/Texture.js +18 -18
  442. package/Source/Renderer/TextureMagnificationFilter.js +4 -4
  443. package/Source/Renderer/TextureMinificationFilter.js +8 -8
  444. package/Source/Renderer/UniformState.js +14 -14
  445. package/Source/Renderer/VertexArray.js +2 -2
  446. package/Source/Renderer/createUniform.js +12 -12
  447. package/Source/Renderer/createUniformArray.js +12 -12
  448. package/Source/Renderer/demodernizeShader.js +76 -0
  449. package/Source/Renderer/freezeRenderState.js +2 -2
  450. package/Source/Renderer/loadCubeMap.js +3 -3
  451. package/Source/Scene/AlphaMode.js +4 -4
  452. package/Source/Scene/Appearance.js +14 -14
  453. package/Source/Scene/ArcGisMapServerImageryProvider.js +43 -43
  454. package/Source/Scene/AttributeType.js +11 -11
  455. package/Source/Scene/AutoExposure.js +11 -11
  456. package/Source/Scene/Axis.js +6 -6
  457. package/Source/Scene/B3dmParser.js +2 -2
  458. package/Source/Scene/BatchTable.js +18 -18
  459. package/Source/Scene/BatchTableHierarchy.js +22 -22
  460. package/Source/Scene/BatchTexture.js +14 -14
  461. package/Source/Scene/Billboard.js +17 -17
  462. package/Source/Scene/BillboardCollection.js +15 -15
  463. package/Source/Scene/BingMapsImageryProvider.js +41 -41
  464. package/Source/Scene/BingMapsStyle.js +11 -11
  465. package/Source/Scene/BlendEquation.js +6 -6
  466. package/Source/Scene/BlendFunction.js +16 -16
  467. package/Source/Scene/BlendOption.js +4 -4
  468. package/Source/Scene/BlendingState.js +4 -4
  469. package/Source/Scene/BufferLoader.js +5 -5
  470. package/Source/Scene/Camera.js +57 -57
  471. package/Source/Scene/CameraEventAggregator.js +26 -16
  472. package/Source/Scene/CameraEventType.js +6 -6
  473. package/Source/Scene/Cesium3DContentGroup.js +1 -1
  474. package/Source/Scene/Cesium3DTile.js +32 -26
  475. package/Source/Scene/Cesium3DTileBatchTable.js +29 -29
  476. package/Source/Scene/Cesium3DTileColorBlendMode.js +4 -4
  477. package/Source/Scene/Cesium3DTileContent.js +15 -15
  478. package/Source/Scene/Cesium3DTileContentType.js +17 -17
  479. package/Source/Scene/Cesium3DTileFeature.js +16 -16
  480. package/Source/Scene/Cesium3DTileOptimizationHint.js +1 -1
  481. package/Source/Scene/Cesium3DTileOptimizations.js +1 -1
  482. package/Source/Scene/Cesium3DTilePassState.js +1 -1
  483. package/Source/Scene/Cesium3DTilePointFeature.js +23 -23
  484. package/Source/Scene/Cesium3DTileRefine.js +3 -3
  485. package/Source/Scene/Cesium3DTileStyle.js +17 -17
  486. package/Source/Scene/Cesium3DTilesVoxelProvider.js +14 -2
  487. package/Source/Scene/Cesium3DTileset.js +117 -112
  488. package/Source/Scene/Cesium3DTilesetHeatmap.js +4 -4
  489. package/Source/Scene/Cesium3DTilesetMetadata.js +5 -5
  490. package/Source/Scene/CircleEmitter.js +2 -2
  491. package/Source/Scene/ClassificationPrimitive.js +28 -33
  492. package/Source/Scene/ClassificationType.js +4 -4
  493. package/Source/Scene/ClippingPlane.js +2 -2
  494. package/Source/Scene/ClippingPlaneCollection.js +17 -17
  495. package/Source/Scene/CloudCollection.js +16 -16
  496. package/Source/Scene/CloudType.js +3 -3
  497. package/Source/Scene/ColorBlendMode.js +1 -1
  498. package/Source/Scene/ConditionsExpression.js +11 -11
  499. package/Source/Scene/ConeEmitter.js +2 -2
  500. package/Source/Scene/ContentMetadata.js +16 -16
  501. package/Source/Scene/CreditDisplay.js +2 -2
  502. package/Source/Scene/CullFace.js +4 -4
  503. package/Source/Scene/CumulusCloud.js +3 -3
  504. package/Source/Scene/DebugAppearance.js +24 -26
  505. package/Source/Scene/DebugCameraPrimitive.js +7 -7
  506. package/Source/Scene/DebugInspector.js +5 -5
  507. package/Source/Scene/DebugModelMatrixPrimitive.js +9 -9
  508. package/Source/Scene/DepthFunction.js +9 -9
  509. package/Source/Scene/DepthPlane.js +0 -6
  510. package/Source/Scene/DerivedCommand.js +8 -22
  511. package/Source/Scene/DeviceOrientationCameraController.js +1 -1
  512. package/Source/Scene/DirectionalLight.js +3 -3
  513. package/Source/Scene/DiscardEmptyTileImagePolicy.js +2 -2
  514. package/Source/Scene/DiscardMissingTileImagePolicy.js +5 -5
  515. package/Source/Scene/DracoLoader.js +4 -4
  516. package/Source/Scene/EllipsoidPrimitive.js +8 -15
  517. package/Source/Scene/EllipsoidSurfaceAppearance.js +19 -19
  518. package/Source/Scene/Expression.js +14 -14
  519. package/Source/Scene/Fog.js +5 -5
  520. package/Source/Scene/FrameRateMonitor.js +14 -14
  521. package/Source/Scene/FrameState.js +36 -36
  522. package/Source/Scene/FrustumCommands.js +2 -2
  523. package/Source/Scene/GetFeatureInfoFormat.js +2 -2
  524. package/Source/Scene/Globe.js +34 -34
  525. package/Source/Scene/GlobeSurfaceTile.js +1 -1
  526. package/Source/Scene/GlobeSurfaceTileProvider.js +6 -6
  527. package/Source/Scene/GlobeTranslucency.js +3 -3
  528. package/Source/Scene/GlobeTranslucencyState.js +6 -6
  529. package/Source/Scene/GltfBufferViewLoader.js +7 -7
  530. package/Source/Scene/GltfDracoLoader.js +8 -8
  531. package/Source/Scene/GltfImageLoader.js +7 -7
  532. package/Source/Scene/GltfIndexBufferLoader.js +11 -11
  533. package/Source/Scene/GltfJsonLoader.js +7 -7
  534. package/Source/Scene/GltfLoader.js +24 -24
  535. package/Source/Scene/GltfLoaderUtil.js +11 -11
  536. package/Source/Scene/GltfPipeline/addBuffer.js +2 -2
  537. package/Source/Scene/GltfPipeline/addDefaults.js +2 -2
  538. package/Source/Scene/GltfPipeline/addExtensionsRequired.js +2 -2
  539. package/Source/Scene/GltfPipeline/addExtensionsUsed.js +2 -2
  540. package/Source/Scene/GltfPipeline/addPipelineExtras.js +2 -2
  541. package/Source/Scene/GltfPipeline/addToArray.js +2 -2
  542. package/Source/Scene/GltfPipeline/findAccessorMinMax.js +2 -2
  543. package/Source/Scene/GltfPipeline/forEachTextureInMaterial.js +3 -3
  544. package/Source/Scene/GltfPipeline/getAccessorByteStride.js +3 -3
  545. package/Source/Scene/GltfPipeline/getComponentReader.js +5 -5
  546. package/Source/Scene/GltfPipeline/moveTechniqueRenderStates.js +2 -2
  547. package/Source/Scene/GltfPipeline/moveTechniquesToExtension.js +2 -2
  548. package/Source/Scene/GltfPipeline/numberOfComponentsForType.js +2 -2
  549. package/Source/Scene/GltfPipeline/parseGlb.js +1 -1
  550. package/Source/Scene/GltfPipeline/readAccessorPacked.js +2 -2
  551. package/Source/Scene/GltfPipeline/removeExtension.js +2 -2
  552. package/Source/Scene/GltfPipeline/removeExtensionsRequired.js +2 -2
  553. package/Source/Scene/GltfPipeline/removeExtensionsUsed.js +2 -2
  554. package/Source/Scene/GltfPipeline/removePipelineExtras.js +2 -2
  555. package/Source/Scene/GltfPipeline/removeUnusedElements.js +2 -2
  556. package/Source/Scene/GltfPipeline/updateAccessorComponentTypes.js +2 -2
  557. package/Source/Scene/GltfPipeline/updateVersion.js +4 -4
  558. package/Source/Scene/GltfPipeline/usesExtension.js +3 -3
  559. package/Source/Scene/GltfStructuralMetadataLoader.js +9 -9
  560. package/Source/Scene/GltfTextureLoader.js +8 -8
  561. package/Source/Scene/GltfVertexBufferLoader.js +13 -13
  562. package/Source/Scene/GoogleEarthEnterpriseImageryProvider.js +33 -33
  563. package/Source/Scene/GoogleEarthEnterpriseMapsProvider.js +38 -38
  564. package/Source/Scene/GridImageryProvider.js +33 -33
  565. package/Source/Scene/GroundPolylinePrimitive.js +22 -24
  566. package/Source/Scene/GroundPrimitive.js +26 -26
  567. package/Source/Scene/GroupMetadata.js +17 -17
  568. package/Source/Scene/HeightReference.js +4 -4
  569. package/Source/Scene/HorizontalOrigin.js +4 -4
  570. package/Source/Scene/I3SDataProvider.js +13 -13
  571. package/Source/Scene/I3SFeature.js +1 -1
  572. package/Source/Scene/I3SField.js +5 -5
  573. package/Source/Scene/I3SGeometry.js +8 -8
  574. package/Source/Scene/I3SLayer.js +7 -7
  575. package/Source/Scene/I3SNode.js +6 -6
  576. package/Source/Scene/I3dmParser.js +2 -2
  577. package/Source/Scene/ImageBasedLighting.js +21 -17
  578. package/Source/Scene/ImageryLayer.js +39 -39
  579. package/Source/Scene/ImageryLayerCollection.js +11 -11
  580. package/Source/Scene/ImageryLayerFeatureInfo.js +6 -6
  581. package/Source/Scene/ImageryProvider.js +30 -30
  582. package/Source/Scene/Implicit3DTileContent.js +56 -56
  583. package/Source/Scene/ImplicitAvailabilityBitstream.js +10 -10
  584. package/Source/Scene/ImplicitMetadataView.js +16 -16
  585. package/Source/Scene/ImplicitSubdivisionScheme.js +4 -4
  586. package/Source/Scene/ImplicitSubtree.js +48 -48
  587. package/Source/Scene/ImplicitSubtreeCache.js +6 -6
  588. package/Source/Scene/ImplicitSubtreeMetadata.js +16 -16
  589. package/Source/Scene/ImplicitTileCoordinates.js +27 -27
  590. package/Source/Scene/ImplicitTileset.js +10 -10
  591. package/Source/Scene/InstanceAttributeSemantic.js +5 -5
  592. package/Source/Scene/InvertClassification.js +9 -10
  593. package/Source/Scene/IonImageryProvider.js +32 -32
  594. package/Source/Scene/IonWorldImageryStyle.js +4 -4
  595. package/Source/Scene/JsonMetadataTable.js +11 -11
  596. package/Source/Scene/KeyframeNode.js +1 -1
  597. package/Source/Scene/Label.js +14 -14
  598. package/Source/Scene/LabelCollection.js +12 -11
  599. package/Source/Scene/LabelStyle.js +4 -4
  600. package/Source/Scene/Light.js +1 -1
  601. package/Source/Scene/MapMode2D.js +3 -3
  602. package/Source/Scene/MapboxImageryProvider.js +37 -37
  603. package/Source/Scene/MapboxStyleImageryProvider.js +39 -39
  604. package/Source/Scene/Material.js +53 -53
  605. package/Source/Scene/MaterialAppearance.js +21 -21
  606. package/Source/Scene/Megatexture.js +17 -17
  607. package/Source/Scene/MetadataClass.js +16 -16
  608. package/Source/Scene/MetadataClassProperty.js +41 -41
  609. package/Source/Scene/MetadataComponentType.js +21 -21
  610. package/Source/Scene/MetadataEntity.js +31 -31
  611. package/Source/Scene/MetadataEnum.js +14 -14
  612. package/Source/Scene/MetadataEnumValue.js +10 -10
  613. package/Source/Scene/MetadataSchema.js +16 -16
  614. package/Source/Scene/MetadataSchemaLoader.js +6 -6
  615. package/Source/Scene/MetadataSemantic.js +24 -16
  616. package/Source/Scene/MetadataTable.js +24 -24
  617. package/Source/Scene/MetadataTableProperty.js +9 -9
  618. package/Source/Scene/MetadataType.js +15 -15
  619. package/Source/Scene/Model/B3dmLoader.js +13 -13
  620. package/Source/Scene/Model/ClassificationModelDrawCommand.js +3 -3
  621. package/Source/Scene/Model/CustomShader.js +19 -19
  622. package/Source/Scene/Model/CustomShaderMode.js +4 -4
  623. package/Source/Scene/Model/CustomShaderTranslucencyMode.js +4 -4
  624. package/Source/Scene/Model/FeatureIdPipelineStage.js +4 -4
  625. package/Source/Scene/Model/GeoJsonLoader.js +5 -5
  626. package/Source/Scene/Model/I3dmLoader.js +11 -11
  627. package/Source/Scene/Model/LightingModel.js +4 -4
  628. package/Source/Scene/Model/MaterialPipelineStage.js +6 -6
  629. package/Source/Scene/Model/MetadataPipelineStage.js +26 -27
  630. package/Source/Scene/Model/Model.js +85 -85
  631. package/Source/Scene/Model/ModelAlphaOptions.js +1 -1
  632. package/Source/Scene/Model/ModelAnimation.js +11 -11
  633. package/Source/Scene/Model/ModelAnimationChannel.js +2 -2
  634. package/Source/Scene/Model/ModelAnimationCollection.js +18 -18
  635. package/Source/Scene/Model/ModelArticulation.js +4 -4
  636. package/Source/Scene/Model/ModelArticulationStage.js +5 -5
  637. package/Source/Scene/Model/ModelDrawCommand.js +3 -3
  638. package/Source/Scene/Model/ModelFeature.js +12 -12
  639. package/Source/Scene/Model/ModelFeatureTable.js +5 -5
  640. package/Source/Scene/Model/ModelLightingOptions.js +1 -1
  641. package/Source/Scene/Model/ModelNode.js +3 -3
  642. package/Source/Scene/Model/ModelRenderResources.js +4 -4
  643. package/Source/Scene/Model/ModelRuntimeNode.js +7 -7
  644. package/Source/Scene/Model/ModelRuntimePrimitive.js +3 -3
  645. package/Source/Scene/Model/ModelSceneGraph.js +11 -11
  646. package/Source/Scene/Model/ModelSilhouettePipelineStage.js +1 -1
  647. package/Source/Scene/Model/ModelSkin.js +1 -1
  648. package/Source/Scene/Model/ModelStatistics.js +7 -7
  649. package/Source/Scene/Model/ModelType.js +8 -8
  650. package/Source/Scene/Model/ModelUtility.js +10 -10
  651. package/Source/Scene/Model/NodeRenderResources.js +7 -7
  652. package/Source/Scene/Model/PickingPipelineStage.js +1 -1
  653. package/Source/Scene/Model/PntsLoader.js +6 -6
  654. package/Source/Scene/Model/PointCloudStylingPipelineStage.js +1 -1
  655. package/Source/Scene/Model/PrimitiveOutlineGenerator.js +28 -28
  656. package/Source/Scene/Model/PrimitiveRenderResources.js +10 -10
  657. package/Source/Scene/Model/StyleCommandsNeeded.js +1 -1
  658. package/Source/Scene/Model/TextureManager.js +3 -3
  659. package/Source/Scene/Model/TextureUniform.js +6 -6
  660. package/Source/Scene/Model/UniformType.js +17 -17
  661. package/Source/Scene/Model/VaryingType.js +8 -8
  662. package/Source/Scene/ModelAnimationLoop.js +4 -4
  663. package/Source/Scene/ModelComponents.js +61 -61
  664. package/Source/Scene/Moon.js +8 -8
  665. package/Source/Scene/Multiple3DTileContent.js +14 -14
  666. package/Source/Scene/NeverTileDiscardPolicy.js +2 -2
  667. package/Source/Scene/OIT.js +211 -119
  668. package/Source/Scene/OctahedralProjectedCubeMap.js +28 -39
  669. package/Source/Scene/OpenStreetMapImageryProvider.js +6 -6
  670. package/Source/Scene/OrderedGroundPrimitiveCollection.js +9 -9
  671. package/Source/Scene/Particle.js +13 -13
  672. package/Source/Scene/ParticleBurst.js +8 -8
  673. package/Source/Scene/ParticleSystem.js +41 -36
  674. package/Source/Scene/PerInstanceColorAppearance.js +18 -18
  675. package/Source/Scene/PerformanceDisplay.js +2 -2
  676. package/Source/Scene/PickDepth.js +2 -2
  677. package/Source/Scene/PntsParser.js +1 -1
  678. package/Source/Scene/PointCloud.js +11 -11
  679. package/Source/Scene/PointCloudEyeDomeLighting.js +10 -5
  680. package/Source/Scene/PointCloudShading.js +20 -20
  681. package/Source/Scene/PointPrimitive.js +6 -6
  682. package/Source/Scene/PointPrimitiveCollection.js +11 -11
  683. package/Source/Scene/Polyline.js +9 -9
  684. package/Source/Scene/PolylineCollection.js +13 -18
  685. package/Source/Scene/PolylineColorAppearance.js +13 -13
  686. package/Source/Scene/PolylineMaterialAppearance.js +15 -16
  687. package/Source/Scene/PostProcessStage.js +28 -28
  688. package/Source/Scene/PostProcessStageCollection.js +10 -10
  689. package/Source/Scene/PostProcessStageComposite.js +13 -13
  690. package/Source/Scene/PostProcessStageLibrary.js +11 -11
  691. package/Source/Scene/PostProcessStageSampleMode.js +3 -3
  692. package/Source/Scene/PostProcessStageTextureCache.js +4 -4
  693. package/Source/Scene/Primitive.js +52 -61
  694. package/Source/Scene/PrimitiveCollection.js +20 -20
  695. package/Source/Scene/PrimitiveLoadPlan.js +6 -6
  696. package/Source/Scene/PropertyAttribute.js +9 -9
  697. package/Source/Scene/PropertyAttributeProperty.js +6 -6
  698. package/Source/Scene/PropertyTable.js +34 -34
  699. package/Source/Scene/PropertyTexture.js +9 -9
  700. package/Source/Scene/PropertyTextureProperty.js +8 -8
  701. package/Source/Scene/QuadtreePrimitive.js +9 -9
  702. package/Source/Scene/QuadtreeTile.js +11 -11
  703. package/Source/Scene/QuadtreeTileLoadState.js +1 -1
  704. package/Source/Scene/QuadtreeTileProvider.js +6 -6
  705. package/Source/Scene/ResourceCache.js +39 -39
  706. package/Source/Scene/ResourceCacheKey.js +42 -42
  707. package/Source/Scene/ResourceCacheStatistics.js +2 -2
  708. package/Source/Scene/ResourceLoader.js +5 -5
  709. package/Source/Scene/ResourceLoaderState.js +5 -5
  710. package/Source/Scene/SDFSettings.js +4 -4
  711. package/Source/Scene/Scene.js +88 -88
  712. package/Source/Scene/SceneMode.js +6 -6
  713. package/Source/Scene/SceneTransitioner.js +1 -1
  714. package/Source/Scene/ScreenSpaceCameraController.js +40 -22
  715. package/Source/Scene/ShadowMap.js +29 -29
  716. package/Source/Scene/ShadowMapShader.js +9 -9
  717. package/Source/Scene/ShadowMode.js +5 -5
  718. package/Source/Scene/ShadowVolumeAppearance.js +18 -18
  719. package/Source/Scene/SingleTileImageryProvider.js +31 -31
  720. package/Source/Scene/SkyAtmosphere.js +10 -10
  721. package/Source/Scene/SkyBox.js +6 -6
  722. package/Source/Scene/SpatialNode.js +103 -87
  723. package/Source/Scene/SphereEmitter.js +2 -2
  724. package/Source/Scene/SplitDirection.js +4 -4
  725. package/Source/Scene/Splitter.js +2 -2
  726. package/Source/Scene/StencilFunction.js +9 -9
  727. package/Source/Scene/StencilOperation.js +9 -9
  728. package/Source/Scene/StructuralMetadata.js +11 -11
  729. package/Source/Scene/StyleExpression.js +8 -8
  730. package/Source/Scene/Sun.js +3 -3
  731. package/Source/Scene/SunLight.js +3 -3
  732. package/Source/Scene/SupportedImageFormats.js +3 -3
  733. package/Source/Scene/TextureAtlas.js +21 -19
  734. package/Source/Scene/TileBoundingRegion.js +6 -6
  735. package/Source/Scene/TileBoundingS2Cell.js +6 -6
  736. package/Source/Scene/TileBoundingSphere.js +5 -5
  737. package/Source/Scene/TileBoundingVolume.js +2 -2
  738. package/Source/Scene/TileCoordinatesImageryProvider.js +30 -30
  739. package/Source/Scene/TileDiscardPolicy.js +2 -2
  740. package/Source/Scene/TileImagery.js +3 -3
  741. package/Source/Scene/TileMapServiceImageryProvider.js +9 -9
  742. package/Source/Scene/TileMetadata.js +16 -16
  743. package/Source/Scene/TileOrientedBoundingBox.js +2 -2
  744. package/Source/Scene/TileReplacementQueue.js +1 -1
  745. package/Source/Scene/TileSelectionResult.js +1 -1
  746. package/Source/Scene/TilesetMetadata.js +15 -15
  747. package/Source/Scene/TimeDynamicImagery.js +8 -8
  748. package/Source/Scene/TimeDynamicPointCloud.js +9 -9
  749. package/Source/Scene/Tonemapper.js +5 -5
  750. package/Source/Scene/TranslucentTileClassification.js +1 -1
  751. package/Source/Scene/TweenCollection.js +31 -31
  752. package/Source/Scene/UrlTemplateImageryProvider.js +47 -47
  753. package/Source/Scene/Vector3DTileBatch.js +7 -7
  754. package/Source/Scene/Vector3DTileClampedPolylines.js +9 -9
  755. package/Source/Scene/Vector3DTileGeometry.js +8 -8
  756. package/Source/Scene/Vector3DTilePoints.js +7 -7
  757. package/Source/Scene/Vector3DTilePolygons.js +10 -10
  758. package/Source/Scene/Vector3DTilePolylines.js +10 -10
  759. package/Source/Scene/Vector3DTilePrimitive.js +10 -10
  760. package/Source/Scene/VertexAttributeSemantic.js +15 -15
  761. package/Source/Scene/VerticalOrigin.js +5 -5
  762. package/Source/Scene/ViewportQuad.js +2 -2
  763. package/Source/Scene/VoxelBoxShape.js +27 -118
  764. package/Source/Scene/VoxelContent.js +3 -3
  765. package/Source/Scene/VoxelCylinderShape.js +21 -21
  766. package/Source/Scene/VoxelEllipsoidShape.js +28 -20
  767. package/Source/Scene/VoxelPrimitive.js +48 -48
  768. package/Source/Scene/VoxelProvider.js +13 -13
  769. package/Source/Scene/VoxelRenderResources.js +6 -3
  770. package/Source/Scene/VoxelShape.js +9 -9
  771. package/Source/Scene/VoxelShapeType.js +4 -4
  772. package/Source/Scene/VoxelTraversal.js +86 -144
  773. package/Source/Scene/WebMapServiceImageryProvider.js +49 -49
  774. package/Source/Scene/WebMapTileServiceImageryProvider.js +43 -43
  775. package/Source/Scene/buildVoxelDrawCommands.js +1 -0
  776. package/Source/Scene/computeFlyToLocationForRectangle.js +10 -1
  777. package/Source/Scene/createBillboardPointCallback.js +5 -5
  778. package/Source/Scene/createElevationBandMaterial.js +15 -20
  779. package/Source/Scene/createOsmBuildings.js +3 -3
  780. package/Source/Scene/createTangentSpaceDebugPrimitive.js +2 -2
  781. package/Source/Scene/createWorldImagery.js +1 -1
  782. package/Source/Scene/findContentMetadata.js +1 -1
  783. package/Source/Scene/findGroupMetadata.js +1 -1
  784. package/Source/Scene/findTileMetadata.js +1 -1
  785. package/Source/Scene/getClipAndStyleCode.js +5 -5
  786. package/Source/Scene/getClippingFunction.js +4 -4
  787. package/Source/Scene/hasExtension.js +3 -3
  788. package/Source/Scene/parseBatchTable.js +14 -14
  789. package/Source/Scene/parseBoundingVolumeSemantics.js +7 -7
  790. package/Source/Scene/parseFeatureMetadataLegacy.js +4 -4
  791. package/Source/Scene/parseStructuralMetadata.js +4 -4
  792. package/Source/Scene/preprocess3DTileContent.js +2 -2
  793. package/Source/Scene/processVoxelProperties.js +9 -8
  794. package/Source/Shaders/AdjustTranslucentFS.glsl +9 -6
  795. package/Source/Shaders/AdjustTranslucentFS.js +9 -6
  796. package/Source/Shaders/Appearances/AllMaterialAppearanceFS.glsl +7 -7
  797. package/Source/Shaders/Appearances/AllMaterialAppearanceFS.js +7 -7
  798. package/Source/Shaders/Appearances/AllMaterialAppearanceVS.glsl +12 -12
  799. package/Source/Shaders/Appearances/AllMaterialAppearanceVS.js +12 -12
  800. package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.glsl +4 -4
  801. package/Source/Shaders/Appearances/BasicMaterialAppearanceFS.js +4 -4
  802. package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.glsl +6 -6
  803. package/Source/Shaders/Appearances/BasicMaterialAppearanceVS.js +6 -6
  804. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.glsl +5 -5
  805. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceFS.js +5 -5
  806. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.glsl +7 -7
  807. package/Source/Shaders/Appearances/EllipsoidSurfaceAppearanceVS.js +7 -7
  808. package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.glsl +4 -4
  809. package/Source/Shaders/Appearances/PerInstanceColorAppearanceFS.js +4 -4
  810. package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.glsl +8 -8
  811. package/Source/Shaders/Appearances/PerInstanceColorAppearanceVS.js +8 -8
  812. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.glsl +2 -2
  813. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceFS.js +2 -2
  814. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.glsl +5 -5
  815. package/Source/Shaders/Appearances/PerInstanceFlatColorAppearanceVS.js +5 -5
  816. package/Source/Shaders/Appearances/PolylineColorAppearanceVS.glsl +10 -10
  817. package/Source/Shaders/Appearances/PolylineColorAppearanceVS.js +10 -10
  818. package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.glsl +12 -12
  819. package/Source/Shaders/Appearances/PolylineMaterialAppearanceVS.js +12 -12
  820. package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.glsl +5 -5
  821. package/Source/Shaders/Appearances/TexturedMaterialAppearanceFS.js +5 -5
  822. package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.glsl +8 -8
  823. package/Source/Shaders/Appearances/TexturedMaterialAppearanceVS.js +8 -8
  824. package/Source/Shaders/BillboardCollectionFS.glsl +15 -15
  825. package/Source/Shaders/BillboardCollectionFS.js +15 -15
  826. package/Source/Shaders/BillboardCollectionVS.glsl +23 -23
  827. package/Source/Shaders/BillboardCollectionVS.js +23 -23
  828. package/Source/Shaders/BrdfLutGeneratorFS.glsl +2 -2
  829. package/Source/Shaders/BrdfLutGeneratorFS.js +2 -2
  830. package/Source/Shaders/Builtin/CzmBuiltins.js +2 -0
  831. package/Source/Shaders/Builtin/Functions/depthClamp.glsl +3 -3
  832. package/Source/Shaders/Builtin/Functions/depthClamp.js +3 -3
  833. package/Source/Shaders/Builtin/Functions/getWaterNoise.glsl +4 -4
  834. package/Source/Shaders/Builtin/Functions/getWaterNoise.js +4 -4
  835. package/Source/Shaders/Builtin/Functions/phong.glsl +1 -1
  836. package/Source/Shaders/Builtin/Functions/phong.js +1 -1
  837. package/Source/Shaders/Builtin/Functions/readDepth.glsl +1 -1
  838. package/Source/Shaders/Builtin/Functions/readDepth.js +1 -1
  839. package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.glsl +5 -5
  840. package/Source/Shaders/Builtin/Functions/sampleOctahedralProjection.js +5 -5
  841. package/Source/Shaders/Builtin/Functions/shadowDepthCompare.glsl +3 -3
  842. package/Source/Shaders/Builtin/Functions/shadowDepthCompare.js +3 -3
  843. package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.glsl +1 -1
  844. package/Source/Shaders/Builtin/Functions/tangentToEyeSpaceMatrix.js +1 -1
  845. package/Source/Shaders/Builtin/Functions/textureCube.glsl +17 -0
  846. package/Source/Shaders/Builtin/Functions/textureCube.js +18 -0
  847. package/Source/Shaders/Builtin/Functions/translateRelativeToEye.glsl +2 -2
  848. package/Source/Shaders/Builtin/Functions/translateRelativeToEye.js +2 -2
  849. package/Source/Shaders/Builtin/Functions/vertexLogDepth.glsl +2 -2
  850. package/Source/Shaders/Builtin/Functions/vertexLogDepth.js +2 -2
  851. package/Source/Shaders/Builtin/Functions/writeDepthClamp.glsl +5 -8
  852. package/Source/Shaders/Builtin/Functions/writeDepthClamp.js +5 -8
  853. package/Source/Shaders/Builtin/Functions/writeLogDepth.glsl +6 -6
  854. package/Source/Shaders/Builtin/Functions/writeLogDepth.js +6 -6
  855. package/Source/Shaders/CloudCollectionFS.glsl +18 -18
  856. package/Source/Shaders/CloudCollectionFS.js +18 -18
  857. package/Source/Shaders/CloudCollectionVS.glsl +11 -11
  858. package/Source/Shaders/CloudCollectionVS.js +11 -11
  859. package/Source/Shaders/CloudNoiseFS.glsl +5 -5
  860. package/Source/Shaders/CloudNoiseFS.js +5 -5
  861. package/Source/Shaders/CloudNoiseVS.glsl +2 -2
  862. package/Source/Shaders/CloudNoiseVS.js +2 -2
  863. package/Source/Shaders/CompareAndPackTranslucentDepth.glsl +4 -4
  864. package/Source/Shaders/CompareAndPackTranslucentDepth.js +4 -4
  865. package/Source/Shaders/CompositeOITFS.glsl +6 -6
  866. package/Source/Shaders/CompositeOITFS.js +6 -6
  867. package/Source/Shaders/DepthPlaneFS.glsl +2 -2
  868. package/Source/Shaders/DepthPlaneFS.js +2 -2
  869. package/Source/Shaders/DepthPlaneVS.glsl +2 -2
  870. package/Source/Shaders/DepthPlaneVS.js +2 -2
  871. package/Source/Shaders/EllipsoidFS.glsl +5 -13
  872. package/Source/Shaders/EllipsoidFS.js +6 -14
  873. package/Source/Shaders/EllipsoidVS.glsl +2 -2
  874. package/Source/Shaders/EllipsoidVS.js +2 -2
  875. package/Source/Shaders/FXAA3_11.glsl +4 -4
  876. package/Source/Shaders/FXAA3_11.js +4 -4
  877. package/Source/Shaders/GlobeFS.glsl +15 -15
  878. package/Source/Shaders/GlobeFS.js +15 -15
  879. package/Source/Shaders/GlobeVS.glsl +17 -17
  880. package/Source/Shaders/GlobeVS.js +17 -17
  881. package/Source/Shaders/Materials/AspectRampMaterial.glsl +1 -1
  882. package/Source/Shaders/Materials/AspectRampMaterial.js +1 -1
  883. package/Source/Shaders/Materials/BumpMapMaterial.glsl +3 -3
  884. package/Source/Shaders/Materials/BumpMapMaterial.js +3 -3
  885. package/Source/Shaders/Materials/ElevationBandMaterial.glsl +3 -3
  886. package/Source/Shaders/Materials/ElevationBandMaterial.js +3 -3
  887. package/Source/Shaders/Materials/ElevationContourMaterial.glsl +2 -1
  888. package/Source/Shaders/Materials/ElevationContourMaterial.js +2 -1
  889. package/Source/Shaders/Materials/ElevationRampMaterial.glsl +1 -1
  890. package/Source/Shaders/Materials/ElevationRampMaterial.js +1 -1
  891. package/Source/Shaders/Materials/GridMaterial.glsl +3 -2
  892. package/Source/Shaders/Materials/GridMaterial.js +3 -2
  893. package/Source/Shaders/Materials/NormalMapMaterial.glsl +1 -1
  894. package/Source/Shaders/Materials/NormalMapMaterial.js +1 -1
  895. package/Source/Shaders/Materials/PolylineArrowMaterial.glsl +3 -2
  896. package/Source/Shaders/Materials/PolylineArrowMaterial.js +3 -2
  897. package/Source/Shaders/Materials/PolylineDashMaterial.glsl +1 -1
  898. package/Source/Shaders/Materials/PolylineDashMaterial.js +1 -1
  899. package/Source/Shaders/Materials/PolylineOutlineMaterial.glsl +1 -1
  900. package/Source/Shaders/Materials/PolylineOutlineMaterial.js +1 -1
  901. package/Source/Shaders/Materials/SlopeRampMaterial.glsl +1 -1
  902. package/Source/Shaders/Materials/SlopeRampMaterial.js +1 -1
  903. package/Source/Shaders/Materials/Water.glsl +1 -1
  904. package/Source/Shaders/Materials/Water.js +1 -1
  905. package/Source/Shaders/Model/ImageBasedLightingStageFS.glsl +3 -3
  906. package/Source/Shaders/Model/ImageBasedLightingStageFS.js +3 -3
  907. package/Source/Shaders/Model/MaterialStageFS.glsl +10 -10
  908. package/Source/Shaders/Model/MaterialStageFS.js +10 -10
  909. package/Source/Shaders/Model/ModelClippingPlanesStageFS.glsl +3 -3
  910. package/Source/Shaders/Model/ModelClippingPlanesStageFS.js +3 -3
  911. package/Source/Shaders/Model/ModelFS.glsl +1 -1
  912. package/Source/Shaders/Model/ModelFS.js +1 -1
  913. package/Source/Shaders/Model/PrimitiveOutlineStageFS.glsl +3 -3
  914. package/Source/Shaders/Model/PrimitiveOutlineStageFS.js +3 -3
  915. package/Source/Shaders/Model/SelectedFeatureIdStageCommon.glsl +1 -1
  916. package/Source/Shaders/Model/SelectedFeatureIdStageCommon.js +1 -1
  917. package/Source/Shaders/OctahedralProjectionAtlasFS.glsl +8 -8
  918. package/Source/Shaders/OctahedralProjectionAtlasFS.js +8 -8
  919. package/Source/Shaders/OctahedralProjectionFS.glsl +4 -4
  920. package/Source/Shaders/OctahedralProjectionFS.js +4 -4
  921. package/Source/Shaders/OctahedralProjectionVS.glsl +3 -3
  922. package/Source/Shaders/OctahedralProjectionVS.js +3 -3
  923. package/Source/Shaders/PointPrimitiveCollectionFS.glsl +6 -6
  924. package/Source/Shaders/PointPrimitiveCollectionFS.js +6 -6
  925. package/Source/Shaders/PointPrimitiveCollectionVS.glsl +12 -12
  926. package/Source/Shaders/PointPrimitiveCollectionVS.js +12 -12
  927. package/Source/Shaders/PolylineFS.glsl +3 -3
  928. package/Source/Shaders/PolylineFS.js +3 -3
  929. package/Source/Shaders/PolylineShadowVolumeFS.glsl +12 -16
  930. package/Source/Shaders/PolylineShadowVolumeFS.js +12 -16
  931. package/Source/Shaders/PolylineShadowVolumeMorphFS.glsl +8 -8
  932. package/Source/Shaders/PolylineShadowVolumeMorphFS.js +8 -8
  933. package/Source/Shaders/PolylineShadowVolumeMorphVS.glsl +20 -20
  934. package/Source/Shaders/PolylineShadowVolumeMorphVS.js +20 -20
  935. package/Source/Shaders/PolylineShadowVolumeVS.glsl +20 -20
  936. package/Source/Shaders/PolylineShadowVolumeVS.js +20 -20
  937. package/Source/Shaders/PolylineVS.glsl +17 -17
  938. package/Source/Shaders/PolylineVS.js +17 -17
  939. package/Source/Shaders/PostProcessStages/AcesTonemappingStage.glsl +4 -4
  940. package/Source/Shaders/PostProcessStages/AcesTonemappingStage.js +4 -4
  941. package/Source/Shaders/PostProcessStages/AdditiveBlend.glsl +4 -4
  942. package/Source/Shaders/PostProcessStages/AdditiveBlend.js +4 -4
  943. package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.glsl +4 -4
  944. package/Source/Shaders/PostProcessStages/AmbientOcclusionGenerate.js +4 -4
  945. package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.glsl +4 -4
  946. package/Source/Shaders/PostProcessStages/AmbientOcclusionModulate.js +4 -4
  947. package/Source/Shaders/PostProcessStages/BlackAndWhite.glsl +4 -4
  948. package/Source/Shaders/PostProcessStages/BlackAndWhite.js +4 -4
  949. package/Source/Shaders/PostProcessStages/BloomComposite.glsl +5 -5
  950. package/Source/Shaders/PostProcessStages/BloomComposite.js +5 -5
  951. package/Source/Shaders/PostProcessStages/BrightPass.glsl +3 -3
  952. package/Source/Shaders/PostProcessStages/BrightPass.js +3 -3
  953. package/Source/Shaders/PostProcessStages/Brightness.glsl +3 -3
  954. package/Source/Shaders/PostProcessStages/Brightness.js +3 -3
  955. package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.glsl +5 -5
  956. package/Source/Shaders/PostProcessStages/CompositeTranslucentClassification.js +5 -5
  957. package/Source/Shaders/PostProcessStages/ContrastBias.glsl +3 -3
  958. package/Source/Shaders/PostProcessStages/ContrastBias.js +3 -3
  959. package/Source/Shaders/PostProcessStages/DepthOfField.glsl +2 -2
  960. package/Source/Shaders/PostProcessStages/DepthOfField.js +2 -2
  961. package/Source/Shaders/PostProcessStages/DepthView.glsl +2 -2
  962. package/Source/Shaders/PostProcessStages/DepthView.js +2 -2
  963. package/Source/Shaders/PostProcessStages/DepthViewPacked.glsl +3 -3
  964. package/Source/Shaders/PostProcessStages/DepthViewPacked.js +3 -3
  965. package/Source/Shaders/PostProcessStages/EdgeDetection.glsl +7 -7
  966. package/Source/Shaders/PostProcessStages/EdgeDetection.js +7 -7
  967. package/Source/Shaders/PostProcessStages/FXAA.glsl +3 -3
  968. package/Source/Shaders/PostProcessStages/FXAA.js +3 -3
  969. package/Source/Shaders/PostProcessStages/FilmicTonemapping.glsl +4 -4
  970. package/Source/Shaders/PostProcessStages/FilmicTonemapping.js +4 -4
  971. package/Source/Shaders/PostProcessStages/GaussianBlur1D.glsl +5 -5
  972. package/Source/Shaders/PostProcessStages/GaussianBlur1D.js +5 -5
  973. package/Source/Shaders/PostProcessStages/LensFlare.glsl +13 -13
  974. package/Source/Shaders/PostProcessStages/LensFlare.js +13 -13
  975. package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.glsl +4 -4
  976. package/Source/Shaders/PostProcessStages/ModifiedReinhardTonemapping.js +4 -4
  977. package/Source/Shaders/PostProcessStages/NightVision.glsl +3 -3
  978. package/Source/Shaders/PostProcessStages/NightVision.js +3 -3
  979. package/Source/Shaders/PostProcessStages/PassThrough.glsl +2 -2
  980. package/Source/Shaders/PostProcessStages/PassThrough.js +2 -2
  981. package/Source/Shaders/PostProcessStages/PassThroughDepth.glsl +2 -2
  982. package/Source/Shaders/PostProcessStages/PassThroughDepth.js +2 -2
  983. package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.glsl +7 -9
  984. package/Source/Shaders/PostProcessStages/PointCloudEyeDomeLighting.js +8 -10
  985. package/Source/Shaders/PostProcessStages/ReinhardTonemapping.glsl +4 -4
  986. package/Source/Shaders/PostProcessStages/ReinhardTonemapping.js +4 -4
  987. package/Source/Shaders/PostProcessStages/Silhouette.glsl +4 -4
  988. package/Source/Shaders/PostProcessStages/Silhouette.js +4 -4
  989. package/Source/Shaders/ReprojectWebMercatorFS.glsl +2 -2
  990. package/Source/Shaders/ReprojectWebMercatorFS.js +2 -2
  991. package/Source/Shaders/ReprojectWebMercatorVS.glsl +3 -3
  992. package/Source/Shaders/ReprojectWebMercatorVS.js +3 -3
  993. package/Source/Shaders/ShadowVolumeAppearanceFS.glsl +19 -23
  994. package/Source/Shaders/ShadowVolumeAppearanceFS.js +20 -24
  995. package/Source/Shaders/ShadowVolumeAppearanceVS.glsl +12 -12
  996. package/Source/Shaders/ShadowVolumeAppearanceVS.js +12 -12
  997. package/Source/Shaders/ShadowVolumeFS.glsl +2 -6
  998. package/Source/Shaders/ShadowVolumeFS.js +3 -7
  999. package/Source/Shaders/SkyAtmosphereFS.glsl +6 -6
  1000. package/Source/Shaders/SkyAtmosphereFS.js +6 -6
  1001. package/Source/Shaders/SkyAtmosphereVS.glsl +6 -6
  1002. package/Source/Shaders/SkyAtmosphereVS.js +6 -6
  1003. package/Source/Shaders/SkyBoxFS.glsl +3 -3
  1004. package/Source/Shaders/SkyBoxFS.js +3 -3
  1005. package/Source/Shaders/SkyBoxVS.glsl +2 -2
  1006. package/Source/Shaders/SkyBoxVS.js +2 -2
  1007. package/Source/Shaders/SunFS.glsl +3 -3
  1008. package/Source/Shaders/SunFS.js +3 -3
  1009. package/Source/Shaders/SunTextureFS.glsl +2 -2
  1010. package/Source/Shaders/SunTextureFS.js +2 -2
  1011. package/Source/Shaders/SunVS.glsl +2 -2
  1012. package/Source/Shaders/SunVS.js +2 -2
  1013. package/Source/Shaders/Vector3DTileClampedPolylinesFS.glsl +9 -13
  1014. package/Source/Shaders/Vector3DTileClampedPolylinesFS.js +9 -13
  1015. package/Source/Shaders/Vector3DTileClampedPolylinesVS.glsl +12 -12
  1016. package/Source/Shaders/Vector3DTileClampedPolylinesVS.js +12 -12
  1017. package/Source/Shaders/Vector3DTilePolylinesVS.glsl +5 -5
  1018. package/Source/Shaders/Vector3DTilePolylinesVS.js +5 -5
  1019. package/Source/Shaders/VectorTileVS.glsl +2 -2
  1020. package/Source/Shaders/VectorTileVS.js +2 -2
  1021. package/Source/Shaders/ViewportQuadFS.glsl +2 -2
  1022. package/Source/Shaders/ViewportQuadFS.js +2 -2
  1023. package/Source/Shaders/ViewportQuadVS.glsl +3 -3
  1024. package/Source/Shaders/ViewportQuadVS.js +3 -3
  1025. package/Source/Shaders/Voxels/IntersectBox.glsl +52 -58
  1026. package/Source/Shaders/Voxels/IntersectBox.js +52 -58
  1027. package/Source/Shaders/Voxels/IntersectClippingPlanes.glsl +38 -30
  1028. package/Source/Shaders/Voxels/IntersectClippingPlanes.js +38 -30
  1029. package/Source/Shaders/Voxels/IntersectDepth.glsl +2 -2
  1030. package/Source/Shaders/Voxels/IntersectDepth.js +2 -2
  1031. package/Source/Shaders/Voxels/IntersectEllipsoid.glsl +12 -2
  1032. package/Source/Shaders/Voxels/IntersectEllipsoid.js +12 -2
  1033. package/Source/Shaders/Voxels/Intersection.glsl +10 -12
  1034. package/Source/Shaders/Voxels/Intersection.js +10 -12
  1035. package/Source/Shaders/Voxels/IntersectionUtils.glsl +52 -59
  1036. package/Source/Shaders/Voxels/IntersectionUtils.js +52 -59
  1037. package/Source/Shaders/Voxels/Megatexture.glsl +1 -1
  1038. package/Source/Shaders/Voxels/Megatexture.js +1 -1
  1039. package/Source/Shaders/Voxels/Octree.glsl +75 -76
  1040. package/Source/Shaders/Voxels/Octree.js +75 -76
  1041. package/Source/Shaders/Voxels/VoxelFS.glsl +44 -24
  1042. package/Source/Shaders/Voxels/VoxelFS.js +44 -24
  1043. package/Source/Shaders/Voxels/VoxelVS.glsl +1 -1
  1044. package/Source/Shaders/Voxels/VoxelVS.js +1 -1
  1045. package/Source/Shaders/Voxels/convertUvToBox.glsl +13 -5
  1046. package/Source/Shaders/Voxels/convertUvToBox.js +13 -5
  1047. package/Source/Shaders/Voxels/convertUvToCylinder.glsl +5 -9
  1048. package/Source/Shaders/Voxels/convertUvToCylinder.js +5 -9
  1049. package/Source/Shaders/Voxels/convertUvToEllipsoid.glsl +3 -6
  1050. package/Source/Shaders/Voxels/convertUvToEllipsoid.js +3 -6
  1051. package/Source/ThirdParty/Workers/draco_decoder_nodejs.js +91 -91
  1052. package/Source/ThirdParty/draco_decoder.wasm +0 -0
  1053. package/Source/Widget/CesiumWidget.js +23 -23
  1054. package/Source/Workers/cesiumWorkerBootstrapper.js +18 -18
  1055. package/Source/WorkersES6/createTaskProcessorWorker.js +3 -3
  1056. package/Source/WorkersES6/decodeDraco.js +9 -1
  1057. package/index.d.ts +37 -46
  1058. package/index.js +103 -104
  1059. package/package.json +1 -1
  1060. package/Source/Core/cancelAnimationFrame.js +0 -53
  1061. package/Source/Core/requestAnimationFrame.js +0 -83
  1062. package/Source/Renderer/modernizeShader.js +0 -242
  1063. /package/Build/Workers/{GeometryOffsetAttribute-04332ce7.js → GeometryOffsetAttribute-9ad0019c.js} +0 -0
@@ -43,9 +43,9 @@ import ShaderFunction from "./ShaderFunction.js";
43
43
  * "void main()",
44
44
  * "{",
45
45
  * " #ifdef SOLID_COLOR",
46
- * " gl_FragColor = vec4(u_color, 1.0);",
46
+ * " out_FragColor = vec4(u_color, 1.0);",
47
47
  * " #else",
48
- * " gl_FragColor = vec4(v_color, 1.0);",
48
+ * " out_FragColor = vec4(v_color, 1.0);",
49
49
  * " #endif",
50
50
  * "}"
51
51
  * ]);
@@ -92,7 +92,7 @@ Object.defineProperties(ShaderBuilder.prototype, {
92
92
  * the vertex shader.
93
93
  *
94
94
  * @memberof ShaderBuilder.prototype
95
- * @type {Object.<String, Number>}
95
+ * @type {Object<string, number>}
96
96
  * @readonly
97
97
  * @private
98
98
  */
@@ -107,8 +107,8 @@ Object.defineProperties(ShaderBuilder.prototype, {
107
107
  * Add a <code>#define</code> macro to one or both of the shaders. These lines
108
108
  * will appear at the top of the final shader source.
109
109
  *
110
- * @param {String} identifier An identifier for the macro. Identifiers must use uppercase letters with underscores to be consistent with Cesium's style guide.
111
- * @param {String} [value] The value of the macro. If undefined, the define will not include a value. The value will be converted to GLSL code via <code>toString()</code>
110
+ * @param {string} identifier An identifier for the macro. Identifiers must use uppercase letters with underscores to be consistent with Cesium's style guide.
111
+ * @param {string} [value] The value of the macro. If undefined, the define will not include a value. The value will be converted to GLSL code via <code>toString()</code>
112
112
  * @param {ShaderDestination} [destination=ShaderDestination.BOTH] Whether the define appears in the vertex shader, the fragment shader, or both.
113
113
  *
114
114
  * @example
@@ -141,8 +141,8 @@ ShaderBuilder.prototype.addDefine = function (identifier, value, destination) {
141
141
 
142
142
  /**
143
143
  * Add a new dynamically-generated struct to the shader
144
- * @param {String} structId A unique ID to identify this struct in {@link ShaderBuilder#addStructField}
145
- * @param {String} structName The name of the struct as it will appear in the shader.
144
+ * @param {string} structId A unique ID to identify this struct in {@link ShaderBuilder#addStructField}
145
+ * @param {string} structName The name of the struct as it will appear in the shader.
146
146
  * @param {ShaderDestination} destination Whether the struct will appear in the vertex shader, the fragment shader, or both.
147
147
  *
148
148
  * @example
@@ -174,9 +174,9 @@ ShaderBuilder.prototype.addStruct = function (
174
174
 
175
175
  /**
176
176
  * Add a field to a dynamically-generated struct.
177
- * @param {String} structId The ID of the struct. This must be created first with {@link ShaderBuilder#addStruct}
178
- * @param {String} type The GLSL type of the field
179
- * @param {String} identifier The identifier of the field.
177
+ * @param {string} structId The ID of the struct. This must be created first with {@link ShaderBuilder#addStruct}
178
+ * @param {string} type The GLSL type of the field
179
+ * @param {string} identifier The identifier of the field.
180
180
  *
181
181
  * @example
182
182
  * // generates the following struct in the fragment shader
@@ -200,8 +200,8 @@ ShaderBuilder.prototype.addStructField = function (structId, type, identifier) {
200
200
 
201
201
  /**
202
202
  * Add a new dynamically-generated function to the shader.
203
- * @param {String} functionName The name of the function. This will be used to identify the function in {@link ShaderBuilder#addFunctionLines}.
204
- * @param {String} signature The full signature of the function as it will appear in the shader. Do not include the curly braces.
203
+ * @param {string} functionName The name of the function. This will be used to identify the function in {@link ShaderBuilder#addFunctionLines}.
204
+ * @param {string} signature The full signature of the function as it will appear in the shader. Do not include the curly braces.
205
205
  * @param {ShaderDestination} destination Whether the struct will appear in the vertex shader, the fragment shader, or both.
206
206
  * @example
207
207
  * // generates the following function in the vertex shader
@@ -233,8 +233,8 @@ ShaderBuilder.prototype.addFunction = function (
233
233
 
234
234
  /**
235
235
  * Add lines to a dynamically-generated function
236
- * @param {String} functionName The name of the function. This must be created beforehand using {@link ShaderBuilder#addFunction}
237
- * @param {String|String[]} lines One or more lines of GLSL code to add to the function body. Do not include any preceding or ending whitespace, but do include the semicolon for each line.
236
+ * @param {string} functionName The name of the function. This must be created beforehand using {@link ShaderBuilder#addFunction}
237
+ * @param {string|string[]} lines One or more lines of GLSL code to add to the function body. Do not include any preceding or ending whitespace, but do include the semicolon for each line.
238
238
  *
239
239
  * @example
240
240
  * // generates the following function in the vertex shader
@@ -265,8 +265,8 @@ ShaderBuilder.prototype.addFunctionLines = function (functionName, lines) {
265
265
  * Add a uniform declaration to one or both of the shaders. These lines
266
266
  * will appear grouped near the top of the final shader source.
267
267
  *
268
- * @param {String} type The GLSL type of the uniform.
269
- * @param {String} identifier An identifier for the uniform. Identifiers must begin with <code>u_</code> to be consistent with Cesium's style guide.
268
+ * @param {string} type The GLSL type of the uniform.
269
+ * @param {string} identifier An identifier for the uniform. Identifiers must begin with <code>u_</code> to be consistent with Cesium's style guide.
270
270
  * @param {ShaderDestination} [destination=ShaderDestination.BOTH] Whether the uniform appears in the vertex shader, the fragment shader, or both.
271
271
  *
272
272
  * @example
@@ -302,12 +302,12 @@ ShaderBuilder.prototype.addUniform = function (type, identifier, destination) {
302
302
  * {@link ShaderBuilder#addAttribute}
303
303
  * </p>
304
304
  *
305
- * @param {String} type The GLSL type of the attribute
306
- * @param {String} identifier An identifier for the attribute. Identifiers must begin with <code>a_</code> to be consistent with Cesium's style guide.
307
- * @return {Number} The integer location of the attribute. This location can be used when creating attributes for a {@link VertexArray}. This will always be 0.
305
+ * @param {string} type The GLSL type of the attribute
306
+ * @param {string} identifier An identifier for the attribute. Identifiers must begin with <code>a_</code> to be consistent with Cesium's style guide.
307
+ * @return {number} The integer location of the attribute. This location can be used when creating attributes for a {@link VertexArray}. This will always be 0.
308
308
  *
309
309
  * @example
310
- * // creates the line "attribute vec3 a_position;"
310
+ * // creates the line "in vec3 a_position;"
311
311
  * shaderBuilder.setPositionAttribute("vec3", "a_position");
312
312
  */
313
313
  ShaderBuilder.prototype.setPositionAttribute = function (type, identifier) {
@@ -322,7 +322,7 @@ ShaderBuilder.prototype.setPositionAttribute = function (type, identifier) {
322
322
  }
323
323
  //>>includeEnd('debug');
324
324
 
325
- this._positionAttributeLine = `attribute ${type} ${identifier};`;
325
+ this._positionAttributeLine = `in ${type} ${identifier};`;
326
326
 
327
327
  // Some WebGL implementations require attribute 0 to always be active, so
328
328
  // this builder assumes the position will always go in location 0
@@ -338,12 +338,12 @@ ShaderBuilder.prototype.setPositionAttribute = function (type, identifier) {
338
338
  * reserved for the position attribute. See {@link ShaderBuilder#setPositionAttribute}
339
339
  * </p>
340
340
  *
341
- * @param {String} type The GLSL type of the attribute
342
- * @param {String} identifier An identifier for the attribute. Identifiers must begin with <code>a_</code> to be consistent with Cesium's style guide.
343
- * @return {Number} The integer location of the attribute. This location can be used when creating attributes for a {@link VertexArray}
341
+ * @param {string} type The GLSL type of the attribute
342
+ * @param {string} identifier An identifier for the attribute. Identifiers must begin with <code>a_</code> to be consistent with Cesium's style guide.
343
+ * @return {number} The integer location of the attribute. This location can be used when creating attributes for a {@link VertexArray}
344
344
  *
345
345
  * @example
346
- * // creates the line "attribute vec2 a_texCoord0;" in the vertex shader
346
+ * // creates the line "in vec2 a_texCoord0;" in the vertex shader
347
347
  * shaderBuilder.addAttribute("vec2", "a_texCoord0");
348
348
  */
349
349
  ShaderBuilder.prototype.addAttribute = function (type, identifier) {
@@ -352,7 +352,7 @@ ShaderBuilder.prototype.addAttribute = function (type, identifier) {
352
352
  Check.typeOf.string("identifier", identifier);
353
353
  //>>includeEnd('debug');
354
354
 
355
- const line = `attribute ${type} ${identifier};`;
355
+ const line = `in ${type} ${identifier};`;
356
356
  this._attributeLines.push(line);
357
357
 
358
358
  const location = this._nextAttributeLocation;
@@ -367,11 +367,12 @@ ShaderBuilder.prototype.addAttribute = function (type, identifier) {
367
367
  /**
368
368
  * Add a varying declaration to both the vertex and fragment shaders.
369
369
  *
370
- * @param {String} type The GLSL type of the varying
371
- * @param {String} identifier An identifier for the varying. Identifiers must begin with <code>v_</code> to be consistent with Cesium's style guide.
370
+ * @param {string} type The GLSL type of the varying
371
+ * @param {string} identifier An identifier for the varying. Identifiers must begin with <code>v_</code> to be consistent with Cesium's style guide.
372
372
  *
373
373
  * @example
374
- * // creates the line "varying vec3 v_color;" in both shaders
374
+ * // creates the line "in vec3 v_color;" in the vertex shader
375
+ * // creates the line "out vec3 v_color;" in the fragment shader
375
376
  * shaderBuilder.addVarying("vec3", "v_color");
376
377
  */
377
378
  ShaderBuilder.prototype.addVarying = function (type, identifier) {
@@ -380,15 +381,15 @@ ShaderBuilder.prototype.addVarying = function (type, identifier) {
380
381
  Check.typeOf.string("identifier", identifier);
381
382
  //>>includeEnd('debug');
382
383
 
383
- const line = `varying ${type} ${identifier};`;
384
- this._vertexShaderParts.varyingLines.push(line);
385
- this._fragmentShaderParts.varyingLines.push(line);
384
+ const line = `${type} ${identifier};`;
385
+ this._vertexShaderParts.varyingLines.push(`out ${line}`);
386
+ this._fragmentShaderParts.varyingLines.push(`in ${line}`);
386
387
  };
387
388
 
388
389
  /**
389
390
  * Appends lines of GLSL code to the vertex shader
390
391
  *
391
- * @param {String|String[]} lines One or more lines to add to the end of the vertex shader source
392
+ * @param {string|string[]} lines One or more lines to add to the end of the vertex shader source
392
393
  *
393
394
  * @example
394
395
  * shaderBuilder.addVertexLines([
@@ -420,16 +421,16 @@ ShaderBuilder.prototype.addVertexLines = function (lines) {
420
421
  /**
421
422
  * Appends lines of GLSL code to the fragment shader
422
423
  *
423
- * @param {String[]} lines The lines to add to the end of the fragment shader source
424
+ * @param {string[]} lines The lines to add to the end of the fragment shader source
424
425
  *
425
426
  * @example
426
427
  * shaderBuilder.addFragmentLines([
427
428
  * "void main()",
428
429
  * "{",
429
430
  * " #ifdef SOLID_COLOR",
430
- * " gl_FragColor = vec4(u_color, 1.0);",
431
+ * " out_FragColor = vec4(u_color, 1.0);",
431
432
  * " #else",
432
- * " gl_FragColor = vec4(v_color, 1.0);",
433
+ * " out_FragColor = vec4(v_color, 1.0);",
433
434
  * " #endif",
434
435
  * "}"
435
436
  * ]);
@@ -29,11 +29,11 @@ Object.defineProperties(ShaderCache.prototype, {
29
29
  * replace an existing reference to a shader program, which is passed as the first argument.
30
30
  * </p>
31
31
  *
32
- * @param {Object} options Object with the following properties:
32
+ * @param {object} options Object with the following properties:
33
33
  * @param {ShaderProgram} [options.shaderProgram] The shader program that is being reassigned.
34
- * @param {String|ShaderSource} options.vertexShaderSource The GLSL source for the vertex shader.
35
- * @param {String|ShaderSource} options.fragmentShaderSource The GLSL source for the fragment shader.
36
- * @param {Object} options.attributeLocations Indices for the attribute inputs to the vertex shader.
34
+ * @param {string|ShaderSource} options.vertexShaderSource The GLSL source for the vertex shader.
35
+ * @param {string|ShaderSource} options.fragmentShaderSource The GLSL source for the fragment shader.
36
+ * @param {object} options.attributeLocations Indices for the attribute inputs to the vertex shader.
37
37
 
38
38
  * @returns {ShaderProgram} The cached or newly created shader program.
39
39
  *
@@ -65,10 +65,10 @@ function toSortedJson(dictionary) {
65
65
  * Returns a shader program from the cache, or creates and caches a new shader program,
66
66
  * given the GLSL vertex and fragment shader source and attribute locations.
67
67
  *
68
- * @param {Object} options Object with the following properties:
69
- * @param {String|ShaderSource} options.vertexShaderSource The GLSL source for the vertex shader.
70
- * @param {String|ShaderSource} options.fragmentShaderSource The GLSL source for the fragment shader.
71
- * @param {Object} options.attributeLocations Indices for the attribute inputs to the vertex shader.
68
+ * @param {object} options Object with the following properties:
69
+ * @param {string|ShaderSource} options.vertexShaderSource The GLSL source for the vertex shader.
70
+ * @param {string|ShaderSource} options.fragmentShaderSource The GLSL source for the fragment shader.
71
+ * @param {object} options.attributeLocations Indices for the attribute inputs to the vertex shader.
72
72
  *
73
73
  * @returns {ShaderProgram} The cached or newly created shader program.
74
74
  */
@@ -16,7 +16,7 @@ const ShaderDestination = {
16
16
  * Check if a variable should be included in the vertex shader.
17
17
  *
18
18
  * @param {ShaderDestination} destination The ShaderDestination to check
19
- * @return {Boolean} <code>true</code> if the variable appears in the vertex shader, or <code>false</code> otherwise
19
+ * @return {boolean} <code>true</code> if the variable appears in the vertex shader, or <code>false</code> otherwise
20
20
  * @private
21
21
  */
22
22
  ShaderDestination.includesVertexShader = function (destination) {
@@ -34,7 +34,7 @@ ShaderDestination.includesVertexShader = function (destination) {
34
34
  * Check if a variable should be included in the vertex shader.
35
35
  *
36
36
  * @param {ShaderDestination} destination The ShaderDestination to check
37
- * @return {Boolean} <code>true</code> if the variable appears in the vertex shader, or <code>false</code> otherwise
37
+ * @return {boolean} <code>true</code> if the variable appears in the vertex shader, or <code>false</code> otherwise
38
38
  * @private
39
39
  */
40
40
  ShaderDestination.includesFragmentShader = function (destination) {
@@ -7,7 +7,7 @@ import DeveloperError from "../Core/DeveloperError.js";
7
7
  * @constructor
8
8
  *
9
9
  * @see {@link ShaderBuilder}
10
- * @param {String} signature The full signature of the function as it will appear in the shader. Do not include the curly braces.
10
+ * @param {string} signature The full signature of the function as it will appear in the shader. Do not include the curly braces.
11
11
  * @example
12
12
  * // generate the following function
13
13
  * //
@@ -31,7 +31,7 @@ function ShaderFunction(signature) {
31
31
 
32
32
  /**
33
33
  * Adds one or more lines to the body of the function
34
- * @param {String|String[]} lines One or more lines of GLSL code to add to the function body. Do not include any preceding or ending whitespace, but do include the semicolon for each line.
34
+ * @param {string|string[]} lines One or more lines of GLSL code to add to the function body. Do not include any preceding or ending whitespace, but do include the semicolon for each line.
35
35
  */
36
36
  ShaderFunction.prototype.addLines = function (lines) {
37
37
  //>>includeStart('debug', pragmas.debug);
@@ -57,7 +57,7 @@ ShaderFunction.prototype.addLines = function (lines) {
57
57
 
58
58
  /**
59
59
  * Generate lines of GLSL code for use with {@link ShaderBuilder}
60
- * @return {String[]}
60
+ * @return {string[]}
61
61
  */
62
62
  ShaderFunction.prototype.generateGlslLines = function () {
63
63
  return [].concat(this.signature, "{", this.body, "}");
@@ -1,9 +1,9 @@
1
1
  import defaultValue from "../Core/defaultValue.js";
2
2
  import defined from "../Core/defined.js";
3
3
  import DeveloperError from "../Core/DeveloperError.js";
4
- import modernizeShader from "../Renderer/modernizeShader.js";
5
4
  import CzmBuiltins from "../Shaders/Builtin/CzmBuiltins.js";
6
5
  import AutomaticUniforms from "./AutomaticUniforms.js";
6
+ import demodernizeShader from "./demodernizeShader.js";
7
7
 
8
8
  function removeComments(source) {
9
9
  // remove inline comments
@@ -223,12 +223,6 @@ function combineShader(shaderSource, isFragmentShader, context) {
223
223
  // combine into single string
224
224
  let result = "";
225
225
 
226
- // #version must be first
227
- // defaults to #version 100 if not specified
228
- if (defined(version)) {
229
- result = `#version ${version}\n`;
230
- }
231
-
232
226
  const extensionsLength = extensions.length;
233
227
  for (i = 0; i < extensionsLength; i++) {
234
228
  result += extensions[i];
@@ -261,12 +255,6 @@ function combineShader(shaderSource, isFragmentShader, context) {
261
255
  }
262
256
  }
263
257
 
264
- // GLSLModernizer inserts its own layout qualifiers
265
- // at this position in the source
266
- if (context.webgl2) {
267
- result += "#define OUTPUT_DECLARATION\n\n";
268
- }
269
-
270
258
  // Define a constant for the OES_texture_float_linear extension since WebGL does not.
271
259
  if (context.textureFloatLinear) {
272
260
  result += "#define OES_texture_float_linear\n\n";
@@ -278,19 +266,36 @@ function combineShader(shaderSource, isFragmentShader, context) {
278
266
  }
279
267
 
280
268
  // append built-ins
269
+ let builtinSources = "";
281
270
  if (shaderSource.includeBuiltIns) {
282
- result += getBuiltinsAndAutomaticUniforms(combinedSources);
271
+ builtinSources = getBuiltinsAndAutomaticUniforms(combinedSources);
283
272
  }
284
273
 
285
274
  // reset line number
286
275
  result += "\n#line 0\n";
287
276
 
288
277
  // append actual source
278
+ const combinedShader = builtinSources + combinedSources;
279
+ if (
280
+ context.webgl2 &&
281
+ isFragmentShader &&
282
+ !/layout\s*\(location\s*=\s*0\)\s*out\s+vec4\s+out_FragColor;/g.test(
283
+ combinedShader
284
+ ) &&
285
+ !/czm_out_FragColor/g.test(combinedShader) &&
286
+ /out_FragColor/g.test(combinedShader)
287
+ ) {
288
+ result += "layout(location = 0) out vec4 out_FragColor;\n\n";
289
+ }
290
+
291
+ result += builtinSources;
289
292
  result += combinedSources;
290
293
 
291
294
  // modernize the source
292
- if (context.webgl2) {
293
- result = modernizeShader(result, isFragmentShader, true);
295
+ if (!context.webgl2) {
296
+ result = demodernizeShader(result, isFragmentShader);
297
+ } else {
298
+ result = `#version 300 es\n${result}`;
294
299
  }
295
300
 
296
301
  return result;
@@ -299,24 +304,24 @@ function combineShader(shaderSource, isFragmentShader, context) {
299
304
  /**
300
305
  * An object containing various inputs that will be combined to form a final GLSL shader string.
301
306
  *
302
- * @param {Object} [options] Object with the following properties:
303
- * @param {String[]} [options.sources] An array of strings to combine containing GLSL code for the shader.
304
- * @param {String[]} [options.defines] An array of strings containing GLSL identifiers to <code>#define</code>.
305
- * @param {String} [options.pickColorQualifier] The GLSL qualifier, <code>uniform</code> or <code>varying</code>, for the input <code>czm_pickColor</code>. When defined, a pick fragment shader is generated.
306
- * @param {Boolean} [options.includeBuiltIns=true] If true, referenced built-in functions will be included with the combined shader. Set to false if this shader will become a source in another shader, to avoid duplicating functions.
307
+ * @param {object} [options] Object with the following properties:
308
+ * @param {string[]} [options.sources] An array of strings to combine containing GLSL code for the shader.
309
+ * @param {string[]} [options.defines] An array of strings containing GLSL identifiers to <code>#define</code>.
310
+ * @param {string} [options.pickColorQualifier] The GLSL qualifier, <code>uniform</code> or <code>in</code>, for the input <code>czm_pickColor</code>. When defined, a pick fragment shader is generated.
311
+ * @param {boolean} [options.includeBuiltIns=true] If true, referenced built-in functions will be included with the combined shader. Set to false if this shader will become a source in another shader, to avoid duplicating functions.
307
312
  *
308
- * @exception {DeveloperError} options.pickColorQualifier must be 'uniform' or 'varying'.
313
+ * @exception {DeveloperError} options.pickColorQualifier must be 'uniform' or 'in'.
309
314
  *
310
315
  * @example
311
316
  * // 1. Prepend #defines to a shader
312
317
  * const source = new Cesium.ShaderSource({
313
318
  * defines : ['WHITE'],
314
- * sources : ['void main() { \n#ifdef WHITE\n gl_FragColor = vec4(1.0); \n#else\n gl_FragColor = vec4(0.0); \n#endif\n }']
319
+ * sources : ['void main() { \n#ifdef WHITE\n out_FragColor = vec4(1.0); \n#else\n out_FragColor = vec4(0.0); \n#endif\n }']
315
320
  * });
316
321
  *
317
322
  * // 2. Modify a fragment shader for picking
318
323
  * const source2 = new Cesium.ShaderSource({
319
- * sources : ['void main() { gl_FragColor = vec4(1.0); }'],
324
+ * sources : ['void main() { out_FragColor = vec4(1.0); }'],
320
325
  * pickColorQualifier : 'uniform'
321
326
  * });
322
327
  *
@@ -330,10 +335,10 @@ function ShaderSource(options) {
330
335
  if (
331
336
  defined(pickColorQualifier) &&
332
337
  pickColorQualifier !== "uniform" &&
333
- pickColorQualifier !== "varying"
338
+ pickColorQualifier !== "in"
334
339
  ) {
335
340
  throw new DeveloperError(
336
- "options.pickColorQualifier must be 'uniform' or 'varying'."
341
+ "options.pickColorQualifier must be 'uniform' or 'in'."
337
342
  );
338
343
  }
339
344
  //>>includeEnd('debug');
@@ -363,7 +368,7 @@ ShaderSource.replaceMain = function (source, renamedMain) {
363
368
  * {@link ShaderSource#createCombinedFragmentShader} are both expensive to
364
369
  * compute, create a simpler string key for lookups in the {@link ShaderCache}.
365
370
  *
366
- * @returns {String} A key for identifying this shader
371
+ * @returns {string} A key for identifying this shader
367
372
  *
368
373
  * @private
369
374
  */
@@ -383,7 +388,7 @@ ShaderSource.prototype.getCacheKey = function () {
383
388
  *
384
389
  * @param {Context} context The current rendering context
385
390
  *
386
- * @returns {String} The combined shader string.
391
+ * @returns {string} The combined shader string.
387
392
  */
388
393
  ShaderSource.prototype.createCombinedVertexShader = function (context) {
389
394
  return combineShader(this, false, context);
@@ -394,7 +399,7 @@ ShaderSource.prototype.createCombinedVertexShader = function (context) {
394
399
  *
395
400
  * @param {Context} context The current rendering context
396
401
  *
397
- * @returns {String} The combined shader string.
402
+ * @returns {string} The combined shader string.
398
403
  */
399
404
  ShaderSource.prototype.createCombinedFragmentShader = function (context) {
400
405
  return combineShader(this, true, context);
@@ -430,8 +435,8 @@ ShaderSource.createPickVertexShaderSource = function (vertexShaderSource) {
430
435
  "czm_old_main"
431
436
  );
432
437
  const pickMain =
433
- "attribute vec4 pickColor; \n" +
434
- "varying vec4 czm_pickColor; \n" +
438
+ "in vec4 pickColor; \n" +
439
+ "out vec4 czm_pickColor; \n" +
435
440
  "void main() \n" +
436
441
  "{ \n" +
437
442
  " czm_old_main(); \n" +
@@ -454,10 +459,10 @@ ShaderSource.createPickFragmentShaderSource = function (
454
459
  `void main() \n` +
455
460
  `{ \n` +
456
461
  ` czm_old_main(); \n` +
457
- ` if (gl_FragColor.a == 0.0) { \n` +
462
+ ` if (out_FragColor.a == 0.0) { \n` +
458
463
  ` discard; \n` +
459
464
  ` } \n` +
460
- ` gl_FragColor = czm_pickColor; \n` +
465
+ ` out_FragColor = czm_pickColor; \n` +
461
466
  `}`;
462
467
 
463
468
  return `${renamedFS}\n${pickMain}`;
@@ -5,7 +5,7 @@
5
5
  * @constructor
6
6
  *
7
7
  * @see {@link ShaderBuilder}
8
- * @param {String} name The name of the struct as it will appear in the shader.
8
+ * @param {string} name The name of the struct as it will appear in the shader.
9
9
  * @example
10
10
  * // Generate the struct:
11
11
  * //
@@ -30,8 +30,8 @@ function ShaderStruct(name) {
30
30
 
31
31
  /**
32
32
  * Add a field to the struct
33
- * @param {String} type The type of the struct field
34
- * @param {String} identifier The identifier of the struct field
33
+ * @param {string} type The type of the struct field
34
+ * @param {string} identifier The identifier of the struct field
35
35
  */
36
36
  ShaderStruct.prototype.addField = function (type, identifier) {
37
37
  const field = ` ${type} ${identifier};`;
@@ -40,7 +40,7 @@ ShaderStruct.prototype.addField = function (type, identifier) {
40
40
 
41
41
  /**
42
42
  * Generate a list of lines of GLSL code for use with {@link ShaderBuilder}
43
- * @return {String[]} The generated GLSL code.
43
+ * @return {string[]} The generated GLSL code.
44
44
  */
45
45
  ShaderStruct.prototype.generateGlslLines = function () {
46
46
  let fields = this.fields;
@@ -411,13 +411,13 @@ Texture.create = function (options) {
411
411
  * Creates a texture, and copies a subimage of the framebuffer to it. When called without arguments,
412
412
  * the texture is the same width and height as the framebuffer and contains its contents.
413
413
  *
414
- * @param {Object} options Object with the following properties:
414
+ * @param {object} options Object with the following properties:
415
415
  * @param {Context} options.context The context in which the Texture gets created.
416
416
  * @param {PixelFormat} [options.pixelFormat=PixelFormat.RGB] The texture's internal pixel format.
417
- * @param {Number} [options.framebufferXOffset=0] An offset in the x direction in the framebuffer where copying begins from.
418
- * @param {Number} [options.framebufferYOffset=0] An offset in the y direction in the framebuffer where copying begins from.
419
- * @param {Number} [options.width=canvas.clientWidth] The width of the texture in texels.
420
- * @param {Number} [options.height=canvas.clientHeight] The height of the texture in texels.
417
+ * @param {number} [options.framebufferXOffset=0] An offset in the x direction in the framebuffer where copying begins from.
418
+ * @param {number} [options.framebufferYOffset=0] An offset in the y direction in the framebuffer where copying begins from.
419
+ * @param {number} [options.width=canvas.clientWidth] The width of the texture in texels.
420
+ * @param {number} [options.height=canvas.clientHeight] The height of the texture in texels.
421
421
  * @param {Framebuffer} [options.framebuffer=defaultFramebuffer] The framebuffer from which to create the texture. If this
422
422
  * parameter is not specified, the default framebuffer is used.
423
423
  * @returns {Texture} A texture with contents from the framebuffer.
@@ -515,7 +515,7 @@ Object.defineProperties(Texture.prototype, {
515
515
  /**
516
516
  * A unique id for the texture
517
517
  * @memberof Texture.prototype
518
- * @type {String}
518
+ * @type {string}
519
519
  * @readonly
520
520
  * @private
521
521
  */
@@ -531,7 +531,7 @@ Object.defineProperties(Texture.prototype, {
531
531
  * coordinates in both directions, uses linear filtering for both magnification and minification,
532
532
  * and uses a maximum anisotropy of 1.0.
533
533
  * @memberof Texture.prototype
534
- * @type {Object}
534
+ * @type {object}
535
535
  */
536
536
  sampler: {
537
537
  get: function () {
@@ -648,12 +648,12 @@ Object.defineProperties(Texture.prototype, {
648
648
  /**
649
649
  * Copy new image data into this texture, from a source {@link ImageData}, {@link HTMLImageElement}, {@link HTMLCanvasElement}, or {@link HTMLVideoElement}.
650
650
  * or an object with width, height, and arrayBufferView properties.
651
- * @param {Object} options Object with the following properties:
652
- * @param {Object} options.source The source {@link ImageData}, {@link HTMLImageElement}, {@link HTMLCanvasElement}, or {@link HTMLVideoElement},
651
+ * @param {object} options Object with the following properties:
652
+ * @param {object} options.source The source {@link ImageData}, {@link HTMLImageElement}, {@link HTMLCanvasElement}, or {@link HTMLVideoElement},
653
653
  * or an object with width, height, and arrayBufferView properties.
654
- * @param {Number} [options.xOffset=0] The offset in the x direction within the texture to copy into.
655
- * @param {Number} [options.yOffset=0] The offset in the y direction within the texture to copy into.
656
- * @param {Boolean} [options.skipColorSpaceConversion=false] If true, any custom gamma or color profiles in the texture will be ignored.
654
+ * @param {number} [options.xOffset=0] The offset in the x direction within the texture to copy into.
655
+ * @param {number} [options.yOffset=0] The offset in the y direction within the texture to copy into.
656
+ * @param {boolean} [options.skipColorSpaceConversion=false] If true, any custom gamma or color profiles in the texture will be ignored.
657
657
  *
658
658
  * @exception {DeveloperError} Cannot call copyFrom when the texture pixel format is DEPTH_COMPONENT or DEPTH_STENCIL.
659
659
  * @exception {DeveloperError} Cannot call copyFrom with a compressed texture pixel format.
@@ -872,12 +872,12 @@ Texture.prototype.copyFrom = function (options) {
872
872
  };
873
873
 
874
874
  /**
875
- * @param {Number} [xOffset=0] The offset in the x direction within the texture to copy into.
876
- * @param {Number} [yOffset=0] The offset in the y direction within the texture to copy into.
877
- * @param {Number} [framebufferXOffset=0] optional
878
- * @param {Number} [framebufferYOffset=0] optional
879
- * @param {Number} [width=width] optional
880
- * @param {Number} [height=height] optional
875
+ * @param {number} [xOffset=0] The offset in the x direction within the texture to copy into.
876
+ * @param {number} [yOffset=0] The offset in the y direction within the texture to copy into.
877
+ * @param {number} [framebufferXOffset=0] optional
878
+ * @param {number} [framebufferYOffset=0] optional
879
+ * @param {number} [width=width] optional
880
+ * @param {number} [height=height] optional
881
881
  *
882
882
  * @exception {DeveloperError} Cannot call copyFromFramebuffer when the texture pixel format is DEPTH_COMPONENT or DEPTH_STENCIL.
883
883
  * @exception {DeveloperError} Cannot call copyFromFramebuffer when the texture pixel data type is FLOAT.
@@ -3,7 +3,7 @@ import WebGLConstants from "../Core/WebGLConstants.js";
3
3
  /**
4
4
  * Enumerates all possible filters used when magnifying WebGL textures.
5
5
  *
6
- * @enum {Number}
6
+ * @enum {number}
7
7
  *
8
8
  * @see TextureMinificationFilter
9
9
  */
@@ -11,14 +11,14 @@ const TextureMagnificationFilter = {
11
11
  /**
12
12
  * Samples the texture by returning the closest pixel.
13
13
  *
14
- * @type {Number}
14
+ * @type {number}
15
15
  * @constant
16
16
  */
17
17
  NEAREST: WebGLConstants.NEAREST,
18
18
  /**
19
19
  * Samples the texture through bi-linear interpolation of the four nearest pixels. This produces smoother results than <code>NEAREST</code> filtering.
20
20
  *
21
- * @type {Number}
21
+ * @type {number}
22
22
  * @constant
23
23
  */
24
24
  LINEAR: WebGLConstants.LINEAR,
@@ -27,7 +27,7 @@ const TextureMagnificationFilter = {
27
27
  /**
28
28
  * Validates the given <code>textureMinificationFilter</code> with respect to the possible enum values.
29
29
  * @param textureMagnificationFilter
30
- * @returns {Boolean} <code>true</code> if <code>textureMagnificationFilter</code> is valid.
30
+ * @returns {boolean} <code>true</code> if <code>textureMagnificationFilter</code> is valid.
31
31
  *
32
32
  * @private
33
33
  */
@@ -3,7 +3,7 @@ import WebGLConstants from "../Core/WebGLConstants.js";
3
3
  /**
4
4
  * Enumerates all possible filters used when minifying WebGL textures.
5
5
  *
6
- * @enum {Number}
6
+ * @enum {number}
7
7
  *
8
8
  * @see TextureMagnificationFilter
9
9
  */
@@ -11,14 +11,14 @@ const TextureMinificationFilter = {
11
11
  /**
12
12
  * Samples the texture by returning the closest pixel.
13
13
  *
14
- * @type {Number}
14
+ * @type {number}
15
15
  * @constant
16
16
  */
17
17
  NEAREST: WebGLConstants.NEAREST,
18
18
  /**
19
19
  * Samples the texture through bi-linear interpolation of the four nearest pixels. This produces smoother results than <code>NEAREST</code> filtering.
20
20
  *
21
- * @type {Number}
21
+ * @type {number}
22
22
  * @constant
23
23
  */
24
24
  LINEAR: WebGLConstants.LINEAR,
@@ -28,7 +28,7 @@ const TextureMinificationFilter = {
28
28
  * Requires that the texture has a mipmap. The mip level is chosen by the view angle and screen-space size of the texture.
29
29
  * </p>
30
30
  *
31
- * @type {Number}
31
+ * @type {number}
32
32
  * @constant
33
33
  */
34
34
  NEAREST_MIPMAP_NEAREST: WebGLConstants.NEAREST_MIPMAP_NEAREST,
@@ -38,7 +38,7 @@ const TextureMinificationFilter = {
38
38
  * Requires that the texture has a mipmap. The mip level is chosen by the view angle and screen-space size of the texture.
39
39
  * </p>
40
40
  *
41
- * @type {Number}
41
+ * @type {number}
42
42
  * @constant
43
43
  */
44
44
  LINEAR_MIPMAP_NEAREST: WebGLConstants.LINEAR_MIPMAP_NEAREST,
@@ -51,7 +51,7 @@ const TextureMinificationFilter = {
51
51
  * Requires that the texture has a mipmap. The mip level is chosen by the view angle and screen-space size of the texture.
52
52
  * </p>
53
53
  *
54
- * @type {Number}
54
+ * @type {number}
55
55
  * @constant
56
56
  */
57
57
  NEAREST_MIPMAP_LINEAR: WebGLConstants.NEAREST_MIPMAP_LINEAR,
@@ -63,7 +63,7 @@ const TextureMinificationFilter = {
63
63
  * <p>
64
64
  * Requires that the texture has a mipmap. The mip level is chosen by the view angle and screen-space size of the texture.
65
65
  * </p>
66
- * @type {Number}
66
+ * @type {number}
67
67
  * @constant
68
68
  */
69
69
  LINEAR_MIPMAP_LINEAR: WebGLConstants.LINEAR_MIPMAP_LINEAR,
@@ -75,7 +75,7 @@ const TextureMinificationFilter = {
75
75
  * @private
76
76
  *
77
77
  * @param textureMinificationFilter
78
- * @returns {Boolean} <code>true</code> if <code>textureMinificationFilter</code> is valid.
78
+ * @returns {boolean} <code>true</code> if <code>textureMinificationFilter</code> is valid.
79
79
  */
80
80
  TextureMinificationFilter.validate = function (textureMinificationFilter) {
81
81
  return (