@arcgis/core 4.23.0-next.20220126 → 4.23.0-next.20220130

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 (523) hide show
  1. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/02fbc76dfdc20e628c61.js +1 -0
  4. package/assets/esri/core/workers/chunks/0453fad5cb819797b4f6.js +1 -0
  5. package/assets/esri/core/workers/chunks/0463ba46df855a92b9c0.js +1 -0
  6. package/assets/esri/core/workers/chunks/0cd0a6eef51fc5b9ea61.js +1 -0
  7. package/assets/esri/core/workers/chunks/{97ec9eef0048760fa260.js → 0d02c6ad1f4688bfa374.js} +1 -1
  8. package/assets/esri/core/workers/chunks/0d684f16f37d5dc385dd.js +1 -0
  9. package/assets/esri/core/workers/chunks/0e17691520d890d34efb.js +1 -0
  10. package/assets/esri/core/workers/chunks/16b6d0f8378582c051c3.js +1 -0
  11. package/assets/esri/core/workers/chunks/{0ce1dc14280d6f188468.js → 17de7a324dfa7f57ad5d.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{b313ab14a643273e7d09.js → 1877ab1b6a115dbba1c5.js} +1 -1
  13. package/assets/esri/core/workers/chunks/{c36f84daa7736878418d.js → 197ec52641aed20029c6.js} +1 -1
  14. package/assets/esri/core/workers/chunks/1b2a961f776a0b57e57a.js +1 -0
  15. package/assets/esri/core/workers/chunks/1b3fd66577b19aa5f2b6.js +1 -0
  16. package/assets/esri/core/workers/chunks/1c733b7db092a2a88ef3.js +1 -0
  17. package/assets/esri/core/workers/chunks/1f8c6a179e39fd4c5e6f.js +1 -0
  18. package/assets/esri/core/workers/chunks/2076fcbae63f1bfb7143.js +1 -0
  19. package/assets/esri/core/workers/chunks/{9387db408f496e7dd003.js → 214910032945dd2d86b0.js} +1 -1
  20. package/assets/esri/core/workers/chunks/27474b007988855bea9d.js +1 -0
  21. package/assets/esri/core/workers/chunks/281b89dbf5574fc642ae.js +1 -0
  22. package/assets/esri/core/workers/chunks/2c8fe9bc988c3c5760a5.js +1 -0
  23. package/assets/esri/core/workers/chunks/34b59d7099904dcb28b5.js +1 -0
  24. package/assets/esri/core/workers/chunks/357033117dfe61eb81ea.js +1 -0
  25. package/assets/esri/core/workers/chunks/{b2ebe4f6d100e15b512d.js → 37c03cfc19086ce631c6.js} +1 -1
  26. package/assets/esri/core/workers/chunks/386f86f961146f530aa7.js +1 -0
  27. package/assets/esri/core/workers/chunks/{e6165e17fbb07bfc40a1.js → 391e96192d1ec4e55ce2.js} +1 -1
  28. package/assets/esri/core/workers/chunks/44f0c3663b293afbd172.js +1 -0
  29. package/assets/esri/core/workers/chunks/483d5d8593d96d0f0b15.js +1 -0
  30. package/assets/esri/core/workers/chunks/{c959e0d1cf7dce0421b9.js → 48fa8aed6c24877b44c4.js} +1 -1
  31. package/assets/esri/core/workers/chunks/{438f0b5ae5c53ae4f06a.js → 4954fd86b48cc68b737c.js} +1 -1
  32. package/assets/esri/core/workers/chunks/49a1a633bb0d93764aae.js +1 -0
  33. package/assets/esri/core/workers/chunks/4ba6de8aa7e2960bad49.js +1 -0
  34. package/assets/esri/core/workers/chunks/4be35af7d6babbfe9d84.js +1 -0
  35. package/assets/esri/core/workers/chunks/5457962a70bd3c557a75.js +1 -0
  36. package/assets/esri/core/workers/chunks/57856b4a9b8784a69844.js +1 -0
  37. package/assets/esri/core/workers/chunks/{b9c177524b3e7de1ffd1.js → 5790d171072b3c7d108f.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{5dfe1f8d520025e2118b.js → 57b349d1dbc0bed75b79.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{97a28641b3b2fd31bea2.js → 5bcb3240b3c005e5fe72.js} +1 -1
  40. package/assets/esri/core/workers/chunks/5d11b97b667921d67ae7.js +1 -0
  41. package/assets/esri/core/workers/chunks/5dbe555a5a662ff3d9ce.js +1 -0
  42. package/assets/esri/core/workers/chunks/5ec98f4ddac707d0fbd1.js +1 -0
  43. package/assets/esri/core/workers/chunks/64b7e8d812ea8fcf269e.js +1 -0
  44. package/assets/esri/core/workers/chunks/{ba5eb394f098968c22d2.js → 655b55ac0cd533d7e9d7.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{b0b036ad3ad3cd956747.js → 69fd99b7c76e9992ccf3.js} +1 -1
  46. package/assets/esri/core/workers/chunks/75d812955a473d0e8960.js +1 -0
  47. package/assets/esri/core/workers/chunks/7903a3e2e0faff0f86c0.js +1 -0
  48. package/assets/esri/core/workers/chunks/{cc146c57bbdac8029fd8.js → 7a5f5acfbd4ca1a5c1f3.js} +1 -1
  49. package/assets/esri/core/workers/chunks/83d00afae4406ec78bc9.js +1 -0
  50. package/assets/esri/core/workers/chunks/{434b16731c6a81f868ef.js → 85b1f36790df95b17659.js} +1 -1
  51. package/assets/esri/core/workers/chunks/89820b200ee44e678af5.js +1 -0
  52. package/assets/esri/core/workers/chunks/918bb7a7d901544a7367.js +1 -0
  53. package/assets/esri/core/workers/chunks/{94b8dbf859df71858d1c.js → 929c9b7cdab7c4ca3d87.js} +1 -1
  54. package/assets/esri/core/workers/chunks/949b2269457302ffc64b.js +1 -0
  55. package/assets/esri/core/workers/chunks/{601e697dc7414bda128a.js → 952980635afc7ec81804.js} +1 -1
  56. package/assets/esri/core/workers/chunks/9876a1bae350795fab36.js +1 -0
  57. package/assets/esri/core/workers/chunks/99619fcb772807c74f3b.js +1 -0
  58. package/assets/esri/core/workers/chunks/{010a71c2aa1b7681e191.js → 9d11f84e6c893b9d0019.js} +1 -1
  59. package/assets/esri/core/workers/chunks/a1930e4f035bc9aa1ae5.js +1 -0
  60. package/assets/esri/core/workers/chunks/a8692bffb76444c34760.js +1 -0
  61. package/assets/esri/core/workers/chunks/{f760a3e030b0f358a92a.js → aeaa1667c2d9f1b3366b.js} +1 -1
  62. package/assets/esri/core/workers/chunks/{3f343f792fd9f44d6f25.js → b3f5e91116112b0b612a.js} +1 -1
  63. package/assets/esri/core/workers/chunks/b97953694f42bfec1b3c.js +1 -0
  64. package/assets/esri/core/workers/chunks/b9e9cb354822c6d995a4.js +1 -0
  65. package/assets/esri/core/workers/chunks/ba762bcfd74af0bb8218.js +1 -0
  66. package/assets/esri/core/workers/chunks/{e4b84ca8ddfd48dd79b1.js → bac9fc90e6756e211160.js} +1 -1
  67. package/assets/esri/core/workers/chunks/{4c76146014dc15143ba3.js → be588873c16770ceb9ef.js} +1 -1
  68. package/assets/esri/core/workers/chunks/bf97a933ea3b220115e1.js +1 -0
  69. package/assets/esri/core/workers/chunks/bfedd6ebff817c9b31c0.js +1 -0
  70. package/assets/esri/core/workers/chunks/c093dff4592832ac0973.js +1 -0
  71. package/assets/esri/core/workers/chunks/c1135cb02ec46c491459.js +1 -0
  72. package/assets/esri/core/workers/chunks/{e4e2036373166c1d5cf5.js → c2253a9f29c1aabb2b75.js} +1 -1
  73. package/assets/esri/core/workers/chunks/d04fca5d46cca02500b7.js +1 -0
  74. package/assets/esri/core/workers/chunks/d08efbc349dd9f999497.js +1 -0
  75. package/assets/esri/core/workers/chunks/d1fe53b597351dc58305.js +1 -0
  76. package/assets/esri/core/workers/chunks/{a8b13fb804bb775e4967.js → db3c729ce0c0b2690dc9.js} +1 -1
  77. package/assets/esri/core/workers/chunks/dd13772a5e2eccc6a2bc.js +1 -0
  78. package/assets/esri/core/workers/chunks/dedc333a61081772ca7b.js +1 -0
  79. package/assets/esri/core/workers/chunks/{6f50a9647f026a8d4729.js → e0c8d61c7a85ce15499a.js} +1 -1
  80. package/assets/esri/core/workers/chunks/{199670a3a564ebe3bd79.js → e218bde41ffbcc5194f5.js} +1 -1
  81. package/assets/esri/core/workers/chunks/e21b211913aefde47e30.js +1 -0
  82. package/assets/esri/core/workers/chunks/e287f49184d076af17e2.js +1 -0
  83. package/assets/esri/core/workers/chunks/{bde1d5b0a7717350986e.js → e4019b63a1fe74e2c842.js} +1 -1
  84. package/assets/esri/core/workers/chunks/e8e775758b79c5a084c8.js +1 -0
  85. package/assets/esri/core/workers/chunks/e93dfdede0532a89ffa5.js +1 -0
  86. package/assets/esri/core/workers/chunks/ea595b0df5050eda2a13.js +1 -0
  87. package/assets/esri/core/workers/chunks/eb82ff10cef2bde6e57f.js +1 -0
  88. package/assets/esri/core/workers/chunks/ebc6f4764b82d4104c65.js +1 -0
  89. package/assets/esri/core/workers/chunks/{1305ef8717da6e902a55.js → ec10151a2a95e95a0bb5.js} +1 -1
  90. package/assets/esri/core/workers/chunks/eccba071ced2d922bb85.js +1 -0
  91. package/assets/esri/core/workers/chunks/ee6e0db58dc64410e687.js +1 -0
  92. package/assets/esri/core/workers/chunks/f0a9f161805fc7a30fc5.js +1 -0
  93. package/assets/esri/core/workers/chunks/f2124f4d0f2b8a91f0ea.js +1 -0
  94. package/assets/esri/core/workers/chunks/ff6abdc72076f3994659.js +981 -0
  95. package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
  96. package/assets/esri/themes/base/widgets/_Weather.scss +1 -1
  97. package/assets/esri/themes/dark/main.css +1 -1
  98. package/assets/esri/themes/dark-blue/main.css +1 -1
  99. package/assets/esri/themes/dark-green/main.css +1 -1
  100. package/assets/esri/themes/dark-purple/main.css +1 -1
  101. package/assets/esri/themes/dark-red/main.css +1 -1
  102. package/assets/esri/themes/light/main.css +1 -1
  103. package/assets/esri/themes/light/view.css +1 -1
  104. package/assets/esri/themes/light-blue/main.css +1 -1
  105. package/assets/esri/themes/light-green/main.css +1 -1
  106. package/assets/esri/themes/light-purple/main.css +1 -1
  107. package/assets/esri/themes/light-red/main.css +1 -1
  108. package/assets/esri/widgets/Weather/t9n/Weather.json +1 -1
  109. package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
  110. package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
  111. package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
  112. package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
  113. package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
  114. package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
  115. package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
  116. package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
  117. package/assets/esri/widgets/Weather/t9n/Weather_en.json +1 -1
  118. package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
  119. package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
  120. package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
  121. package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
  122. package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
  123. package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
  124. package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
  125. package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
  126. package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
  127. package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
  128. package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
  129. package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
  130. package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
  131. package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
  132. package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
  133. package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
  134. package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
  135. package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
  136. package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
  137. package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
  138. package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
  139. package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
  140. package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
  141. package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
  142. package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
  143. package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
  144. package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
  145. package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
  146. package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
  147. package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
  148. package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
  149. package/chunks/BlendLayers.glsl.js +2 -2
  150. package/chunks/ChapmanAtmosphere.glsl.js +17 -17
  151. package/chunks/CheckerBoard.glsl.js +3 -3
  152. package/chunks/Clouds.glsl.js +2 -2
  153. package/chunks/CloudsComposition.glsl.js +1 -1
  154. package/chunks/ColorMaterial.glsl.js +12 -12
  155. package/chunks/ComponentShader.glsl.js +3 -3
  156. package/chunks/Compositing.glsl.js +1 -1
  157. package/chunks/DefaultMaterial.glsl.js +33 -33
  158. package/chunks/EdgeShaderProgram.glsl.js +7 -7
  159. package/chunks/Fog.glsl.js +10 -12
  160. package/chunks/HUDMaterial.glsl.js +2 -2
  161. package/chunks/HighlightComposition.glsl.js +5 -5
  162. package/chunks/ImageMaterial.glsl.js +6 -6
  163. package/chunks/LaserlinePath.glsl.js +8 -8
  164. package/chunks/LineCallout.glsl.js +6 -6
  165. package/chunks/MeasurementArrow.glsl.js +1 -1
  166. package/chunks/NativeLine.glsl.js +1 -1
  167. package/chunks/Path.glsl.js +5 -5
  168. package/chunks/Pattern.glsl.js +9 -9
  169. package/chunks/PointRenderer.glsl.js +14 -14
  170. package/chunks/Precipitation.glsl.js +91 -0
  171. package/chunks/RealisticTree.glsl.js +21 -21
  172. package/chunks/RibbonLine.glsl.js +11 -11
  173. package/chunks/SMAA.glsl.js +40 -40
  174. package/chunks/ShadedColorMaterial.glsl.js +12 -12
  175. package/chunks/ShadowCast.glsl.js +6 -6
  176. package/chunks/ShadowHighlight.glsl.js +4 -4
  177. package/chunks/SimpleAtmosphere.glsl.js +3 -3
  178. package/chunks/SlicePlaneMaterial.glsl.js +3 -3
  179. package/chunks/Stars.glsl.js +3 -3
  180. package/chunks/Terrain.glsl.js +11 -11
  181. package/chunks/TextureOnly.glsl.js +2 -2
  182. package/chunks/WaterSurface.glsl.js +5 -5
  183. package/chunks/boundedPlane.js +1 -1
  184. package/chunks/vxlLayer.js +1 -1
  185. package/core/accessorSupport/watch.js +1 -1
  186. package/core/clock.js +1 -1
  187. package/core/jsonMap.js +1 -1
  188. package/core/loadAll.js +1 -1
  189. package/core/promiseUtils.js +1 -1
  190. package/core/reactiveUtils.js +1 -1
  191. package/form/ExpressionInfo.js +1 -1
  192. package/geometry/support/frustum.js +1 -1
  193. package/geometry/support/plane.js +1 -1
  194. package/interfaces.d.ts +232 -38
  195. package/layers/VectorTileLayer.js +1 -1
  196. package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
  197. package/layers/graphics/featureConversionUtils.js +1 -1
  198. package/layers/support/LayerContingentValuesCache.js +1 -1
  199. package/layers/support/TileInfo.js +1 -1
  200. package/package.json +1 -1
  201. package/rest/print.js +1 -1
  202. package/smartMapping/statistics/support/predominanceUtils.d.ts +4 -0
  203. package/support/arcadeOnDemand.js +1 -1
  204. package/support/featureFlags.js +1 -1
  205. package/support/revision.js +1 -1
  206. package/symbols/FillSymbol3DLayer.js +1 -1
  207. package/symbols/IconSymbol3DLayer.js +1 -1
  208. package/symbols/ObjectSymbol3DLayer.js +1 -1
  209. package/symbols/Symbol3D.js +1 -1
  210. package/symbols/WebStyleSymbol.js +1 -1
  211. package/symbols/cim/CIMSymbolRasterizer.js +1 -1
  212. package/symbols/support/IconSymbol3DLayerResource.js +1 -1
  213. package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
  214. package/symbols/support/Symbol3DAnchorPosition2D.js +1 -1
  215. package/symbols/support/Symbol3DAnchorPosition3D.js +1 -1
  216. package/symbols/support/Symbol3DFillMaterial.js +1 -1
  217. package/symbols/support/Symbol3DIconOutline.js +1 -1
  218. package/symbols/support/Symbol3DOutline.js +1 -1
  219. package/symbols/support/Thumbnail.js +1 -1
  220. package/symbols/support/webStyleSymbolUtils.js +1 -1
  221. package/views/2d/MapViewConstraints.js +1 -1
  222. package/views/2d/engine/vectorTiles/SchemaHelper.js +1 -1
  223. package/views/2d/viewpointUtils.js +1 -1
  224. package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
  225. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  226. package/views/3d/environment/CloudsComposition.glsl.js +1 -1
  227. package/views/3d/environment/CloudsGenerator.js +1 -1
  228. package/views/3d/environment/CloudsPresets.js +1 -1
  229. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  230. package/views/3d/environment/Fog.glsl.js +1 -1
  231. package/views/3d/environment/Fog.js +1 -1
  232. package/views/3d/environment/PanoramicAtmosphere.js +1 -1
  233. package/views/3d/environment/Precipitation.glsl.js +5 -0
  234. package/views/3d/environment/Precipitation.js +5 -0
  235. package/views/3d/environment/PrecipitationTechnique.js +5 -0
  236. package/views/3d/environment/RainyWeather.js +1 -1
  237. package/views/3d/environment/SimpleAtmosphere.glsl.js +1 -1
  238. package/views/3d/environment/SimpleAtmosphere.js +1 -1
  239. package/views/3d/environment/SnowyWeather.js +5 -0
  240. package/views/3d/environment/Stars.glsl.js +1 -1
  241. package/views/3d/environment/Stars.js +1 -1
  242. package/views/3d/environment/weather.js +1 -1
  243. package/views/3d/interactive/analysisTools/slice/SliceTool.js +1 -1
  244. package/views/3d/interactive/analysisTools/slice/sliceToolUtils.js +1 -1
  245. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  246. package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
  247. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  248. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  249. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  250. package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
  251. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  252. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  253. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  254. package/views/3d/layers/GraphicsView3D.js +1 -1
  255. package/views/3d/layers/I3SMeshView3D.js +1 -1
  256. package/views/3d/layers/VectorTileLayerView3D.js +1 -1
  257. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  258. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  259. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  260. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  261. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  262. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  263. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  264. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  265. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  266. package/views/3d/layers/graphics/graphicUtils.js +1 -1
  267. package/views/3d/layers/graphics/lineUtils.js +1 -1
  268. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  269. package/views/3d/layers/graphics/polygonUtils.js +1 -1
  270. package/views/3d/layers/graphics/symbolComplexity.js +1 -1
  271. package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
  272. package/views/3d/layers/i3s/PointRenderer.js +1 -1
  273. package/views/3d/layers/support/HeatmapFeatureProcessor.js +5 -0
  274. package/views/3d/layers/support/overlayImageUtils.js +1 -1
  275. package/views/3d/layers/support/patternUtils.js +1 -1
  276. package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
  277. package/views/3d/support/FrustumExtentIntersection.js +1 -1
  278. package/views/3d/support/LaserLineRenderer.js +1 -1
  279. package/views/3d/support/LaserlinePathData.js +1 -1
  280. package/views/3d/support/sunUtils.js +1 -1
  281. package/views/3d/terrain/OverlayRenderer.js +1 -1
  282. package/views/3d/terrain/PatchGeometryFactory.js +1 -1
  283. package/views/3d/terrain/TerrainRenderer.js +1 -1
  284. package/views/3d/terrain/TerrainSurface.js +1 -1
  285. package/views/3d/terrain/Tile.js +1 -1
  286. package/views/3d/terrain/terrainUtils.js +1 -1
  287. package/views/3d/terrain/tileUtils.js +1 -1
  288. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  289. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  290. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  291. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +10 -10
  292. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  293. package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
  294. package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
  295. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  296. package/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js +2 -2
  297. package/views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js +2 -2
  298. package/views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js +2 -2
  299. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +2 -2
  300. package/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js +4 -4
  301. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +1 -1
  302. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js +1 -1
  303. package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +1 -1
  304. package/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js +1 -1
  305. package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js +3 -3
  306. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js +1 -1
  307. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +6 -6
  308. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +12 -12
  309. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js +4 -4
  310. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js +1 -1
  311. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +16 -16
  312. package/views/3d/webgl-engine/core/shaderLibrary/default/RealisticTree.glsl.js +1 -1
  313. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +5 -5
  314. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +3 -3
  315. package/views/3d/webgl-engine/core/shaderLibrary/raster/BasicGrid.glsl.js +2 -2
  316. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeMaterialColor.glsl.js +6 -6
  317. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js +2 -2
  318. package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeShadingNormal.glsl.js +10 -11
  319. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +2 -2
  320. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js +2 -2
  321. package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js +2 -2
  322. package/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js +6 -6
  323. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js +4 -4
  324. package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +6 -6
  325. package/views/3d/webgl-engine/core/shaderLibrary/shading/Reprojection.glsl.js +4 -4
  326. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +5 -5
  327. package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +1 -1
  328. package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +10 -10
  329. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Terrain.glsl.js +1 -1
  330. package/views/3d/webgl-engine/core/shaderLibrary/util/BlendLayers.glsl.js +1 -1
  331. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +4 -4
  332. package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
  333. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  334. package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
  335. package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
  336. package/views/3d/webgl-engine/lib/Geometry.js +1 -1
  337. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  338. package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
  339. package/views/3d/webgl-engine/lib/MagnifierHelper.js +1 -1
  340. package/views/3d/webgl-engine/lib/Material.js +1 -1
  341. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  342. package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
  343. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  344. package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
  345. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  346. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  347. package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
  348. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  349. package/views/3d/webgl-engine/lib/Texture.js +1 -1
  350. package/views/3d/webgl-engine/lib/TextureUniformName.js +4 -0
  351. package/views/3d/webgl-engine/lib/UniformName.js +4 -0
  352. package/views/3d/webgl-engine/lib/VertexAttribute.js +5 -0
  353. package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
  354. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  355. package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
  356. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  357. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  358. package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
  359. package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
  360. package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
  361. package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
  362. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  363. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  364. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  365. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  366. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  367. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  368. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  369. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  370. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  371. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  372. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  373. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  374. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  375. package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
  376. package/views/3d/webgl-engine/materials/VisualVariableMaterialParameters.js +1 -1
  377. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  378. package/views/3d/webgl-engine/materials/internal/DefaultBufferWriter.js +1 -1
  379. package/views/3d/webgl-engine/materials/internal/MaterialUtil.js +1 -1
  380. package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
  381. package/views/3d/webgl-engine/materials/internal/waterMaterialUtils.js +1 -1
  382. package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
  383. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  384. package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
  385. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  386. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  387. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  388. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  389. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  390. package/views/3d/webgl-engine/shaders/HighlightComposition.glsl.js +1 -1
  391. package/views/3d/webgl-engine/shaders/HighlightTechnique.js +1 -1
  392. package/views/3d/webgl-engine/shaders/ImageMaterial.glsl.js +1 -1
  393. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  394. package/views/3d/webgl-engine/shaders/LaserlinePath.glsl.js +1 -1
  395. package/views/3d/webgl-engine/shaders/LaserlinePathTechnique.js +1 -1
  396. package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
  397. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  398. package/views/3d/webgl-engine/shaders/Magnifier.glsl.js +1 -1
  399. package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
  400. package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
  401. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  402. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  403. package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
  404. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  405. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  406. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  407. package/views/3d/webgl-engine/shaders/SMAA.glsl.js +1 -1
  408. package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
  409. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  410. package/views/3d/webgl-engine/shaders/ShadowCastTechnique.js +1 -1
  411. package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
  412. package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
  413. package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
  414. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/AdjustProjectedPosition.glsl.js +10 -10
  415. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/DiscardShortEdges.glsl.js +1 -1
  416. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeShaderProgram.glsl.js +1 -1
  417. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +21 -21
  418. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineAmplitude.glsl.js +6 -6
  419. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineOffset.glsl.js +13 -13
  420. package/views/3d/webgl-engine/shaders/sources/edgeRenderer/UnpackAttributes.glsl.js +6 -6
  421. package/views/MapView.js +1 -1
  422. package/views/SceneView.js +1 -1
  423. package/views/View.js +1 -1
  424. package/views/input/recognizers/DoubleTapDrag.js +1 -1
  425. package/views/input/recognizers/ImmediateDoubleClick.js +1 -1
  426. package/views/input/recognizers/PointerClickHoldAndDrag.js +1 -1
  427. package/views/input/recognizers/SingleAndDoubleClick.js +1 -1
  428. package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
  429. package/views/support/DefaultsFromMap.js +1 -1
  430. package/views/support/WatchUpdatingTracking.js +1 -1
  431. package/views/support/projectionUtils.js +5 -0
  432. package/views/webgl/BufferObject.js +1 -1
  433. package/views/webgl/InstanceCounter.js +1 -1
  434. package/views/webgl/Program.js +1 -1
  435. package/webdoc/support/{Thumbnail.js → SlideThumbnail.js} +1 -1
  436. package/webmap/Bookmark.js +1 -1
  437. package/webmap/Version.js +1 -1
  438. package/webscene/Slide.js +1 -1
  439. package/webscene/Version.js +1 -1
  440. package/webscene/support/SlideVisibleLayer.js +1 -1
  441. package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
  442. package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
  443. package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
  444. package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
  445. package/widgets/BasemapGallery.js +1 -1
  446. package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
  447. package/widgets/Bookmarks.js +1 -1
  448. package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
  449. package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
  450. package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
  451. package/widgets/Search/support/locatorUtils.js +1 -1
  452. package/widgets/Search.js +1 -1
  453. package/widgets/Slice/SliceViewModel.js +1 -1
  454. package/widgets/TimeSlider.js +1 -1
  455. package/widgets/Weather/WeatherViewModel.js +1 -1
  456. package/widgets/Weather/css.js +1 -1
  457. package/widgets/Weather/enums.js +5 -0
  458. package/widgets/Weather.js +1 -1
  459. package/widgets/support/InteractiveToolViewModel.js +1 -1
  460. package/assets/esri/core/workers/chunks/00c5bb5eecb0e89266df.js +0 -1
  461. package/assets/esri/core/workers/chunks/021a37e2b191298e80b7.js +0 -1
  462. package/assets/esri/core/workers/chunks/1370c92c40fd6271553c.js +0 -1
  463. package/assets/esri/core/workers/chunks/14bef72154b3a19561a7.js +0 -1
  464. package/assets/esri/core/workers/chunks/18668dc45eb9e35530df.js +0 -1
  465. package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +0 -1
  466. package/assets/esri/core/workers/chunks/1fbcc8424452d0256bd6.js +0 -1
  467. package/assets/esri/core/workers/chunks/208a7e24e19fc5633dd7.js +0 -1
  468. package/assets/esri/core/workers/chunks/22b09e276c9b9f22f0f8.js +0 -1
  469. package/assets/esri/core/workers/chunks/23b15e7c2f96d260e16c.js +0 -1
  470. package/assets/esri/core/workers/chunks/25a3e9bc0b4c7e0d3165.js +0 -1
  471. package/assets/esri/core/workers/chunks/2792ca40f1e92849247c.js +0 -1
  472. package/assets/esri/core/workers/chunks/2a96f1bba9ce6883e5e0.js +0 -1
  473. package/assets/esri/core/workers/chunks/3231ee3e090bb4cac3fc.js +0 -1
  474. package/assets/esri/core/workers/chunks/36a3f6fb4d1d18fcb642.js +0 -1
  475. package/assets/esri/core/workers/chunks/36e250278b5622ccf068.js +0 -1
  476. package/assets/esri/core/workers/chunks/395ba088d4864588ff66.js +0 -1
  477. package/assets/esri/core/workers/chunks/3aa4194dc5497c57647f.js +0 -1
  478. package/assets/esri/core/workers/chunks/3cc77692b2eee27b9c9e.js +0 -1
  479. package/assets/esri/core/workers/chunks/40a1e713f63ec77110c0.js +0 -1
  480. package/assets/esri/core/workers/chunks/4385a268c2a64281d1c1.js +0 -1
  481. package/assets/esri/core/workers/chunks/46b4bb66a54bbd8e2e57.js +0 -1
  482. package/assets/esri/core/workers/chunks/4bfbf5a34c9207fdcf44.js +0 -1
  483. package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +0 -1
  484. package/assets/esri/core/workers/chunks/5d4863a92b03bebc1b54.js +0 -1
  485. package/assets/esri/core/workers/chunks/5d991b74d958005c26c4.js +0 -1
  486. package/assets/esri/core/workers/chunks/634b5ccd7a3ac67f855d.js +0 -1
  487. package/assets/esri/core/workers/chunks/662d13f68cf3ec92439b.js +0 -1
  488. package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +0 -1
  489. package/assets/esri/core/workers/chunks/7bc5cc5dbf1b7b70ddac.js +0 -1
  490. package/assets/esri/core/workers/chunks/7d661129a0d8c466eeec.js +0 -1
  491. package/assets/esri/core/workers/chunks/8070972c0efb78523b68.js +0 -1
  492. package/assets/esri/core/workers/chunks/85e27fd949475f9a6bbc.js +0 -1
  493. package/assets/esri/core/workers/chunks/8b6ab6202a40fe622833.js +0 -1
  494. package/assets/esri/core/workers/chunks/96ab518eb6ba11333dee.js +0 -1
  495. package/assets/esri/core/workers/chunks/9796d54ff12b6429164a.js +0 -1
  496. package/assets/esri/core/workers/chunks/98986e6601b0366376b4.js +0 -1
  497. package/assets/esri/core/workers/chunks/9cdcf9309d6feda70185.js +0 -1
  498. package/assets/esri/core/workers/chunks/aa861b8eae6c85f3dad4.js +0 -1
  499. package/assets/esri/core/workers/chunks/aace7e1fef256bb961c9.js +0 -1
  500. package/assets/esri/core/workers/chunks/ad081d8e49e7f90c3c26.js +0 -1
  501. package/assets/esri/core/workers/chunks/af5694b4d278cf1db2d9.js +0 -1
  502. package/assets/esri/core/workers/chunks/afbb4f802ca5774f0326.js +0 -1
  503. package/assets/esri/core/workers/chunks/b2c5f92e3d7606297ca9.js +0 -1
  504. package/assets/esri/core/workers/chunks/b8316c6469a543029bc6.js +0 -1
  505. package/assets/esri/core/workers/chunks/ba615f118a3a8970ef25.js +0 -1
  506. package/assets/esri/core/workers/chunks/ba6654a885be4b7a43f0.js +0 -1
  507. package/assets/esri/core/workers/chunks/bf0a65b4be31959f921d.js +0 -1
  508. package/assets/esri/core/workers/chunks/c11474b702dfb94e8e87.js +0 -1
  509. package/assets/esri/core/workers/chunks/c890c7fca27170e3341f.js +0 -1
  510. package/assets/esri/core/workers/chunks/c976785f2391c77d8a30.js +0 -1
  511. package/assets/esri/core/workers/chunks/ca2f5faa01d99c21ec14.js +0 -1
  512. package/assets/esri/core/workers/chunks/cef4af64860ebbfc1c47.js +0 -1
  513. package/assets/esri/core/workers/chunks/cfbffa429d88e7709c3f.js +0 -1
  514. package/assets/esri/core/workers/chunks/d24c4fbc567486b1188f.js +0 -1
  515. package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +0 -981
  516. package/assets/esri/core/workers/chunks/e4f93c55eaefab4192b5.js +0 -1
  517. package/assets/esri/core/workers/chunks/e59764ee8cf25d4f74e2.js +0 -1
  518. package/assets/esri/core/workers/chunks/ec89466f76d0ba22525e.js +0 -1
  519. package/assets/esri/core/workers/chunks/ee45618c45806ab654cb.js +0 -1
  520. package/assets/esri/core/workers/chunks/f467c8f1fce22f6f599c.js +0 -1
  521. package/assets/esri/core/workers/chunks/f4baa5ea2e42b1317941.js +0 -1
  522. package/assets/esri/core/workers/chunks/face43cf5abcd2f5bd9d.js +0 -1
  523. package/assets/esri/core/workers/chunks/ffaf091c6023225cf5aa.js +0 -1
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{glsl as e}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as t}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as o}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function r(){const r=new t;r.vertex.uniforms.add("proj","mat4").add("view","mat4").add("width","float"),r.attributes.add(o.POSITION,"vec3"),r.attributes.add(o.NORMAL,"vec3"),r.attributes.add(o.UV0,"vec2"),r.attributes.add(o.AUXPOS1,"float"),r.varyings.add("vtc","vec2"),r.varyings.add("vlength","float"),r.varyings.add("vradius","float"),r.vertex.code.add(e`void main(void) {
5
+ import{glsl as e}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as t}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as o}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function r(){const r=new t;r.vertex.uniforms.add("proj","mat4").add("view","mat4").add("width","float"),r.attributes.add(o.POSITION,"vec3"),r.attributes.add(o.NORMAL,"vec3"),r.attributes.add(o.UV0,"vec2"),r.attributes.add(o.AUXPOS1,"float"),r.varyings.add("vtc","vec2"),r.varyings.add("vlength","float"),r.varyings.add("vradius","float"),r.vertex.code.add(e`void main(void) {
6
6
  vec3 bitangent = normal;
7
7
  vtc = uv0;
8
8
  vlength = auxpos1;
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexColor as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{OutputHighlight as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{LineStipple as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{symbolAlphaCutoff as s}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{glsl as a}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as d}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as n}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function p(p){const c=new d;return c.include(o,{linearDepth:!1}),c.include(t,p),c.include(l,{...p,stippleRequiresStretchMeasure:!1}),c.vertex.uniforms.add("proj","mat4").add("view","mat4"),p.stippleEnabled&&(c.vertex.uniforms.add("ndcToPixel","vec2"),c.attributes.add(n.UV0,"vec2"),c.attributes.add(n.AUXPOS1,"vec3")),c.attributes.add(n.POSITION,"vec3"),c.varyings.add("vpos","vec3"),c.vertex.code.add(a`void main(void) {
5
+ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as t}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexColor as o}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{OutputHighlight as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{LineStipple as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{symbolAlphaCutoff as s}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{glsl as a}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as d}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as n}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function p(p){const c=new d;return c.include(t,{linearDepth:!1}),c.include(o,p),c.include(l,{...p,stippleRequiresStretchMeasure:!1}),c.vertex.uniforms.add("proj","mat4").add("view","mat4"),p.stippleEnabled&&(c.vertex.uniforms.add("ndcToPixel","vec2"),c.attributes.add(n.UV0,"vec2"),c.attributes.add(n.AUXPOS1,"vec3")),c.attributes.add(n.POSITION,"vec3"),c.varyings.add("vpos","vec3"),c.vertex.code.add(a`void main(void) {
6
6
  vpos = position;
7
7
  forwardNormalizedVertexColor();
8
8
  gl_Position = transformPosition(proj, view, vpos);`),p.stippleEnabled&&(c.vertex.code.add(a`vec4 vpos2 = transformPosition(proj, view, auxpos1);
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as o}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as r}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{PathVertexPosition as l}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js";import{OutputDepth as d}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{EvaluateAmbientOcclusion as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as c}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{multipassTerrainTest as m}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{Normals as g}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js";import{NormalUtils as v}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{ReadShadowMap as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{ColorConversion as u}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as h}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as f}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function b(b){const w=new f;return w.vertex.uniforms.add("proj","mat4").add("view","mat4").add("camPos","vec3").add("localOrigin","vec3"),w.varyings.add("vpos","vec3"),w.include(l,b),b.output!==o.Color&&b.output!==o.Alpha||(w.include(r,{linearDepth:!1}),b.receiveShadows&&w.include(p,b),w.include(a,b),w.varyings.add("vnormal","vec3"),w.varyings.add("vcolor","vec4"),b.multipassTerrainEnabled&&w.varyings.add("depth","float"),w.vertex.code.add(h`
5
+ import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{ShaderOutput as o}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as r}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{PathVertexPosition as l}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js";import{OutputDepth as d}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{EvaluateAmbientOcclusion as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as c}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{multipassTerrainTest as m}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{Normals as g}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js";import{NormalUtils as v}from"../views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js";import{ReadShadowMap as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{ColorConversion as u}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as h}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as f}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";function b(b){const w=new f;return w.vertex.uniforms.add("proj","mat4").add("view","mat4").add("cameraPosition","vec3").add("localOrigin","vec3"),w.varyings.add("vpos","vec3"),w.include(l,b),b.output!==o.Color&&b.output!==o.Alpha||(w.include(r,{linearDepth:!1}),b.receiveShadows&&w.include(p,b),w.include(a,b),w.varyings.add("vnormal","vec3"),w.varyings.add("vcolor","vec4"),b.multipassTerrainEnabled&&w.varyings.add("depth","float"),w.vertex.code.add(h`
6
6
  void main() {
7
7
  vpos = calculateVPos();
8
8
  vnormal = normalize(localNormal());
@@ -14,19 +14,19 @@ import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth
14
14
 
15
15
  vcolor = getColor();
16
16
  }
17
- `)),b.multipassTerrainEnabled&&(w.fragment.include(t),w.include(m,b)),b.output===o.Alpha&&(w.include(i,b),w.fragment.uniforms.add("camPos","vec3"),w.fragment.uniforms.add("localOrigin","vec3"),w.fragment.uniforms.add("opacity","float"),w.fragment.code.add(h`
17
+ `)),b.multipassTerrainEnabled&&(w.fragment.include(t),w.include(m,b)),b.output===o.Alpha&&(w.include(i,b),w.fragment.uniforms.add("cameraPosition","vec3"),w.fragment.uniforms.add("localOrigin","vec3"),w.fragment.uniforms.add("opacity","float"),w.fragment.code.add(h`
18
18
  void main() {
19
19
  discardBySlice(vpos);
20
20
  ${b.multipassTerrainEnabled?"terrainDepthTest(gl_FragCoord, depth);":""}
21
21
  float combinedOpacity = vcolor.a * opacity;
22
22
  gl_FragColor = vec4(combinedOpacity);
23
23
  }
24
- `)),b.output===o.Color&&(w.include(i,b),w.include(c,b),w.include(s,b),b.receiveShadows&&w.include(p,b),w.include(g,b),w.fragment.uniforms.add("camPos","vec3").add("localOrigin","vec3").add("ambient","vec3").add("diffuse","vec3").add("specular","vec3").add("opacity","float"),w.fragment.include(u),w.fragment.code.add(h`
24
+ `)),b.output===o.Color&&(w.include(i,b),w.include(c,b),w.include(s,b),b.receiveShadows&&w.include(p,b),w.include(g,b),w.fragment.uniforms.add("cameraPosition","vec3").add("localOrigin","vec3").add("ambient","vec3").add("diffuse","vec3").add("specular","vec3").add("opacity","float"),w.fragment.include(u),w.fragment.code.add(h`
25
25
  void main() {
26
26
  discardBySlice(vpos);
27
27
  ${b.multipassTerrainEnabled?"terrainDepthTest(gl_FragCoord, depth);":""}
28
28
 
29
- shadingParams.viewDirection = normalize(vpos - camPos);
29
+ shadingParams.viewDirection = normalize(vpos - cameraPosition);
30
30
  shadingParams.normalView = vnormal;
31
31
  vec3 normal = shadingNormal(shadingParams);
32
32
  float ssao = evaluateAmbientOcclusionInverse();
@@ -41,7 +41,7 @@ import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth
41
41
  vec3 shadedColor = evaluateSceneLighting(normal, albedo, shadow, 1.0 - ssao, additionalLight);
42
42
  gl_FragColor = vec4(shadedColor, combinedOpacity);
43
43
  gl_FragColor = highlightSlice(gl_FragColor, vpos);
44
- ${b.OITEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
44
+ ${b.oitEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
45
45
  }
46
46
  `)),b.output!==o.Depth&&b.output!==o.Shadow||(w.include(r,{linearDepth:!0}),w.vertex.uniforms.add("nearFar","vec2"),w.varyings.add("depth","float"),w.vertex.code.add(h`void main() {
47
47
  vpos = calculateVPos();
@@ -2,9 +2,9 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as t}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as a}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexColor as o}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{OutputDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as i}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{multipassTerrainTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{symbolAlphaCutoff as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as s}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as p}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as v}from"../views/3d/webgl-engine/lib/basicInterfaces.js";import{Style as g}from"../views/3d/webgl-engine/materials/PatternStyle.js";const m=.70710678118,u=m,f=.08715574274;function h(h){const b=new p;h.draped||b.extensions.add("GL_OES_standard_derivatives");const y=h.output===e.Depth;b.include(a,{linearDepth:y}),b.include(o,h),b.vertex.uniforms.add("proj","mat4"),b.vertex.uniforms.add("view","mat4"),y&&(b.include(r,h),b.vertex.uniforms.add("cameraNearFar","vec2"),b.varyings.add("linearDepth","float")),h.draped?b.vertex.uniforms.add("worldToScreenRatio","float"):(b.vertex.uniforms.add("worldToScreenPerDistanceRatio","float"),b.vertex.uniforms.add("camPos","vec3"),b.attributes.add(v.BOUNDINGRECT,"mat3")),b.attributes.add(v.POSITION,"vec3"),b.attributes.add(v.UVMAPSPACE,"vec4"),b.varyings.add("vpos","vec3"),b.varyings.add("vuv","vec2"),h.multipassTerrainEnabled&&b.varyings.add("depth","float");const x=h.style===g.ForwardDiagonal||h.style===g.BackwardDiagonal||h.style===g.DiagonalCross;return x&&b.vertex.code.add(s`
6
- const mat2 rotate45 = mat2(${s.float(m)}, ${s.float(-u)},
7
- ${s.float(u)}, ${s.float(m)});
5
+ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as t}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as o}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{VertexColor as r}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{OutputDepth as a}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{OutputHighlight as i}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{ReadLinearDepth as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{multipassTerrainTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{symbolAlphaCutoff as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as c}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as s}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as p}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as v}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{Style as g}from"../views/3d/webgl-engine/materials/PatternStyle.js";const u=.70710678118,m=u,f=.08715574274;function h(h){const b=new p;h.draped||b.extensions.add("GL_OES_standard_derivatives");const y=h.output===e.Depth;b.include(o,{linearDepth:y}),b.include(r,h),b.vertex.uniforms.add("proj","mat4"),b.vertex.uniforms.add("view","mat4"),y&&(b.include(a,h),b.vertex.uniforms.add("nearFar","vec2"),b.varyings.add("linearDepth","float")),h.draped?b.vertex.uniforms.add("worldToScreenRatio","float"):(b.vertex.uniforms.add("worldToScreenPerDistanceRatio","float"),b.vertex.uniforms.add("cameraPosition","vec3"),b.attributes.add(v.BOUNDINGRECT,"mat3")),b.attributes.add(v.POSITION,"vec3"),b.attributes.add(v.UVMAPSPACE,"vec4"),b.varyings.add("vpos","vec3"),b.varyings.add("vuv","vec2"),h.multipassTerrainEnabled&&b.varyings.add("depth","float");const x=h.style===g.ForwardDiagonal||h.style===g.BackwardDiagonal||h.style===g.DiagonalCross;return x&&b.vertex.code.add(s`
6
+ const mat2 rotate45 = mat2(${s.float(u)}, ${s.float(-m)},
7
+ ${s.float(m)}, ${s.float(u)});
8
8
  `),h.draped||(b.vertex.code.add(s`vec3 projectPointToLineSegment(vec3 center, vec3 halfVector, vec3 point) {
9
9
  float projectedLength = dot(halfVector, point - center) / dot(halfVector, halfVector);
10
10
  return center + halfVector * clamp(projectedLength, -1.0, 1.0);
@@ -31,7 +31,7 @@ return rayOrigin + t * rayDir;
31
31
  }
32
32
 
33
33
  // intersect view direction with infinite plane that contains bounding rect
34
- vec3 planeProjected = intersectRayPlane(viewDir, camPos, n, center);
34
+ vec3 planeProjected = intersectRayPlane(viewDir, cameraPosition, n, center);
35
35
 
36
36
  // clip to bounds by projecting to u and v line segments individually
37
37
  vec3 uProjected = projectPointToLineSegment(center, halfU, planeProjected);
@@ -40,7 +40,7 @@ return rayOrigin + t * rayDir;
40
40
  // use to calculate the closest point to camera on bounding rect
41
41
  vec3 closestPoint = uProjected + vProjected - center;
42
42
 
43
- return length(closestPoint - camPos);
43
+ return length(closestPoint - cameraPosition);
44
44
  }
45
45
  `)),b.vertex.code.add(s`
46
46
  vec2 scaledUV() {
@@ -67,9 +67,9 @@ return rayOrigin + t * rayDir;
67
67
  vpos = position;
68
68
  ${h.multipassTerrainEnabled?"depth = (view * vec4(vpos, 1.0)).z;":""}
69
69
  forwardNormalizedVertexColor();
70
- gl_Position = ${y?s`transformPositionWithDepth(proj, view, vpos, cameraNearFar, linearDepth);`:s`transformPosition(proj, view, vpos);`}
70
+ gl_Position = ${y?s`transformPositionWithDepth(proj, view, vpos, nearFar, linearDepth);`:s`transformPosition(proj, view, vpos);`}
71
71
  }
72
- `),b.include(t,h),b.fragment.include(c),b.fragment.uniforms.add("matColor","vec4"),h.draped&&b.fragment.uniforms.add("texelSize","float"),h.output===e.Highlight&&b.include(i),h.multipassTerrainEnabled&&(b.fragment.include(n),b.include(l,h)),h.output!==e.Highlight&&(b.fragment.code.add(s`
72
+ `),b.include(t,h),b.fragment.include(c),b.fragment.uniforms.add("uColor","vec4"),h.draped&&b.fragment.uniforms.add("texelSize","float"),h.output===e.Highlight&&b.include(i),h.multipassTerrainEnabled&&(b.fragment.include(n),b.include(l,h)),h.output!==e.Highlight&&(b.fragment.code.add(s`
73
73
  const float lineWidth = ${s.float(h.lineWidth)};
74
74
  const float spacing = ${s.float(h.patternSpacing)};
75
75
  const float spacingINV = ${s.float(1/h.patternSpacing)};
@@ -113,7 +113,7 @@ return accumulator;
113
113
  void main() {
114
114
  discardBySlice(vpos);
115
115
  ${h.multipassTerrainEnabled?"terrainDepthTest(gl_FragCoord, depth);":""}
116
- vec4 color = ${h.attributeColor?"vColor * matColor;":"matColor;"}
116
+ vec4 color = ${h.attributeColor?"vColor * uColor;":"uColor;"}
117
117
  color = highlightSlice(color, vpos);
118
118
 
119
119
  ${h.output!==e.Highlight?s`color.a *= ${w(h)};`:""}
@@ -124,7 +124,7 @@ return accumulator;
124
124
 
125
125
  ${h.output===e.Alpha?s`gl_FragColor = vec4(color.a);`:""}
126
126
 
127
- ${h.output===e.Color?s`gl_FragColor = color; ${h.OITEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}`:""}
127
+ ${h.output===e.Color?s`gl_FragColor = color; ${h.oitEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}`:""}
128
128
  ${h.output===e.Highlight?s`outputHighlight();`:""}
129
129
  ${h.output===e.Depth?s`outputDepth(linearDepth);`:""};
130
130
  }
@@ -2,11 +2,11 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{OutputHighlight as o}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{RgbaFloatEncoding as t}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{glsl as r}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as a}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as n}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function s(s){const d=new a,c=s.output===e.Color,l=s.output===e.Depth,p=s.output===e.Highlight;return d.extensions.add("GL_OES_standard_derivatives"),d.include(i,s),d.attributes.add(n.POSITION,"vec3"),d.attributes.add(n.COLOR,"vec3"),d.vertex.uniforms.add("uModelViewMatrix","mat4").add("uProjectionMatrix","mat4").add("uScreenMinMaxSize","vec2").add("uPointScale","vec2").add("uClipMin","vec3").add("uClipMax","vec3"),l?(d.vertex.uniforms.add("nearFar","vec2"),d.varyings.add("depth","float")):s.output!==e.Highlight&&d.varyings.add("vColor","vec3"),d.vertex.code.add(r`
5
+ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{OutputHighlight as o}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{RgbaFloatEncoding as t}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{glsl as r}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as a}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as n}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function s(s){const c=new a,d=s.output===e.Color,l=s.output===e.Depth,p=s.output===e.Highlight;return c.extensions.add("GL_OES_standard_derivatives"),c.include(i,s),c.attributes.add(n.POSITION,"vec3"),c.attributes.add(n.COLOR,"vec3"),c.vertex.uniforms.add("modelView","mat4").add("proj","mat4").add("screenMinMaxSize","vec2").add("pointScale","vec2").add("clipMin","vec3").add("clipMax","vec3"),l?(c.vertex.uniforms.add("nearFar","vec2"),c.varyings.add("depth","float")):s.output!==e.Highlight&&c.varyings.add("vColor","vec3"),c.vertex.code.add(r`
6
6
  void main(void) {
7
7
  // Move clipped points outside of clipspace
8
- if (position.x < uClipMin.x || position.y < uClipMin.y || position.z < uClipMin.z ||
9
- position.x > uClipMax.x || position.y > uClipMax.y || position.z > uClipMax.z) {
8
+ if (position.x < clipMin.x || position.y < clipMin.y || position.z < clipMin.z ||
9
+ position.x > clipMax.x || position.y > clipMax.y || position.z > clipMax.z) {
10
10
  gl_Position = vec4(0.0,0.0,0.0,2.0);
11
11
  gl_PointSize = 0.0;
12
12
  return;
@@ -19,33 +19,33 @@ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/Shader
19
19
  }
20
20
 
21
21
  // Position in camera space
22
- vec4 camera = uModelViewMatrix * vec4(position, 1.0);
22
+ vec4 camera = modelView * vec4(position, 1.0);
23
23
 
24
- float pointSize = uPointScale.x;
25
- vec4 position = uProjectionMatrix * camera;
24
+ float pointSize = pointScale.x;
25
+ vec4 position = proj * camera;
26
26
  ${s.drawScreenSize?r`
27
27
  float clampedScreenSize = pointSize;`:r`
28
28
  float pointRadius = 0.5 * pointSize;
29
29
  vec4 cameraOffset = camera + vec4(0.0, pointRadius, 0.0, 0.0);
30
- vec4 positionOffset = uProjectionMatrix * cameraOffset;
30
+ vec4 positionOffset = proj * cameraOffset;
31
31
  float radius = abs(positionOffset.y - position.y);
32
- float viewHeight = uPointScale.y;
32
+ float viewHeight = pointScale.y;
33
33
  // screen diameter = (2 * r / w) * (h / 2)
34
34
  float screenPointSize = (radius / position.w) * viewHeight;
35
- float clampedScreenSize = clamp(screenPointSize, uScreenMinMaxSize.x, uScreenMinMaxSize.y);
35
+ float clampedScreenSize = clamp(screenPointSize, screenMinMaxSize.x, screenMinMaxSize.y);
36
36
  // Shift towards camera, to move rendered point out of terrain i.e. to
37
37
  // the camera-facing end of the virtual point when considering it as a
38
38
  // 3D sphere.
39
39
  camera.xyz -= normalize(camera.xyz) * pointRadius * clampedScreenSize / screenPointSize;
40
- position = uProjectionMatrix * camera;`}
40
+ position = proj * camera;`}
41
41
 
42
42
  gl_PointSize = clampedScreenSize;
43
43
  gl_Position = position;
44
44
 
45
45
  ${l?r`depth = (-camera.z - nearFar[0]) / (nearFar[1] - nearFar[0]);`:""}
46
- ${c?r`vColor = color;`:""}
46
+ ${d?r`vColor = color;`:""}
47
47
  }
48
- `),d.fragment.include(t,s),p&&d.include(o),d.fragment.code.add(r`
48
+ `),c.fragment.include(t,s),p&&c.include(o),c.fragment.code.add(r`
49
49
  void main(void) {
50
50
  vec2 vOffset = gl_PointCoord - vec2(0.5, 0.5);
51
51
  float r2 = dot(vOffset, vOffset);
@@ -55,6 +55,6 @@ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/Shader
55
55
  }
56
56
  ${l?r`gl_FragColor = float2rgba(depth);`:""}
57
57
  ${p?r`outputHighlight();`:""}
58
- ${c?r`gl_FragColor = vec4(vColor, 1.0);`:""}
58
+ ${d?r`gl_FragColor = vec4(vColor, 1.0);`:""}
59
59
  }
60
- `),d}const d=Object.freeze({__proto__:null,build:s});export{d as P,s as b};
60
+ `),c}const c=Object.freeze({__proto__:null,build:s});export{c as P,s as b};
@@ -0,0 +1,91 @@
1
+ /*
2
+ All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
+ See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
+ */
5
+ import{glsl as t}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as e}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as o}from"../views/3d/webgl-engine/lib/VertexAttribute.js";var a;function i(i){const r=new e;return r.attributes.add(o.POSITION,"vec3"),r.attributes.add(o.INSTANCEFEATUREATTRIBUTE,"float"),r.vertex.uniforms.add("cameraPosition","vec3").add("offset","vec3").add("width","float").add("proj","mat4").add("view","mat4").add("time","float"),r.varyings.add("vUv","vec2"),r.vertex.code.add(t`
6
+ //https://www.shadertoy.com/view/4djSRW
7
+ vec3 hash31(float p){
8
+ vec3 p3 = fract(vec3(p) * vec3(0.1031, 0.1030, 0.0973));
9
+ p3 += dot(p3, p3.yzx + 33.33);
10
+ return fract((p3.xxy + p3.yzz) * p3.zyx);
11
+ }
12
+
13
+ float hash11(float p){
14
+ p = fract(p * 0.1031);
15
+ p *= p + 33.33;
16
+ p *= p + p;
17
+ return fract(p);
18
+ }
19
+
20
+ //https://www.geeks3d.com/20141201/how-to-rotate-a-vertex-by-a-quaternion-in-glsl/
21
+ vec3 rotateVectorByQuaternion(vec3 v, vec4 q){
22
+ return 2.0 * cross(q.xyz, v * q.w + cross(q.xyz, v)) + v;
23
+ }
24
+
25
+ void main(void) {
26
+
27
+ vUv = position.xz;
28
+
29
+ vec3 rand = hash31(instanceFeatureAttribute);
30
+
31
+ // Set random position for all particles
32
+ // The hash function space is not high resolution so offset particles by an additional random value
33
+ // This creates grids of 1000 particles which are shifted by random hundreths of the tile width
34
+ // overlaying multiple identical but offset grids
35
+ vec3 randomPosition = 2.0 * (rand + (0.01 + 0.01 * rand) * floor(0.001 * instanceFeatureAttribute)) - 1.0;
36
+
37
+ // Random orientation of rain drops
38
+ float angle = 3.1415 * hash11(instanceFeatureAttribute);
39
+
40
+ vec3 up = vec3(0, 0, 1);
41
+
42
+ // Gravity and wind direction
43
+ vec3 direction = normalize(cameraPosition);
44
+
45
+ vec3 tangent = normalize(cross(direction, up));
46
+
47
+ // Gravity
48
+ vec3 animatedPos = randomPosition + direction * -time;
49
+
50
+ // Rain particles fall straight down and are randomly oriented
51
+ // Snow particles have random sinusoid trajectories and are rotated to face the camera
52
+ ${i.type===a.RAIN?t`
53
+
54
+ // Random rotation for particle
55
+ vec3 rotationAxis = up;
56
+ vec4 quat = vec4(rotationAxis * sin(angle), cos(angle));
57
+ vec3 transformedPos = rotateVectorByQuaternion(vec3(0.2, 0.2, 4.0) * (position - vec3(0.5, 0.0, 0.5)), quat);
58
+
59
+ // Rotate particle to planetary position
60
+ rotationAxis = tangent;
61
+ angle = 0.5 * -acos(dot(direction, up));
62
+ quat = vec4(rotationAxis * sin(angle), cos(angle));
63
+ transformedPos = rotateVectorByQuaternion(transformedPos, quat);
64
+
65
+ vec4 pos = mat4(mat3(view)) * vec4(transformedPos + (mod(width * animatedPos - offset, width) - 0.5 * width), 1.0);
66
+ gl_Position = proj * pos;
67
+ `:t`
68
+ vec3 rotationAxis = direction;
69
+ vec4 quat = vec4(rotationAxis * sin(angle), cos(angle));
70
+
71
+ tangent = rotateVectorByQuaternion(tangent, quat);
72
+ // Random sinusoid from friction
73
+ animatedPos += tangent * 0.25 * sin(dot(animatedPos, direction));
74
+ vec4 pos = mat4(mat3(view)) * vec4((mod(width * animatedPos - offset, width) - 0.5 * width), 1.0);
75
+ gl_Position = proj * (0.5 * vec4(position.xzy, 0.0) + pos);
76
+ `}
77
+ }
78
+ `),r.fragment.uniforms.add("heightFade","float"),r.fragment.code.add(t`
79
+ void main() {
80
+
81
+ // Cut off corners of the triangle
82
+ if(vUv.x < 0.0 || vUv.y < 0.0){
83
+ discard;
84
+ }
85
+
86
+ float d = length(vUv - vec2(0.5));
87
+
88
+ ${i.type===a.RAIN?t`d = 0.5 * smoothstep(0.5, 0.0, d);`:t`d = smoothstep(0.5, 0.1, d);`}
89
+ gl_FragColor = vec4(heightFade * d);
90
+ }
91
+ `),r}!function(t){t[t.RAIN=0]="RAIN",t[t.SNOW=1]="SNOW"}(a||(a={}));const r=Object.freeze({__proto__:null,get PrecipitationType(){return a},build:i});export{a as P,r as a,i as b};
@@ -2,11 +2,11 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth as o}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{Offset as r}from"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js";import{ShaderOutput as a}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as l}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{InstancedDoublePrecision as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js";import{NormalAttribute as d}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{PositionAttribute as s}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js";import{SymbolColor as n}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js";import{TextureCoordinateAttribute as c}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{VertexColor as g}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{VerticalOffset as m}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js";import{DefaultMaterialAuxiliaryPasses as v}from"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js";import{ReadLinearDepth as p}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{EvaluateAmbientOcclusion as b}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as u}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{multipassTerrainTest as f}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{PhysicallyBasedRendering as h}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js";import{PhysicallyBasedRenderingParameters as w,PBRMode as x}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMap as y}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{VisualVariables as C}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{symbolAlphaCutoff as L,DiscardOrAdjustAlpha as M}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{MixExternalColor as j}from"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js";import{glsl as O}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as E}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as _}from"../views/3d/webgl-engine/lib/basicInterfaces.js";function A(A){const P=new E,S=P.vertex.code,F=P.fragment.code;return P.vertex.uniforms.add("proj","mat4").add("view","mat4").add("camPos","vec3").add("localOrigin","vec3"),P.include(s),P.varyings.add("vpos","vec3"),P.include(C,A),P.include(t,A),P.include(m,A),A.output!==a.Color&&A.output!==a.Alpha||(P.include(d,A),P.include(l,{linearDepth:!1}),A.offsetBackfaces&&P.include(r),A.instancedColor&&P.attributes.add(_.INSTANCECOLOR,"vec4"),P.varyings.add("vNormalWorld","vec3"),P.varyings.add("localvpos","vec3"),A.multipassTerrainEnabled&&P.varyings.add("depth","float"),P.include(c,A),P.include(o,A),P.include(n,A),P.include(g,A),P.vertex.uniforms.add("externalColor","vec4"),P.varyings.add("vcolorExt","vec4"),S.add(O`
5
+ import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth as o}from"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js";import{Offset as r}from"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js";import{ShaderOutput as a}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as l}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{InstancedDoublePrecision as t}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js";import{NormalAttribute as d}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{PositionAttribute as n}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js";import{SymbolColor as s}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js";import{TextureCoordinateAttribute as c}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{VertexColor as g}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js";import{VerticalOffset as m}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js";import{DefaultMaterialAuxiliaryPasses as v}from"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js";import{ReadLinearDepth as p}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{EvaluateAmbientOcclusion as b}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import{EvaluateSceneLighting as u}from"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import{multipassTerrainTest as f}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{PhysicallyBasedRendering as h}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js";import{PhysicallyBasedRenderingParameters as w,PBRMode as x}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{ReadShadowMap as y}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js";import{VisualVariables as C}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{symbolAlphaCutoff as L,DiscardOrAdjustAlpha as M}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{MixExternalColor as j}from"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js";import{glsl as O}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as E}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as A}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function _(_){const P=new E,S=P.vertex.code,F=P.fragment.code;return P.vertex.uniforms.add("proj","mat4").add("view","mat4").add("cameraPosition","vec3").add("localOrigin","vec3"),P.include(n),P.varyings.add("vpos","vec3"),P.include(C,_),P.include(t,_),P.include(m,_),_.output!==a.Color&&_.output!==a.Alpha||(P.include(d,_),P.include(l,{linearDepth:!1}),_.offsetBackfaces&&P.include(r),_.instancedColor&&P.attributes.add(A.INSTANCECOLOR,"vec4"),P.varyings.add("vNormalWorld","vec3"),P.varyings.add("localvpos","vec3"),_.multipassTerrainEnabled&&P.varyings.add("depth","float"),P.include(c,_),P.include(o,_),P.include(s,_),P.include(g,_),P.vertex.uniforms.add("externalColor","vec4"),P.varyings.add("vcolorExt","vec4"),S.add(O`
6
6
  void main(void) {
7
7
  forwardNormalizedVertexColor();
8
8
  vcolorExt = externalColor;
9
- ${A.instancedColor?"vcolorExt *= instanceColor;":""}
9
+ ${_.instancedColor?"vcolorExt *= instanceColor;":""}
10
10
  vcolorExt *= vvColor();
11
11
  vcolorExt *= getSymbolColor();
12
12
  forwardColorMixMode();
@@ -21,45 +21,45 @@ import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth
21
21
  vNormalWorld = dpNormal(vvLocalNormal(normalModel()));
22
22
  vpos = addVerticalOffset(vpos, localOrigin);
23
23
  gl_Position = transformPosition(proj, view, vpos);
24
- ${A.offsetBackfaces?"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, camPos);":""}
24
+ ${_.offsetBackfaces?"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, cameraPosition);":""}
25
25
  }
26
- ${A.multipassTerrainEnabled?O`depth = (view * vec4(vpos, 1.0)).z;`:""}
26
+ ${_.multipassTerrainEnabled?O`depth = (view * vec4(vpos, 1.0)).z;`:""}
27
27
  forwardLinearDepth();
28
28
  forwardTextureCoordinates();
29
29
  }
30
- `)),A.output===a.Alpha&&(P.include(i,A),P.include(M,A),A.multipassTerrainEnabled&&(P.fragment.include(p),P.include(f,A)),P.fragment.uniforms.add("camPos","vec3").add("localOrigin","vec3").add("opacity","float").add("layerOpacity","float"),P.fragment.uniforms.add("view","mat4"),A.hasColorTexture&&P.fragment.uniforms.add("tex","sampler2D"),P.fragment.include(j),F.add(O`
30
+ `)),_.output===a.Alpha&&(P.include(i,_),P.include(M,_),_.multipassTerrainEnabled&&(P.fragment.include(p),P.include(f,_)),P.fragment.uniforms.add("cameraPosition","vec3").add("localOrigin","vec3").add("opacity","float").add("layerOpacity","float"),P.fragment.uniforms.add("view","mat4"),_.hasColorTexture&&P.fragment.uniforms.add("tex","sampler2D"),P.fragment.include(j),F.add(O`
31
31
  void main() {
32
32
  discardBySlice(vpos);
33
- ${A.multipassTerrainEnabled?O`terrainDepthTest(gl_FragCoord, depth);`:""}
34
- ${A.hasColorTexture?O`
33
+ ${_.multipassTerrainEnabled?O`terrainDepthTest(gl_FragCoord, depth);`:""}
34
+ ${_.hasColorTexture?O`
35
35
  vec4 texColor = texture2D(tex, vuv0);
36
- ${A.textureAlphaPremultiplied?"texColor.rgb /= texColor.a;":""}
36
+ ${_.textureAlphaPremultiplied?"texColor.rgb /= texColor.a;":""}
37
37
  discardOrAdjustAlpha(texColor);`:O`vec4 texColor = vec4(1.0);`}
38
- ${A.attributeColor?O`
38
+ ${_.attributeColor?O`
39
39
  float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:O`
40
40
  float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));
41
41
  `}
42
42
 
43
43
  gl_FragColor = vec4(opacity_);
44
44
  }
45
- `)),A.output===a.Color&&(P.include(i,A),P.include(u,A),P.include(b,A),P.include(M,A),A.receiveShadows&&P.include(y,A),A.multipassTerrainEnabled&&(P.fragment.include(p),P.include(f,A)),P.fragment.uniforms.add("camPos","vec3").add("localOrigin","vec3").add("ambient","vec3").add("diffuse","vec3").add("opacity","float").add("layerOpacity","float"),P.fragment.uniforms.add("view","mat4"),A.hasColorTexture&&P.fragment.uniforms.add("tex","sampler2D"),P.include(w,A),P.include(h,A),P.fragment.include(j),F.add(O`
45
+ `)),_.output===a.Color&&(P.include(i,_),P.include(u,_),P.include(b,_),P.include(M,_),_.receiveShadows&&P.include(y,_),_.multipassTerrainEnabled&&(P.fragment.include(p),P.include(f,_)),P.fragment.uniforms.add("cameraPosition","vec3").add("localOrigin","vec3").add("ambient","vec3").add("diffuse","vec3").add("opacity","float").add("layerOpacity","float"),P.fragment.uniforms.add("view","mat4"),_.hasColorTexture&&P.fragment.uniforms.add("tex","sampler2D"),P.include(w,_),P.include(h,_),P.fragment.include(j),F.add(O`
46
46
  void main() {
47
47
  discardBySlice(vpos);
48
- ${A.multipassTerrainEnabled?O`terrainDepthTest(gl_FragCoord, depth);`:""}
49
- ${A.hasColorTexture?O`
48
+ ${_.multipassTerrainEnabled?O`terrainDepthTest(gl_FragCoord, depth);`:""}
49
+ ${_.hasColorTexture?O`
50
50
  vec4 texColor = texture2D(tex, vuv0);
51
- ${A.textureAlphaPremultiplied?"texColor.rgb /= texColor.a;":""}
51
+ ${_.textureAlphaPremultiplied?"texColor.rgb /= texColor.a;":""}
52
52
  discardOrAdjustAlpha(texColor);`:O`vec4 texColor = vec4(1.0);`}
53
- vec3 viewDirection = normalize(vpos - camPos);
54
- ${A.pbrMode===x.Normal?"applyPBRFactors();":""}
53
+ vec3 viewDirection = normalize(vpos - cameraPosition);
54
+ ${_.pbrMode===x.Normal?"applyPBRFactors();":""}
55
55
  float ssao = evaluateAmbientOcclusionInverse();
56
56
  ssao *= getBakedOcclusion();
57
57
 
58
58
  float additionalAmbientScale = additionalDirectedAmbientLight(vpos + localOrigin);
59
59
  vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;
60
- ${A.receiveShadows?"float shadow = readShadowMap(vpos, linearDepth);":A.viewingMode===e.Global?"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);":"float shadow = 0.0;"}
60
+ ${_.receiveShadows?"float shadow = readShadowMap(vpos, linearDepth);":_.viewingMode===e.Global?"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);":"float shadow = 0.0;"}
61
61
  vec3 matColor = max(ambient, diffuse);
62
- ${A.attributeColor?O`
62
+ ${_.attributeColor?O`
63
63
  vec3 albedo_ = mixExternalColor(vColor.rgb * matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));
64
64
  float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:O`
65
65
  vec3 albedo_ = mixExternalColor(matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));
@@ -74,11 +74,11 @@ import{ViewingMode as e}from"../views/ViewingMode.js";import{ForwardLinearDepth
74
74
  float treeRadialFalloff = vColor.r;
75
75
  float backLightFactor = 0.5 * treeRadialFalloff * alignmentLightView * transmittance * (1.0 - shadow);
76
76
  additionalLight += backLightFactor * lightingMainIntensity;`}
77
- ${A.pbrMode===x.Normal||A.pbrMode===x.Schematic?A.viewingMode===e.Global?O`vec3 normalGround = normalize(vpos + localOrigin);`:O`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:O``}
78
- ${A.pbrMode===x.Normal||A.pbrMode===x.Schematic?O`
77
+ ${_.pbrMode===x.Normal||_.pbrMode===x.Schematic?_.viewingMode===e.Global?O`vec3 normalGround = normalize(vpos + localOrigin);`:O`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:O``}
78
+ ${_.pbrMode===x.Normal||_.pbrMode===x.Schematic?O`
79
79
  float additionalAmbientIrradiance = additionalAmbientIrradianceFactor * lightingMainIntensity[2];
80
80
  vec3 shadedColor = evaluateSceneLightingPBR(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight, viewDirection, normalGround, mrr, emission, additionalAmbientIrradiance);`:"vec3 shadedColor = evaluateSceneLighting(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight);"}
81
81
  gl_FragColor = highlightSlice(vec4(shadedColor, opacity_), vpos);
82
- ${A.OITEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
82
+ ${_.oitEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
83
83
  }
84
- `)),P.include(v,A),P}const P=Object.freeze({__proto__:null,build:A});export{P as R,A as b};
84
+ `)),P.include(v,_),P}const P=Object.freeze({__proto__:null,build:_});export{P as R,_ as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.23/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as t}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{RibbonVertexPosition as i}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{OutputDepth as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{ReadLinearDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{LineStipple as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{multipassTerrainTest as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{symbolAlphaCutoff as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as p}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as d}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as c}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as m}from"../views/3d/webgl-engine/lib/basicInterfaces.js";const g=1;var v;function f(f){const h=new c,D=f.capType!==v.BUTT,u=f.capType===v.ROUND,x=f.stippleEnabled&&u,S=f.falloffEnabled||x,b=f.innerColorEnabled||u,L=f.stippleEnabled&&f.stippleScaleWithLineWidth||u,y=f.stippleEnabled&&f.stippleScaleWithLineWidth,C=f.stippleEnabled||u;return h.include(s),h.include(i,f),h.include(o,{...f,stippleRequiresStretchMeasure:!0}),f.output===e.Depth&&h.include(n,f),h.vertex.uniforms.add("proj","mat4").add("view","mat4").add("cameraNearFar","vec2").add("pixelRatio","float").add("miterLimit","float").add("screenSize","vec2"),h.attributes.add(m.POSITION,"vec3"),h.attributes.add(m.SUBDIVISIONFACTOR,"float"),h.attributes.add(m.UV0,"vec2"),h.attributes.add(m.AUXPOS1,"vec3"),h.attributes.add(m.AUXPOS2,"vec3"),h.varyings.add("vColor","vec4"),h.varyings.add("vpos","vec3"),h.varyings.add("linearDepth","float"),f.multipassTerrainEnabled&&h.varyings.add("depth","float"),L&&h.varyings.add("vLineWidth","float"),y&&h.varyings.add("vLineSizeInv","float"),b&&h.varyings.add("vLineDistance","float"),S&&h.varyings.add("vLineDistanceNorm","float"),f.falloffEnabled&&h.fragment.uniforms.add("falloff","float"),f.innerColorEnabled&&(h.fragment.uniforms.add("innerColor","vec4"),h.fragment.uniforms.add("innerWidth","float")),u&&h.varyings.add("vSegmentSDF","float"),h.vertex.code.add(d`#define PERPENDICULAR(v) vec2(v.y, -v.x);
5
+ import{ShaderOutput as e}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{Slice as t}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{RibbonVertexPosition as i}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{OutputDepth as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{ReadLinearDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js";import{LineStipple as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{multipassTerrainTest as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{symbolAlphaCutoff as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js";import{ColorConversion as p}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{glsl as d}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{ShaderBuilder as c}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{VertexAttribute as g}from"../views/3d/webgl-engine/lib/VertexAttribute.js";const v=1;var m;function f(f){const h=new c,D=f.capType!==m.BUTT,u=f.capType===m.ROUND,x=f.stippleEnabled&&u,S=f.falloffEnabled||x,b=f.innerColorEnabled||u,L=f.stippleEnabled&&f.stippleScaleWithLineWidth||u,y=f.stippleEnabled&&f.stippleScaleWithLineWidth,C=f.stippleEnabled||u;return h.include(s),h.include(i,f),h.include(o,{...f,stippleRequiresStretchMeasure:!0}),f.output===e.Depth&&h.include(n,f),h.vertex.uniforms.add("proj","mat4").add("view","mat4").add("nearFar","vec2").add("pixelRatio","float").add("miterLimit","float").add("screenSize","vec2"),h.attributes.add(g.POSITION,"vec3"),h.attributes.add(g.SUBDIVISIONFACTOR,"float"),h.attributes.add(g.UV0,"vec2"),h.attributes.add(g.AUXPOS1,"vec3"),h.attributes.add(g.AUXPOS2,"vec3"),h.varyings.add("vColor","vec4"),h.varyings.add("vpos","vec3"),h.varyings.add("linearDepth","float"),f.multipassTerrainEnabled&&h.varyings.add("depth","float"),L&&h.varyings.add("vLineWidth","float"),y&&h.varyings.add("vLineSizeInv","float"),b&&h.varyings.add("vLineDistance","float"),S&&h.varyings.add("vLineDistanceNorm","float"),f.falloffEnabled&&h.fragment.uniforms.add("falloff","float"),f.innerColorEnabled&&(h.fragment.uniforms.add("innerColor","vec4"),h.fragment.uniforms.add("innerWidth","float")),u&&h.varyings.add("vSegmentSDF","float"),h.vertex.code.add(d`#define PERPENDICULAR(v) vec2(v.y, -v.x);
6
6
  float interp(float ncp, vec4 a, vec4 b) {
7
7
  return (-ncp - a.z) / (b.z - a.z);
8
8
  }
@@ -17,13 +17,13 @@ posNdc.xy *= screenSize / posNdc.w;
17
17
  return posNdc;
18
18
  }`),h.vertex.code.add(d`
19
19
  void clipAndTransform(inout vec4 pos, inout vec4 prev, inout vec4 next, in bool isStartVertex) {
20
- float vnp = cameraNearFar[0] * 0.99;
20
+ float vnp = nearFar[0] * 0.99;
21
21
 
22
22
  //current pos behind ncp --> we need to clip
23
- if(pos.z > -cameraNearFar[0]) {
23
+ if(pos.z > -nearFar[0]) {
24
24
  if (!isStartVertex) {
25
25
  //previous in front of ncp
26
- if(prev.z < -cameraNearFar[0]) {
26
+ if(prev.z < -nearFar[0]) {
27
27
  pos = mix(prev, pos, interp(vnp, prev, pos));
28
28
  next = pos;
29
29
  } else {
@@ -32,7 +32,7 @@ return posNdc;
32
32
  }
33
33
  //next in front of ncp
34
34
  if(isStartVertex) {
35
- if(next.z < -cameraNearFar[0]) {
35
+ if(next.z < -nearFar[0]) {
36
36
  pos = mix(pos, next, interp(vnp, pos, next));
37
37
  prev = pos;
38
38
  } else {
@@ -42,17 +42,17 @@ return posNdc;
42
42
  } else {
43
43
  //current position visible
44
44
  //previous behind ncp
45
- if (prev.z > -cameraNearFar[0]) {
45
+ if (prev.z > -nearFar[0]) {
46
46
  prev = mix(pos, prev, interp(vnp, pos, prev));
47
47
  }
48
48
  //next behind ncp
49
- if (next.z > -cameraNearFar[0]) {
49
+ if (next.z > -nearFar[0]) {
50
50
  next = mix(next, pos, interp(vnp, next, pos));
51
51
  }
52
52
  }
53
53
 
54
54
  ${f.multipassTerrainEnabled?"depth = pos.z;":""}
55
- linearDepth = (-pos.z - cameraNearFar[0]) / (cameraNearFar[1] - cameraNearFar[0]);
55
+ linearDepth = (-pos.z - nearFar[0]) / (nearFar[1] - nearFar[0]);
56
56
 
57
57
  pos = projectAndScale(pos);
58
58
  next = projectAndScale(next);
@@ -147,7 +147,7 @@ if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),f.roundJoins?h.
147
147
  endDir = normalize(endDir);
148
148
  endDir = PERPENDICULAR(endDir);
149
149
 
150
- float factor = ${f.stippleEnabled?d`min(1.0, subdivisionFactor * ${d.float((g+2)/(g+1))})`:d`subdivisionFactor`};
150
+ float factor = ${f.stippleEnabled?d`min(1.0, subdivisionFactor * ${d.float((v+2)/(v+1))})`:d`subdivisionFactor`};
151
151
 
152
152
  float rotationAngle = acos(clamp(dot(startDir, endDir), -1.0, 1.0));
153
153
  joinDisplacementDir = rotate(startDir, -sign(uv0.y) * factor * rotationAngle);
@@ -280,8 +280,8 @@ color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`),h.fragment.code
280
280
 
281
281
  ${f.output===e.Alpha?d`gl_FragColor = vec4(finalColor.a);`:""}
282
282
  ${f.output===e.Color?d`gl_FragColor = highlightSlice(finalColor, vpos);`:""}
283
- ${f.output===e.Color&&f.OITEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
283
+ ${f.output===e.Color&&f.oitEnabled?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
284
284
  ${f.output===e.Highlight?d`gl_FragColor = vec4(1.0);`:""}
285
285
  ${f.output===e.Depth?d`outputDepth(linearDepth);`:""}
286
286
  }
287
- `),h}!function(e){e[e.BUTT=0]="BUTT",e[e.SQUARE=1]="SQUARE",e[e.ROUND=2]="ROUND",e[e.COUNT=3]="COUNT"}(v||(v={}));const h=Object.freeze({__proto__:null,NUM_ROUND_JOIN_SUBDIVISIONS:g,get CapType(){return v},build:f});export{v as C,g as N,h as R,f as b};
287
+ `),h}!function(e){e[e.BUTT=0]="BUTT",e[e.SQUARE=1]="SQUARE",e[e.ROUND=2]="ROUND",e[e.COUNT=3]="COUNT"}(m||(m={}));const h=Object.freeze({__proto__:null,NUM_ROUND_JOIN_SUBDIVISIONS:v,get CapType(){return m},build:f});export{m as C,v as N,h as R,f as b};