@arcgis/core 5.0.0-next.16 → 5.0.0-next.18

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 (262) hide show
  1. package/analysis/ElevationProfile/ElevationProfileLineInput.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/{adf7ccf4ef629211c7ee.js → 08aacbfb651cc2e1c054.js} +1 -1
  4. package/assets/esri/core/workers/chunks/234b52b2a391631ceff6.js +1 -0
  5. package/assets/esri/core/workers/chunks/{658cd45b5fb304fd840a.js → 3aa77696c5ea54a238da.js} +1 -1
  6. package/assets/esri/core/workers/chunks/{8f3503b2fb6cd38757b9.js → 458e87902abc24b375da.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{57b410198d83bf0ab708.js → 4a89e120be142ab58a27.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{49571d6875de1f2e7e25.js → 4b9dfdc23ba3d6ebcc1b.js} +2 -2
  9. package/assets/esri/core/workers/chunks/{a410dcf80d17a2383337.js → 65a4099bdbe31834d0cc.js} +1 -1
  10. package/assets/esri/core/workers/chunks/722da7a39a0ad9300752.js +1 -0
  11. package/assets/esri/core/workers/chunks/{cdb4664fd59860ddeb5a.js → 72f1c3d97e7b9546c113.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{bc318b6fef192cee2a72.js → 76e945da8f30d8641c3d.js} +20 -20
  13. package/assets/esri/core/workers/chunks/{319c3f46f2afb8f3e5a9.js → 89c9cf7f799858d14c76.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{e19cd07df8ce87e18832.js → 8b33732e3c2924c1f60d.js} +1 -1
  15. package/assets/esri/core/workers/chunks/98739414c107ad78e4d8.js +1 -0
  16. package/assets/esri/core/workers/chunks/{8b73db0f4d6714396eb0.js → a6fa90eab77ac0e1cdfc.js} +1 -1
  17. package/assets/esri/core/workers/chunks/ac366221e8636b60aee5.js +1 -0
  18. package/assets/esri/core/workers/chunks/{23e17b745adf71a5efc7.js → aca72ca7f43f70eb8077.js} +1 -1
  19. package/assets/esri/core/workers/chunks/ad0c7225941437d18408.js +1 -0
  20. package/assets/esri/core/workers/chunks/b30897952494a3e5b9fe.js +1 -0
  21. package/assets/esri/core/workers/chunks/bfd3d81e8e148be99686.js +1 -0
  22. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  23. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  24. package/assets/esri/themes/base/widgets/_Editor.scss +2 -1
  25. package/assets/esri/themes/base/widgets/_FeatureForm.scss +1 -1
  26. package/assets/esri/themes/dark/main.css +1 -1
  27. package/assets/esri/themes/light/main.css +1 -1
  28. package/assets/esri/themes/light/view.css +1 -1
  29. package/chunks/GaussianSplat.glsl.js +2 -2
  30. package/chunks/ImageMaterial.glsl.js +1 -1
  31. package/chunks/lyr3DMain.js +1 -1
  32. package/config.js +1 -1
  33. package/graphic/graphicOriginUtils.js +1 -1
  34. package/interfaces.d.ts +113 -54
  35. package/intl/locale.js +1 -1
  36. package/kernel.js +1 -1
  37. package/layers/BingMapsLayer.js +1 -1
  38. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  39. package/layers/support/attributionUtils.js +5 -0
  40. package/layers/support/fieldConfigUtils.js +1 -1
  41. package/layers/support/fieldFormatUtils.js +1 -1
  42. package/layers/video/VideoController.js +1 -1
  43. package/libs/parquet/parquet.js +1 -1
  44. package/package.json +1 -1
  45. package/support/revision.js +1 -1
  46. package/symbols/cim/SDFHelper.js +1 -1
  47. package/symbols/cim/cimAnalyzer.js +1 -1
  48. package/views/2d/LabelManager.js +1 -1
  49. package/views/2d/analysis/ElevationProfile/ElevationProfileLineVisualization2D.js +1 -1
  50. package/views/2d/engine/flow/dataUtils.js +1 -1
  51. package/views/2d/engine/webgl/FeatureTile.js +1 -1
  52. package/views/2d/engine/webgl/OverlayMultipoint.js +1 -1
  53. package/views/2d/engine/webgl/TextureManager.js +1 -1
  54. package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
  55. package/views/2d/engine/webgl/animations/store/AnimationStore.js +1 -1
  56. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedPolyShader.js +1 -1
  57. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedFillShader.js +1 -1
  58. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedLineShader.js +1 -1
  59. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedPolyMeshWriters.js +1 -1
  60. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedTechnique.js +1 -1
  61. package/views/2d/engine/webgl/shaderGraph/techniques/colorize/ColorizeTechnique.js +1 -1
  62. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityResources.js +1 -1
  63. package/views/2d/engine/webgl/shaderGraph/techniques/drop-shadow/DropShadowTechnique.js +1 -1
  64. package/views/2d/engine/webgl/shaderGraph/techniques/opacity/OpacityTechnique.js +1 -1
  65. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
  66. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterHighlightTechnique.js +1 -1
  67. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  68. package/views/2d/engine/webgl/textureUtils.js +1 -1
  69. package/views/2d/layers/features/FeatureContainer.js +1 -1
  70. package/views/2d/layers/features/Processor.js +1 -1
  71. package/views/2d/layers/features/processor/BinningStrategy.js +1 -1
  72. package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
  73. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  74. package/views/2d/layers/features/support/FeatureMetadata.js +1 -1
  75. package/views/3d/GroundView3D.js +1 -1
  76. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  77. package/views/3d/analysis/ElevationProfile/ElevationProfileGeometryVisualization3D.js +1 -1
  78. package/views/3d/analysis/Slice/RotateManipulator.js +1 -1
  79. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillComputation.js +1 -1
  80. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementTool.js +1 -1
  81. package/views/3d/analysis/images/Factory.js +1 -1
  82. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  83. package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
  84. package/views/3d/environment/CloudsCompositionTechnique.js +1 -1
  85. package/views/3d/environment/CloudsTechnique.js +1 -1
  86. package/views/3d/environment/EnvironmentManager.js +1 -1
  87. package/views/3d/environment/FogTechnique.js +1 -1
  88. package/views/3d/environment/NoiseTextureAtlasTechnique.js +1 -1
  89. package/views/3d/environment/PrecipitationTechnique.js +1 -1
  90. package/views/3d/environment/SimpleAtmosphereTechnique.js +1 -1
  91. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  92. package/views/3d/layers/DrapedSubView3D.js +1 -1
  93. package/views/3d/layers/FlowSubView3D.js +1 -1
  94. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  95. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  96. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  97. package/views/3d/layers/MediaLayerView3D.js +1 -1
  98. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  99. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  100. package/views/3d/layers/SceneLayerView3D.js +1 -1
  101. package/views/3d/layers/TiledLayerView3D.js +1 -1
  102. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  103. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  104. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  105. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  106. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  107. package/views/3d/layers/graphics/pipeline/rendering/FeaturePipelineRenderManager.js +1 -1
  108. package/views/3d/layers/graphics/wosrLoader.js +1 -1
  109. package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
  110. package/views/3d/support/QualityProfile.js +5 -0
  111. package/views/3d/support/QualitySettings.js +1 -1
  112. package/views/3d/support/StreamTextureCollection.js +1 -1
  113. package/views/3d/support/TextureCollection.js +1 -1
  114. package/views/3d/support/engineContent/marker.js +1 -1
  115. package/views/3d/support/engineContent/sdfPrimitives.js +1 -1
  116. package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
  117. package/views/3d/support/flow/FlowWorker.js +1 -1
  118. package/views/3d/support/flow/FlowWorkerHandle.js +1 -1
  119. package/views/3d/support/flow/StreamlineResources3D.js +1 -1
  120. package/views/3d/support/flow/StreamlineResources3DOverlay.js +1 -1
  121. package/views/3d/support/flow/StreamlineResources3DShape.js +1 -1
  122. package/views/3d/support/flow/constants.js +1 -1
  123. package/views/3d/support/flow/loadUtils.js +1 -1
  124. package/views/3d/support/gaussianSplatting/GaussianSplatOrderTexture.js +1 -1
  125. package/views/3d/support/popupHitTest.js +1 -1
  126. package/views/3d/terrain/BlendLayersTechnique.js +1 -1
  127. package/views/3d/terrain/OverlayRenderer.js +1 -1
  128. package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
  129. package/views/3d/terrain/TerrainSurface.js +1 -1
  130. package/views/3d/terrain/TileAgent.js +1 -1
  131. package/views/3d/terrain/TileCompositor.js +1 -1
  132. package/views/3d/webgl-engine/Stage.js +1 -1
  133. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  134. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  135. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  136. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  137. package/views/3d/webgl-engine/core/material/MaterialBase.js +1 -1
  138. package/views/3d/webgl-engine/core/material/RenderTexture.js +1 -1
  139. package/views/3d/webgl-engine/core/shaderTechnique/{ReloadableShaderModule.js → ReloadableShader.js} +1 -1
  140. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
  141. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
  142. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
  143. package/views/3d/webgl-engine/effects/glow/GlowBlurTechnique.js +1 -1
  144. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechnique.js +1 -1
  145. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  146. package/views/3d/webgl-engine/effects/haze/HazeCompositingTechnique.js +1 -1
  147. package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
  148. package/views/3d/webgl-engine/effects/highlight/HighlightApplyTechnique.js +1 -1
  149. package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
  150. package/views/3d/webgl-engine/effects/highlight/HighlightDownsampleTechnique.js +1 -1
  151. package/views/3d/webgl-engine/effects/highlight/HighlightToSingleTechnique.js +1 -1
  152. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightTechnique.js +1 -1
  153. package/views/3d/webgl-engine/effects/laserlines/LaserlinePathTechnique.js +1 -1
  154. package/views/3d/webgl-engine/effects/laserlines/LaserlineTechnique.js +1 -1
  155. package/views/3d/webgl-engine/effects/magnifier/MagnifierTechnique.js +1 -1
  156. package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
  157. package/views/3d/webgl-engine/effects/smaa/SMAABlendWeightsTechnique.js +1 -1
  158. package/views/3d/webgl-engine/effects/smaa/SMAABlurTechnique.js +1 -1
  159. package/views/3d/webgl-engine/effects/smaa/SMAAEdgeDetectTechnique.js +1 -1
  160. package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
  161. package/views/3d/webgl-engine/effects/ssao/SSAOBlurTechnique.js +1 -1
  162. package/views/3d/webgl-engine/effects/ssao/SSAOTechnique.js +1 -1
  163. package/views/3d/webgl-engine/effects/stars/StarsTechnique.js +1 -1
  164. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  165. package/views/3d/webgl-engine/lib/AnimationTimeStep.js +1 -1
  166. package/views/3d/webgl-engine/lib/BasisUtil.js +1 -1
  167. package/views/3d/webgl-engine/lib/DDSUtil.js +1 -1
  168. package/views/3d/webgl-engine/lib/GLTextureMaterial.js +1 -1
  169. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  170. package/views/3d/webgl-engine/lib/ManagedTexture.js +5 -0
  171. package/views/3d/webgl-engine/lib/OrderIndependentTransparency.js +1 -1
  172. package/views/3d/webgl-engine/lib/Program.js +1 -1
  173. package/views/3d/webgl-engine/lib/RenderFeature.js +1 -1
  174. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  175. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  176. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  177. package/views/3d/webgl-engine/lib/TextTextureFactory.js +1 -1
  178. package/views/3d/webgl-engine/lib/TextureRepository.js +1 -1
  179. package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
  180. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  181. package/views/3d/webgl-engine/lib/glUtil3D.js +1 -1
  182. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  183. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  184. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  185. package/views/3d/webgl-engine/materials/internal/WaterTextureRepository.js +1 -1
  186. package/views/3d/webgl-engine/materials/stippleTextureRepository.js +1 -1
  187. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  188. package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
  189. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  190. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  191. package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
  192. package/views/3d/webgl-engine/shaders/CutFillCompositionTechnique.js +1 -1
  193. package/views/3d/webgl-engine/shaders/CutFillDepthTechnique.js +1 -1
  194. package/views/3d/webgl-engine/shaders/CutFillMaskTechnique.js +1 -1
  195. package/views/3d/webgl-engine/shaders/CutFillReductionTechnique.js +1 -1
  196. package/views/3d/webgl-engine/shaders/CutFillTargetDepthTechnique.js +1 -1
  197. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  198. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  199. package/views/3d/webgl-engine/shaders/GaussianSplatCompositionTechnique.js +1 -1
  200. package/views/3d/webgl-engine/shaders/GaussianSplatDepthCompositionTechnique.js +1 -1
  201. package/views/3d/webgl-engine/shaders/GaussianSplatDepthTechnique.js +1 -1
  202. package/views/3d/webgl-engine/shaders/GaussianSplatTechnique.js +1 -1
  203. package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
  204. package/views/3d/webgl-engine/shaders/HUDCompositingTechnique.js +1 -1
  205. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  206. package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
  207. package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
  208. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  209. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  210. package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
  211. package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
  212. package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
  213. package/views/3d/webgl-engine/shaders/OverlayCompositingTechnique.js +1 -1
  214. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  215. package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
  216. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  217. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  218. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  219. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  220. package/views/3d/webgl-engine/shaders/ShadowCastClearTechnique.js +1 -1
  221. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
  222. package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechnique.js +1 -1
  223. package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
  224. package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
  225. package/views/GroundView.js +1 -1
  226. package/views/SceneView.js +1 -1
  227. package/views/analysis/ElevationProfile/ElevationProfileTool.js +1 -1
  228. package/views/analysis/ElevationProfile/types.d.ts +5 -0
  229. package/views/analysis/ElevationProfile/types.js +5 -0
  230. package/views/support/layerViewUtils.js +1 -1
  231. package/views/webgl/Texture.js +1 -1
  232. package/views/webgl/VertexAttributeLocations.js +1 -1
  233. package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
  234. package/widgets/Attribution/AttributionViewModel.js +1 -1
  235. package/widgets/Editor/MergeFeaturesWorkflow.js +1 -1
  236. package/widgets/Editor/SplitFeatureWorkflow.js +1 -1
  237. package/widgets/Editor/UpdateWorkflow.js +1 -1
  238. package/widgets/Editor/Workflow.js +1 -1
  239. package/widgets/Editor/components/CreateFeaturesPanelContent.js +1 -1
  240. package/widgets/Editor/components/PendingFeatureList.js +1 -1
  241. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  242. package/widgets/Editor.js +1 -1
  243. package/widgets/Feature/support/featureUtils.js +1 -1
  244. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
  245. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
  246. package/widgets/FeatureTable/FieldColumn.js +1 -1
  247. package/widgets/FeatureTable/Grid/Column.js +1 -1
  248. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  249. package/widgets/OrientedImageryViewer/adapters/view/MapViewAdapter.js +1 -1
  250. package/widgets/OrientedImageryViewer/adapters/view/SceneViewAdapter.js +1 -1
  251. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  252. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  253. package/assets/esri/core/workers/chunks/38ee69125da60464d5a1.js +0 -1
  254. package/assets/esri/core/workers/chunks/4f0016111fd84c612f41.js +0 -1
  255. package/assets/esri/core/workers/chunks/8208dfa8f7fae7e616b9.js +0 -1
  256. package/assets/esri/core/workers/chunks/847f4fc39100fac1df01.js +0 -1
  257. package/assets/esri/core/workers/chunks/ab005fe84952f0676020.js +0 -1
  258. package/assets/esri/core/workers/chunks/bc19a232076d98825eef.js +0 -1
  259. package/assets/esri/core/workers/chunks/c3dcfe26c2c3c829762d.js +0 -1
  260. package/views/3d/support/DisplayQualityProfile.js +0 -5
  261. package/views/3d/webgl-engine/lib/Texture.js +0 -5
  262. /package/views/3d/webgl-engine/lib/{ITexture.js → IManagedTexture.js} +0 -0
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../../core/shaderTechnique/ShaderTechnique.js";import{SilhouetteEdgeLocations as s,RegularEdgeLocations as o}from"./bufferLayouts.js";import{E as t}from"../../../../../chunks/EdgeShader.glsl.js";import{makePipelineState as i,defaultColorWrite as d,separateBlendingParams as n}from"../../../../webgl/renderState.js";class a extends r{constructor(r,i){super(r,i,new e(t,()=>import("../../shaders/sources/edgeRenderer/EdgeShader.glsl.js")),i.silhouette?s:o)}initializePipeline(){return i({blending:n(1,1,0,1,32774,32776),depthTest:{func:515},colorWrite:d})}}export{a as EdgeShaderTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../../core/Logger.js";import"../../../../../core/has.js";import"../../../../../core/RandomLCG.js";import"../../../../../core/Error.js";import{subclass as r}from"../../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../../core/shaderTechnique/ShaderTechnique.js";import{SilhouetteEdgeLocations as i,RegularEdgeLocations as t}from"./bufferLayouts.js";import{E as d}from"../../../../../chunks/EdgeShader.glsl.js";import{makePipelineState as c,defaultColorWrite as a,separateBlendingParams as n}from"../../../../webgl/renderState.js";let m=class extends s{constructor(e,r){super(e,r,r.silhouette?i:t),this.shader=new o(d,()=>import("../../shaders/sources/edgeRenderer/EdgeShader.glsl.js"))}initializePipeline(){return c({blending:n(1,1,0,1,32774,32776),depthTest:{func:515},colorWrite:a})}};m=e([r("esri.views.3d.webgl-engine.lib.edgeRendering.EdgeShaderTechnique")],m);export{m as EdgeShaderTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{hasNativeFloat16Array as r,makeFloat16Array as e}from"../../../../geometry/support/float16.js";import{Pos2TexF16 as t,Pos2TexF32 as o,Pos2 as n}from"./DefaultVertexBufferLayouts.js";import{VertexArrayObject as f}from"./VertexArrayObject.js";import{Texture as s}from"../../../webgl/Texture.js";import{TextureDescriptor as m}from"../../../webgl/TextureDescriptor.js";import{VertexBuffer as u}from"../../../webgl/VertexBuffer.js";function a(s,m=0,a=-1,i=1){const p=1===m,w=p?r?new Float32Array([a,a,0,i,a,0,a,i,0,i,i,0]):new Float32Array([a,a,0,0,i,a,1,0,a,i,0,1,i,i,1,1]):new Float32Array([a,a,i,a,a,i,i,i]);if(p&&r){const r=e(w.buffer);r[10]=r[17]=r[22]=r[23]=1}return new f(s,new u(s,p?r?t:o:n,w))}const i=4;function p(r){const e=new m(i);return e.samplingMode=9728,new s(r,e)}export{p as createEmptyTexture,a as createQuadVAO};
5
+ import{hasNativeFloat16Array as r,makeFloat16Array as e}from"../../../../geometry/support/float16.js";import{Pos2TexF16 as t,Pos2TexF32 as o,Pos2 as n}from"./DefaultVertexBufferLayouts.js";import{VertexArrayObject as f}from"./VertexArrayObject.js";import{Texture as m}from"../../../webgl/Texture.js";import{TextureDescriptor as s}from"../../../webgl/TextureDescriptor.js";import{VertexBuffer as u}from"../../../webgl/VertexBuffer.js";function a(m,s=0,a=-1,i=1){const p=1===s,w=p?r?new Float32Array([a,a,0,i,a,0,a,i,0,i,i,0]):new Float32Array([a,a,0,0,i,a,1,0,a,i,0,1,i,i,1,1]):new Float32Array([a,a,i,a,a,i,i,i]);if(p&&r){const r=e(w.buffer);r[10]=r[17]=r[22]=r[23]=1}return new f(m,new u(m,p?r?t:o:n,w))}const i=4;function p(r){const e=new s(i);return e.samplingMode=9728,new m(r,e)}export{p as createEmptyTexture,a as createQuadVAO};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{BufferViewFloat as e}from"../../../../geometry/support/buffer/BufferView.js";import{isHighlightOrOID as t,isColor as r}from"../core/shaderLibrary/ShaderOutput.js";import i from"../lib/GLMaterial.js";import{isUpdatableTexture as s}from"../lib/ITexture.js";import{MaterialParameters as a}from"../lib/Material.js";import{OITPolygonOffsetLimit as o}from"../lib/OrderIndependentTransparency.js";import{assert as n}from"../lib/Util.js";import{DefaultBufferWriter as u}from"./DefaultBufferWriter.js";import{TriangleMaterial as p}from"./TriangleMaterial.js";import{writeBufferFloat as l,writeAttribute as c}from"./internal/bufferWriterUtils.js";import{getLayout as h,ImageMaterialTechnique as f}from"../shaders/ImageMaterialTechnique.js";import{ImageMaterialTechniqueConfiguration as m}from"../shaders/ImageMaterialTechniqueConfiguration.js";class g extends p{constructor(e){super(e,_),this.supportsEdges=!0,this.produces=new Map([[2,e=>t(e)],[4,e=>r(e)&&this.parameters.writeDepth],[8,e=>r(e)&&!this.parameters.writeDepth],[18,e=>r(e)||t(e)]]),this._configuration=new m(e.draped)}dispose(){this.setParameters({texture:void 0})}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=t.hasOccludees,this._configuration.oitPass=t.oitPass,this._configuration.enableOffset=t.camera.relativeElevation<o,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration.perspectiveInterpolation=this.parameters.perspectiveInterpolation,this._configuration}get visible(){return!0}createGLMaterial(e){return new d(e)}createBufferWriter(){return new x(h(this.parameters))}}class d extends i{constructor(e){super({...e,...e.material.parameters}),this.parameters=e;const t=this._material.parameters.texture;s(t)&&e.textures.updater.add(t)}dispose(){this.parameters.textures.updater.remove(this._material.parameters.texture)}beginSlot(e){return this.getTechnique(f,e)}}class x extends u{write(t,r,i,s,a,o){for(const u of this.layout.fields.keys()){const s=i.get(u);if(s)if("perspectiveDivide"===u){n(1===s.size);const t=a.getField(u,e);t&&l(s,t,o)}else c(u,s,t,r,a,o)}return null}}class _ extends a{constructor(e,t){super(),this.texture=e,this.draped=t,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=0,this.opacity=1,this.perspectiveInterpolation=!1}get glTexture(){return this.texture.glTexture}}export{g as ImageMaterial,_ as Parameters};
5
+ import{BufferViewFloat as e}from"../../../../geometry/support/buffer/BufferView.js";import{isHighlightOrOID as t,isColor as r}from"../core/shaderLibrary/ShaderOutput.js";import i from"../lib/GLMaterial.js";import{isUpdatableTexture as s}from"../lib/IManagedTexture.js";import{MaterialParameters as a}from"../lib/Material.js";import{OITPolygonOffsetLimit as o}from"../lib/OrderIndependentTransparency.js";import{assert as n}from"../lib/Util.js";import{DefaultBufferWriter as u}from"./DefaultBufferWriter.js";import{TriangleMaterial as p}from"./TriangleMaterial.js";import{writeBufferFloat as c,writeAttribute as h}from"./internal/bufferWriterUtils.js";import{getLayout as l,ImageMaterialTechnique as m}from"../shaders/ImageMaterialTechnique.js";import{ImageMaterialTechniqueConfiguration as f}from"../shaders/ImageMaterialTechniqueConfiguration.js";class d extends p{constructor(e){super(e,T),this.supportsEdges=!0,this.produces=new Map([[2,e=>t(e)],[4,e=>r(e)&&this.parameters.writeDepth],[8,e=>r(e)&&!this.parameters.writeDepth],[18,e=>r(e)||t(e)]]),this._configuration=new f(e.draped)}dispose(){this.setParameters({texture:void 0})}getConfiguration(e,t){return super.getConfiguration(e,t,this._configuration),this._configuration.cullFace=this.parameters.cullFace,this._configuration.hasSlicePlane=this.parameters.hasSlicePlane,this._configuration.writeDepth=this.parameters.writeDepth,this._configuration.hasOccludees=t.hasOccludees,this._configuration.oitPass=t.oitPass,this._configuration.enableOffset=t.camera.relativeElevation<o,this._configuration.terrainDepthTest=t.terrainDepthTest,this._configuration.cullAboveTerrain=t.cullAboveTerrain,this._configuration.perspectiveInterpolation=this.parameters.perspectiveInterpolation,this._configuration}get visible(){return!0}createGLMaterial(e){return new g(e)}createBufferWriter(){return new x(l(this.parameters))}}class g extends i{constructor(e){super({...e,...e.material.parameters}),this.parameters=e;const t=this._material.parameters.managedTexture;s(t)&&e.textures.updater.add(t)}dispose(){this.parameters.textures.updater.remove(this._material.parameters.managedTexture)}beginSlot(e){return this.getTechnique(m,e)}}class x extends u{write(t,r,i,s,a,o){for(const u of this.layout.fields.keys()){const s=i.get(u);if(s)if("perspectiveDivide"===u){n(1===s.size);const t=a.getField(u,e);t&&c(s,t,o)}else h(u,s,t,r,a,o)}return null}}class T extends a{constructor(e,t){super(),this.managedTexture=e,this.draped=t,this.writeDepth=!0,this.hasSlicePlane=!1,this.cullFace=0,this.opacity=1,this.perspectiveInterpolation=!1}get texture(){return this.managedTexture.texture}}export{d as ImageMaterial,T as Parameters};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{freeze as e,create as r,ZEROS as t}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{newLayout as i}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as o}from"../core/shaderLibrary/ShaderOutput.js";import{PathVertexPositionPassParameters as s}from"../core/shaderLibrary/attributes/PathVertexPosition.glsl.js";import{ReloadableShaderModule as l}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as a,depthOnlyOutputBuffersOr as n}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as c}from"../effects/geometry/olidUtils.js";import{OITPolygonOffset as u,oitDepthTest as f,blending as m,getDrawBuffers as p}from"../lib/OrderIndependentTransparency.js";import{stencilBaseAllZerosParams as d,stencilWriteMaskOn as h}from"../lib/StencilUtils.js";import{advancedMRRFactors as b}from"./pbrUtils.js";import{P as g}from"../../../../chunks/Path.glsl.js";import{makePipelineState as j,defaultColorWrite as v,defaultDepthWrite as S,frontFaceCullingParams as y}from"../../../webgl/renderState.js";class P extends s{constructor(){super(...arguments),this.ambient=e(.2,.2,.2),this.diffuse=e(.8,.8,.8),this.opacity=1,this.origin=r(),this.modelTransformation=null,this.mrrFactors=b,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=t}}class V extends a{constructor(e,r){super(e,r,new l(g,()=>import("../shaders/Path.glsl.js")),x(r).locations)}initializePipeline(e){const{output:r,transparent:t,hasSlicePlane:i,doubleSidedMode:s,hasOccludees:l,oitPass:a}=e,c=0===a,b=2===a;return j({blending:o(r)&&t?m(a):null,culling:i&&!t&&0!==s?y:null,depthTest:{func:f(a)},depthWrite:c||b?S:null,drawBuffers:n(r,p(a,r)),colorWrite:v,stencilWrite:l?h:null,stencilTest:l?d:null,polygonOffset:c||b?null:u})}}function x(e){const r=i().vec3f("position").vec4f16("profileVertexAndNormal").vec2i16("profileRight",{glNormalized:!0}).vec2i16("profileUp",{glNormalized:!0});return e.hasVVSize&&r.f32("sizeFeatureAttribute"),e.hasVVColor&&r.f32("colorFeatureAttribute"),e.hasVVOpacity&&r.f32("opacityFeatureAttribute"),c()&&r.vec4u8("olidColor"),r.vec3f16("profileAuxData"),r.freeze()}export{P as PathPassParameters,V as PathTechnique,x as getLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{freeze as t,create as i,ZEROS as o}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as l}from"../core/shaderLibrary/ShaderOutput.js";import{PathVertexPositionPassParameters as a}from"../core/shaderLibrary/attributes/PathVertexPosition.glsl.js";import{ReloadableShader as n}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as c,depthOnlyOutputBuffersOr as m}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as p}from"../effects/geometry/olidUtils.js";import{OITPolygonOffset as u,oitDepthTest as f,blending as h,getDrawBuffers as d}from"../lib/OrderIndependentTransparency.js";import{stencilBaseAllZerosParams as b,stencilWriteMaskOn as g}from"../lib/StencilUtils.js";import{advancedMRRFactors as j}from"./pbrUtils.js";import{P as v}from"../../../../chunks/Path.glsl.js";import{makePipelineState as S,defaultColorWrite as y,defaultDepthWrite as P,frontFaceCullingParams as T}from"../../../webgl/renderState.js";class V extends a{constructor(){super(...arguments),this.ambient=t(.2,.2,.2),this.diffuse=t(.8,.8,.8),this.opacity=1,this.origin=i(),this.modelTransformation=null,this.mrrFactors=j,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=o}}let x=class extends c{constructor(e,r){super(e,r,z(r).locations),this.shader=new n(v,()=>import("../shaders/Path.glsl.js"))}initializePipeline(e){const{output:r,transparent:t,hasSlicePlane:i,doubleSidedMode:o,hasOccludees:s,oitPass:a}=e,n=0===a,c=2===a;return S({blending:l(r)&&t?h(a):null,culling:i&&!t&&0!==o?T:null,depthTest:{func:f(a)},depthWrite:n||c?P:null,drawBuffers:m(r,d(a,r)),colorWrite:y,stencilWrite:s?g:null,stencilTest:s?b:null,polygonOffset:n||c?null:u})}};function z(e){const r=s().vec3f("position").vec4f16("profileVertexAndNormal").vec2i16("profileRight",{glNormalized:!0}).vec2i16("profileUp",{glNormalized:!0});return e.hasVVSize&&r.f32("sizeFeatureAttribute"),e.hasVVColor&&r.f32("colorFeatureAttribute"),e.hasVVOpacity&&r.f32("opacityFeatureAttribute"),p()&&r.vec4u8("olidColor"),r.vec3f16("profileAuxData"),r.freeze()}x=e([r("esri.views.3d.webgl-engine.materials.PathTechnique")],x);export{V as PathPassParameters,x as PathTechnique,z as getLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{WaterDistortionPassParameters as e}from"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as s}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as o,getDrawBuffers as a,depthWrite as i,oitDepthTest as n,blending as l}from"../lib/OrderIndependentTransparency.js";import{PositionUvf32OlidLayout as d,PositionUvf32Layout as c}from"./DefaultLayouts.js";import{W as p}from"../../../../chunks/WaterSurface.glsl.js";import{makePipelineState as f,defaultColorWrite as m}from"../../../webgl/renderState.js";class u extends e{}class h extends t{constructor(e,t){super(e,t,new r(p,()=>import("../shaders/WaterSurface.glsl.js")),s()?d.locations:c.locations)}initializePipeline(e){const{oitPass:r,output:t,transparent:s,draped:d}=e;return f({blending:3!==t&&9!==t&&10!==t&&s?l(r):null,depthTest:d?null:{func:n(r)},depthWrite:i(e),drawBuffers:a(r,t),colorWrite:m,polygonOffset:o(e)})}}export{u as WaterMaterialPassParameters,h as WaterTechnique};
5
+ import{__decorate as r}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as e}from"../../../../core/accessorSupport/decorators/subclass.js";import{WaterDistortionPassParameters as o}from"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as i}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as a,getDrawBuffers as n,depthWrite as l,oitDepthTest as c,blending as m}from"../lib/OrderIndependentTransparency.js";import{PositionUvf32OlidLayout as p,PositionUvf32Layout as d}from"./DefaultLayouts.js";import{W as f}from"../../../../chunks/WaterSurface.glsl.js";import{makePipelineState as u,defaultColorWrite as h}from"../../../webgl/renderState.js";class j extends o{}let g=class extends t{constructor(r,e){super(r,e,i()?p.locations:d.locations),this.shader=new s(f,()=>import("../shaders/WaterSurface.glsl.js"))}initializePipeline(r){const{oitPass:e,output:o,transparent:s,draped:t}=r;return u({blending:3!==o&&9!==o&&10!==o&&s?m(e):null,depthTest:t?null:{func:c(e)},depthWrite:l(r),drawBuffers:n(e,o),colorWrite:h,polygonOffset:a(r)})}};g=r([e("esri.views.3d.webgl-engine.materials.WaterTechnique")],g);export{j as WaterMaterialPassParameters,g as WaterTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import{getAssetUrl as r}from"../../../../../assets.js";import s from"../../../../../core/Accessor.js";import{createTask as t}from"../../../../../core/asyncUtils.js";import a from"../../../../../core/Logger.js";import{abortMaybe as o,disposeMaybe as i}from"../../../../../core/maybe.js";import{throwIfAborted as m}from"../../../../../core/promiseUtils.js";import{property as p}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/RandomLCG.js";import{subclass as c}from"../../../../../core/accessorSupport/decorators/subclass.js";import{requestImage as l}from"../../../../../request/image.js";import{NoParameters as n}from"../../../../webgl/NoParameters.js";import{Texture as u}from"../../../../webgl/Texture.js";import{TextureDescriptor as h}from"../../../../webgl/TextureDescriptor.js";let g=class extends s{constructor(){super(...arguments),this._passParameters=new d,this._resourcesTask=null}get passParameters(){return this._passParameters}destroy(){this._resourcesTask=o(this._resourcesTask),this._passParameters.waveNormal=i(this._passParameters.waveNormal),this._passParameters.wavePerturbation=i(this._passParameters.wavePerturbation)}get updating(){return!!this._resourcesTask&&!this._resourcesTask.finished}ensureResources(e){return this._resourcesTask||(this._resourcesTask=t(async s=>{await Promise.allSettled([this._loadImageResource(e,r("esri/images/materials/water/normals.jpg"),e=>this._passParameters.waveNormal=e,s),this._loadImageResource(e,r("esri/images/materials/water/perturbation.jpg"),e=>this._passParameters.wavePerturbation=e,s)])})),this._resourcesTask.finished?2:1}async _loadImageResource(e,r,s,t){try{const a=await l(r,{signal:t});m(t);const o=new h(a.width,a.height);o.pixelFormat=6407,o.samplingMode=9987,o.hasMipmap=!0,o.maxAnisotropy=8,s(new u(e,o,a))}catch(o){a.getLogger(this).error("Failed to load water material normal texture.",o)}}};e([p()],g.prototype,"_resourcesTask",void 0),e([p({type:Boolean,readOnly:!0})],g.prototype,"updating",null),g=e([c("esri.views.3d.webgl-engine.materials.internal.WaterTextureRepository")],g);class d extends n{}export{d as WaterTexturePassParameters,g as WaterTextureRepository};
5
+ import{__decorate as r}from"tslib";import{getAssetUrl as e}from"../../../../../assets.js";import s from"../../../../../core/Accessor.js";import{createTask as t}from"../../../../../core/asyncUtils.js";import a from"../../../../../core/Logger.js";import{abortMaybe as o,disposeMaybe as i}from"../../../../../core/maybe.js";import{throwIfAborted as m}from"../../../../../core/promiseUtils.js";import{property as p}from"../../../../../core/accessorSupport/decorators/property.js";import"../../../../../core/has.js";import"../../../../../core/RandomLCG.js";import{subclass as c}from"../../../../../core/accessorSupport/decorators/subclass.js";import{requestImage as l}from"../../../../../request/image.js";import{NoParameters as n}from"../../../../webgl/NoParameters.js";import{Texture as u}from"../../../../webgl/Texture.js";import{TextureDescriptor as h}from"../../../../webgl/TextureDescriptor.js";let g=class extends s{constructor(){super(...arguments),this._passParameters=new d,this._resourcesTask=null}get passParameters(){return this._passParameters}destroy(){this._resourcesTask=o(this._resourcesTask),this._passParameters.waveNormal=i(this._passParameters.waveNormal),this._passParameters.wavePerturbation=i(this._passParameters.wavePerturbation)}get updating(){return!!this._resourcesTask&&!this._resourcesTask.finished}ensureResources(r){return this._resourcesTask||(this._resourcesTask=t(async s=>{await Promise.allSettled([this._loadImageResource(r,e("esri/images/materials/water/normals.jpg"),r=>this._passParameters.waveNormal=r,s),this._loadImageResource(r,e("esri/images/materials/water/perturbation.jpg"),r=>this._passParameters.wavePerturbation=r,s)])})),this._resourcesTask.finished?2:1}async _loadImageResource(r,e,s,t){try{const a=await l(e,{signal:t});m(t);const o=new h(a.width,a.height);o.pixelFormat=6407,o.samplingMode=9987,o.hasMipmap=!0,o.maxAnisotropy=8,s(new u(r,o,a))}catch(o){a.getLogger(this).error("Failed to load water material normal texture.",o)}}};r([p()],g.prototype,"_resourcesTask",void 0),r([p({type:Boolean,readOnly:!0})],g.prototype,"updating",null),g=r([c("esri.views.3d.webgl-engine.materials.internal.WaterTextureRepository")],g);class d extends n{}export{d as WaterTexturePassParameters,g as WaterTextureRepository};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ProceduralTextureRepository as t}from"./ProceduralTextureRepository.js";import{PixelType as e,SizedPixelFormat as r}from"../../../webgl/enums.js";import{Texture as o}from"../../../webgl/Texture.js";import{TextureDescriptor as n}from"../../../webgl/TextureDescriptor.js";function i(i,u){return new t(t=>{const{data:u,textureSize:l}=a(t),p=new n(l,1);return p.dataType=e.FLOAT,p.pixelFormat=6403,p.internalFormat=r.R16F,p.wrapMode=10497,new o(i,p,u)},t=>`${t.pattern.join(",")}-r${t.pixelRatio}`,u)}function a(t){const e=u(t),r=1/t.pixelRatio,o=l(t),n=[];let i=1;for(const u of e){for(let t=0;t<u;t++){const e=i*(Math.min(t,u-1-t)+.5)*r;n.push(e)}i=-i}const a=Math.round(e[0]/2);return{data:new Float32Array([...n.slice(a),...n.slice(0,a)]),textureSize:o}}function u(t){return t.pattern.map(e=>Math.round(e*t.pixelRatio))}function l(t){if(null==t)return 1;const e=u(t);return Math.floor(e.reduce((t,e)=>t+e))}export{l as computeTextureSize,i as createStippleTextureRepository};
5
+ import{ProceduralTextureRepository as t}from"./ProceduralTextureRepository.js";import{PixelType as r,SizedPixelFormat as e}from"../../../webgl/enums.js";import{Texture as o}from"../../../webgl/Texture.js";import{TextureDescriptor as n}from"../../../webgl/TextureDescriptor.js";function i(i,u){return new t(t=>{const{data:u,textureSize:l}=a(t),p=new n(l,1);return p.dataType=r.FLOAT,p.pixelFormat=6403,p.internalFormat=e.R16F,p.wrapMode=10497,new o(i,p,u)},t=>`${t.pattern.join(",")}-r${t.pixelRatio}`,u)}function a(t){const r=u(t),e=1/t.pixelRatio,o=l(t),n=[];let i=1;for(const u of r){for(let t=0;t<u;t++){const r=i*(Math.min(t,u-1-t)+.5)*e;n.push(r)}i=-i}const a=Math.round(r[0]/2);return{data:new Float32Array([...n.slice(a),...n.slice(0,a)]),textureSize:o}}function u(t){return t.pattern.map(r=>Math.round(r*t.pixelRatio))}function l(t){if(null==t)return 1;const r=u(t);return Math.floor(r.reduce((t,r)=>t+r))}export{l as computeTextureSize,i as createStippleTextureRepository};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{toConst as r}from"../../../../core/compilerUtils.js";import{unpackFloatRGBA as s}from"../../../../core/floatRGBA.js";import has from"../../../../core/has.js";import i from"../../../../core/Logger.js";import{removeMaybe as n,destroyMaybe as o}from"../../../../core/maybe.js";import{watch as a,initial as h,syncAndInitial as l}from"../../../../core/reactiveUtils.js";import{addFrameTask as p}from"../../../../core/scheduling.js";import{Milliseconds as d}from"../../../../core/time.js";import{property as c}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/RandomLCG.js";import{subclass as m}from"../../../../core/accessorSupport/decorators/subclass.js";import{isMoon as u,isMars as f}from"../../../../geometry/support/spatialReferenceUtils.js";import{ChapmanAtmosphere as _}from"../../environment/ChapmanAtmosphere.js";import{CloudsComposition as g}from"../../environment/CloudsComposition.js";import{Fog as w}from"../../environment/Fog.js";import{LocalAtmosphere as x}from"../../environment/LocalAtmosphere.js";import{MarsAtmosphere as v}from"../../environment/MarsAtmosphere.js";import{ComponentObjectCollection as y}from"../collections/Component/ComponentObjectCollection.js";import{ShaderTechniqueConstructionContext as j}from"../core/shaderTechnique/ShaderTechniqueConstructionContext.js";import{ShaderTechniqueRepository as R}from"../core/shaderTechnique/ShaderTechniqueRepository.js";import{ObjectAndLayerIDRenderNode as b}from"../effects/geometry/ObjectAndLayerIDRenderNode.js";import{olidEnabled as C}from"../effects/geometry/olidUtils.js";import{RenderOccludedRenderNode as T}from"../effects/geometry/RenderOccludedRenderNode.js";import{GlowRenderNode as A}from"../effects/glow/GlowRenderNode.js";import{Haze as O}from"../effects/haze/Haze.js";import{Highlight as S}from"../effects/highlight/Highlight.js";import{ShadowHighlight as q}from"../effects/highlight/ShadowHighlight.js";import{Magnifier as M}from"../effects/magnifier/Magnifier.js";import{SMAA as U}from"../effects/smaa/SMAA.js";import{SSAO as k}from"../effects/ssao/SSAO.js";import{Stars as L}from"../effects/stars/Stars.js";import D from"../lib/CompositingHelper.js";import{GLMaterialRepository as H}from"../lib/GLMaterialRepository.js";import{ObjectAndLayerIdRenderHelper as F}from"../lib/ObjectAndLayerIdRenderHelper.js";import{Renderer as W}from"../lib/Renderer.js";import{RenderingContext as B}from"../lib/RenderingContext.js";import{RenderingContextOptions as E}from"../lib/RenderingContextOptions.js";import{TextureRepository as G}from"../lib/TextureRepository.js";import{createMarkerTextureRepository as N}from"../materials/markerTextureRepository.js";import{createStippleTextureRepository as z}from"../materials/stippleTextureRepository.js";import{WaterTextureRepository as P}from"../materials/internal/WaterTextureRepository.js";import{getContextCache as I}from"./contextCache.js";import{removeLoadedShaderModules as V}from"./renderUtils.js";import{ScreenshotManager as X,ScreenshotContext as Q}from"./ScreenshotManager.js";import{contextCache as J}from"./testUtils.js";import{noBudget as K}from"../../../support/Scheduler.js";import{checkWebGLError as Y}from"../../../webgl/checkWebGLError.js";let Z=class extends t{constructor(e){super(e),this._waterTextures=new P,this.olidRenderHelper=C()?new F:null,this._needsUpdate=!0,this._needsRender=!0,this._idleSuspend=!0,this._needsWaterReflectionUpdate=!1,this._lastAnimationUpdate=0,this.glow=null,this.fog=null,this.test=null;const t=e.stage;try{this._initializeContext(t)}catch(n){return void console.error("Failed to initialize context",n)}const{memoryController:r}=t.view.resourceController;this._stippleTextures=z(this._rctx,r),this.notifyChange("stippleTextures"),this._markerTextures=N(this._rctx,r),this.notifyChange("markerTextures"),this._techniques=new R(new j(this._rctx,t.viewingMode,2===t.viewingMode?0:t.view.spatialReference.isWebMercator?1:2,this.stippleTextures,this.waterTextures,this.markerTextures)),this._textures=new G(t),this.addHandles(this._textures.events.on("changed",e=>this.requestRender(e)));const s=new H(this._textures,this._techniques,()=>this.requestRender(),()=>this.requestRender());this._compositingHelper=new D(this._rctx,this._techniques),this._renderer=new W(t,s,this._techniques,this._rctx,this._compositingHelper,e=>this.requestRender(e)),this.notifyChange("renderer"),this.addHandles([a(()=>t.view.ready,e=>{e&&this._createRenderNodes()},h),a(()=>this.waterTextures?.updating,()=>this.requestRender(),h),a(()=>t.view.qualityProfile,e=>this.renderer?.updateRenderFeatures(e),l)]);const i={renderScene:(e,t,r,s)=>this.renderer.render(e,t,r,s),requestRenderScene:e=>this.requestRender(e),prepareOverlay:()=>t.options.screenshot.prepareOverlay(),renderOverlay:(e,r,s)=>t.options.screenshot.renderOverlay(e,r,s)};this._screenshotManager=new X(this._rctx,i,e=>t.view.overlayManager.updateOverlays(K,e.camera,0)),this._registerFrameTask(t)}destroy(){const e=this.stage?.container;e?.contains(this._canvas)&&e.removeChild(this._canvas),this._frameTask=n(this._frameTask),this._techniques=o(this._techniques),this._componentObjectCollection=o(this._componentObjectCollection),this._set("componentObjectCollection",null),this._screenshotManager=o(this._screenshotManager),o(this.renderer),this._textures=o(this._textures),o(this.waterTextures),o(this.markerTextures),o(this.stippleTextures),this._waterTextures=null,this._markerTextures=null,this._stippleTextures=null,this._canvas=null,this._rctx=o(this._rctx),this._compositingHelper=null,this._renderer=null,this._set("renderer",null),this.test?.destroy()}_createRenderNodes(){const{view:e,viewingMode:t}=this.stage;new L({view:e}),u(e.spatialReference)||(2===t?(new x({view:e}),this.glow=new A({view:e})):f(e.spatialReference)?(new v({view:e}),this.glow=new A({view:e})):(new _({view:e}),new g({view:e}),this.glow=new A({view:e}),new O({view:e}),this.fog=new w({view:e}))),new k({view:e,isEnabled:()=>this.renderer.hasSSAO}),new U({view:e,isEnabled:()=>this.renderer.hasSMAA}),new M({view:e}),new S({view:e}),new q({view:e,viewingMode:t}),new T({view:e}),C()&&new b({view:e})}requestRender(e=1){switch(e){case 2:this.stage.view.state.fading=!0;case 1:this._needsUpdate=!0;case 0:this._needsRender=!0}}get updating(){return this._needsUpdate||this._needsWaterReflectionUpdate||this.renderer.updating||this._textures.updating||this.waterTextures.updating}get textures(){return this._textures}get techniques(){return this._techniques}get compositingHelper(){return this._compositingHelper}setIdleSuspend(e){this._idleSuspend!==e&&(this._idleSuspend=e,this.requestRender())}get renderingContext(){return this._rctx}get capabilities(){return this._rctx.capabilities}get canvas(){return this._canvas}takeScreenshot(e){return this._screenshotManager.takeScreenshot(r(e))}getAlpha(){return!!this._rctx.contextAttributes.alpha}getMinimalDepthForArea(e,t,r,i,n,o=n){const a=i.constrainWindowSize(t,r,n*i.pixelRatio,o*i.pixelRatio),h=this._ensureLinearDepthArrayBuffer(a);this.renderer.readMainDepth(a,h);const l=(e,t,r)=>s(t,e)*(r[1]-r[0])+r[0];let p=Number.MAX_VALUE;for(let s=0;s<a[2]*a[3];s++){const e=l(4*s,h,i.nearFar);p>e&&e!==i.nearFar[0]&&e!==i.nearFar[1]&&(p=e)}if(e){const s=e.pickDepth(t*i.pixelRatio,r*i.pixelRatio,i);null!=s&&p>s&&s!==i.nearFar[0]&&s!==i.nearFar[1]&&(p=s)}return p===Number.MAX_VALUE?void 0:p}_ensureLinearDepthArrayBuffer(e){const t=4*e[2]*e[3];return(null==this._tmpDepthBuffer||this._tmpDepthBuffer.byteLength<t)&&(this._tmpDepthBuffer=new Uint8Array(t)),this._tmpDepthBuffer}async reloadShaders(){V(),await this._techniques.reloadAll(),this.renderer.overlay?.reloadShaders(),this.requestRender()}_registerFrameTask(e){const t=e.view.state;let r=!1,s=0,i=!1;const n={preRender:({time:i})=>{r=this.updating,s=this._needsUpdate?1:0,this._needsRender&&this.renderer.updateSceneDepthRange(t.camera),e.commitSyncLayers(),i=this.test?.time??i;(d(i-this._lastAnimationUpdate)>this.renderer.animationTimestep||r||this._needsRender)&&(this.renderer.updateAnimation(t,i)&&this.requestRender(0),this._lastAnimationUpdate=i)},render:({time:e})=>{if((this._needsRender||!this._idleSuspend||!this.renderer.isCameraFinal||this._needsWaterReflectionUpdate)&&t.camera.fullWidth>0&&t.camera.fullHeight>0){const r=this._needsUpdate&&this._idleSuspend&&this.renderer.isCameraFinal;this._needsRender=!1,this._needsUpdate=!1,this._needsWaterReflectionUpdate=!1,e=this.test?.time??e,this.renderer.render(t,e,0),i=!0,r&&this.renderer.hasReflections&&(this.requestRender(0),this._needsWaterReflectionUpdate=!0)}},update:({time:e})=>{this._textures.update();const r=new Q(t,this.renderer.fboCache);e=this.test?.time??e,this._screenshotManager.update(r,e)},finish:()=>{i&&(this.renderer.finish(2===t.mode?s:1),i=!1)}};this._frameTask=p(n)}_initializeContext(e){const{options:t}=e,r=t.canvas??document.createElement("canvas");r.setAttribute("style","width: 100%; height:100%; display:block;"),this._canvas=r;const s={alpha:t.alpha||!1,premultipliedAlpha:!0,antialias:!1,depth:!0,stencil:t.stencil??!0,powerPreference:"high-performance",preserveDrawingBuffer:t.preserveDrawingBuffer??!1},n=r.getContext("webgl2",s);if(null==n)return void i.getLogger(this).error("A WebGL2 context could not be created.");Y(n,!0),this._rctx=$(n,e),this._loadShaderOnlyExtensions(),!t.alpha&&this._rctx.contextAttributes.alpha&&i.getLogger(this).error("WebGL context has alpha channel even though no alpha channel was requested");const{container:o}=e;!this._rctx.contextAttributes.alpha&&has("safari")>=11&&(o.style.backgroundColor="black"),o.contains(r)||o.appendChild(r)}_loadShaderOnlyExtensions(){this._rctx.capabilities.enable("textureFloatLinear")}get _viewingMode(){return this.stage.viewingMode}get stippleTextures(){return this._stippleTextures}get markerTextures(){return this._markerTextures}get waterTextures(){return this._waterTextures}getObjectAndLayerIdColor(e){return this.olidRenderHelper?.getObjectAndLayerIdColor(e)}get renderer(){return this._renderer}get componentObjectCollection(){return null==this._componentObjectCollection&&(this._componentObjectCollection=new y(this.renderer.renderPassManager,this._viewingMode)),this._componentObjectCollection}set componentObjectCollection(e){this._componentObjectCollection=e}updateQualitySettings(e){null!=this.test?.time&&(this.test.savedFadeDuration=e.fadeDuration,e.fadeDuration=d(0)),this._rctx.updateOptions({maxPreferredTexturePixels:this.stage.view.qualitySettings.maxTexturePixels})}};function $(e,t){const r=new E(t);if(J.enabled){let t=ee.get(e);return t&&1===t.refCount?(t.configure(r),t.ref(),t):(t=new B(e,r),ee.set(e,t),t.ref(),t)}return new B(e,r)}e([c({type:Boolean,readOnly:!0})],Z.prototype,"updating",null),e([c({constructOnly:!0})],Z.prototype,"stage",void 0),e([c({readOnly:!0})],Z.prototype,"stippleTextures",null),e([c({readOnly:!0})],Z.prototype,"markerTextures",null),e([c({readOnly:!0})],Z.prototype,"waterTextures",null),e([c({readOnly:!0})],Z.prototype,"olidRenderHelper",void 0),e([c()],Z.prototype,"_textures",void 0),e([c({readOnly:!0})],Z.prototype,"renderer",null),e([c()],Z.prototype,"_screenshotManager",void 0),e([c()],Z.prototype,"componentObjectCollection",null),e([c()],Z.prototype,"_componentObjectCollection",void 0),e([c()],Z.prototype,"_needsUpdate",void 0),e([c()],Z.prototype,"_needsWaterReflectionUpdate",void 0),Z=e([m("esri.views.3d.webgl-engine.parts.RenderView")],Z);const ee=I();export{Z as RenderView};
5
+ import{__decorate as e}from"tslib";import t from"../../../../core/Accessor.js";import{toConst as r}from"../../../../core/compilerUtils.js";import{unpackFloatRGBA as s}from"../../../../core/floatRGBA.js";import has from"../../../../core/has.js";import i from"../../../../core/Logger.js";import{removeMaybe as n,destroyMaybe as o}from"../../../../core/maybe.js";import{when as a,watch as h,initial as l,syncAndInitial as p}from"../../../../core/reactiveUtils.js";import{addFrameTask as c}from"../../../../core/scheduling.js";import{Milliseconds as d}from"../../../../core/time.js";import{property as m}from"../../../../core/accessorSupport/decorators/property.js";import"../../../../core/RandomLCG.js";import{subclass as u}from"../../../../core/accessorSupport/decorators/subclass.js";import{isMoon as f,isMars as _}from"../../../../geometry/support/spatialReferenceUtils.js";import{ChapmanAtmosphere as g}from"../../environment/ChapmanAtmosphere.js";import{CloudsComposition as w}from"../../environment/CloudsComposition.js";import{Fog as x}from"../../environment/Fog.js";import{LocalAtmosphere as v}from"../../environment/LocalAtmosphere.js";import{MarsAtmosphere as y}from"../../environment/MarsAtmosphere.js";import{ComponentObjectCollection as j}from"../collections/Component/ComponentObjectCollection.js";import{ShaderTechniqueConstructionContext as R}from"../core/shaderTechnique/ShaderTechniqueConstructionContext.js";import{ShaderTechniqueRepository as b}from"../core/shaderTechnique/ShaderTechniqueRepository.js";import{ObjectAndLayerIDRenderNode as C}from"../effects/geometry/ObjectAndLayerIDRenderNode.js";import{olidEnabled as T}from"../effects/geometry/olidUtils.js";import{RenderOccludedRenderNode as A}from"../effects/geometry/RenderOccludedRenderNode.js";import{GlowRenderNode as O}from"../effects/glow/GlowRenderNode.js";import{Haze as S}from"../effects/haze/Haze.js";import{Highlight as q}from"../effects/highlight/Highlight.js";import{ShadowHighlight as U}from"../effects/highlight/ShadowHighlight.js";import{Magnifier as M}from"../effects/magnifier/Magnifier.js";import{SMAA as k}from"../effects/smaa/SMAA.js";import{SSAO as L}from"../effects/ssao/SSAO.js";import{Stars as D}from"../effects/stars/Stars.js";import H from"../lib/CompositingHelper.js";import{GLMaterialRepository as F}from"../lib/GLMaterialRepository.js";import{ObjectAndLayerIdRenderHelper as W}from"../lib/ObjectAndLayerIdRenderHelper.js";import{Renderer as B}from"../lib/Renderer.js";import{RenderingContext as E}from"../lib/RenderingContext.js";import{RenderingContextOptions as G}from"../lib/RenderingContextOptions.js";import{TextureRepository as N}from"../lib/TextureRepository.js";import{createMarkerTextureRepository as z}from"../materials/markerTextureRepository.js";import{createStippleTextureRepository as P}from"../materials/stippleTextureRepository.js";import{WaterTextureRepository as I}from"../materials/internal/WaterTextureRepository.js";import{getContextCache as V}from"./contextCache.js";import{removeLoadedShaderModules as X}from"./renderUtils.js";import{ScreenshotManager as Q,ScreenshotContext as J}from"./ScreenshotManager.js";import{contextCache as K}from"./testUtils.js";import{noBudget as Y}from"../../../support/Scheduler.js";import{checkWebGLError as Z}from"../../../webgl/checkWebGLError.js";let $=class extends t{constructor(e){super(e),this._waterTextures=new I,this.olidRenderHelper=T()?new W:null,this._needsUpdate=!0,this._needsRender=!0,this._idleSuspend=!0,this._needsWaterReflectionUpdate=!1,this._lastAnimationUpdate=0,this.glow=null,this.fog=null,this.test=null;const t=e.stage;try{this._initializeContext(t)}catch(n){return void console.error("Failed to initialize context",n)}const{memoryController:r}=t.view.resourceController;this._stippleTextures=P(this._rctx,r),this.notifyChange("stippleTextures"),this._markerTextures=z(this._rctx,r),this.notifyChange("markerTextures"),this._techniques=new b(new R(this._rctx,t.viewingMode,t.sphericalSpatialReference,this.stippleTextures,this.waterTextures,this.markerTextures)),this._textures=new N(t),this.addHandles(this._textures.events.on("changed",e=>this.requestRender(e)));const s=new F(this._textures,this._techniques,()=>this.requestRender(),()=>this.requestRender());this._compositingHelper=new H(this._rctx,this._techniques),this._renderer=new B(t,s,this._techniques,this._rctx,this._compositingHelper,e=>this.requestRender(e)),this.notifyChange("renderer"),this.addHandles([a(()=>t.view.ready,()=>this._createRenderNodes(),l),h(()=>this.waterTextures?.updating,()=>this.requestRender(),l),h(()=>t.view.qualityProfile,e=>this.renderer?.updateRenderFeatures(e),p)]);const i={renderScene:(e,t,r,s)=>this.renderer.render(e,t,r,s),requestRenderScene:e=>this.requestRender(e),prepareOverlay:()=>t.options.screenshot.prepareOverlay(),renderOverlay:(e,r,s)=>t.options.screenshot.renderOverlay(e,r,s)};this._screenshotManager=new Q(this._rctx,i,e=>t.view.overlayManager.updateOverlays(Y,e.camera,0)),this._registerFrameTask(t)}destroy(){const e=this.stage?.container;e?.contains(this._canvas)&&e.removeChild(this._canvas),this._frameTask=n(this._frameTask),this._techniques=o(this._techniques),this._componentObjectCollection=o(this._componentObjectCollection),this._set("componentObjectCollection",null),this._screenshotManager=o(this._screenshotManager),o(this.renderer),this._textures=o(this._textures),o(this.waterTextures),o(this.markerTextures),o(this.stippleTextures),this._waterTextures=null,this._markerTextures=null,this._stippleTextures=null,this._canvas=null,this._rctx=o(this._rctx),this._compositingHelper=null,this._renderer=null,this._set("renderer",null),this.test?.destroy()}_createRenderNodes(){const{view:e,viewingMode:t}=this.stage;new D({view:e}),f(e.spatialReference)||(2===t?(new v({view:e}),this.glow=new O({view:e})):_(e.spatialReference)?(new y({view:e}),this.glow=new O({view:e})):(new g({view:e}),new w({view:e}),this.glow=new O({view:e}),new S({view:e}),this.fog=new x({view:e}))),new L({view:e,isEnabled:()=>this.renderer.hasSSAO}),new k({view:e,isEnabled:()=>this.renderer.hasSMAA}),new M({view:e}),new q({view:e}),new U({view:e,viewingMode:t}),new A({view:e}),T()&&new C({view:e})}requestRender(e=1){switch(e){case 2:this.stage.view.state.fading=!0;case 1:this._needsUpdate=!0;case 0:this._needsRender=!0}}get updating(){return this._needsUpdate||this._needsWaterReflectionUpdate||this.renderer.updating||this._textures.updating||this.waterTextures.updating}get textures(){return this._textures}get techniques(){return this._techniques}get compositingHelper(){return this._compositingHelper}setIdleSuspend(e){this._idleSuspend!==e&&(this._idleSuspend=e,this.requestRender())}get renderingContext(){return this._rctx}get capabilities(){return this._rctx.capabilities}get canvas(){return this._canvas}takeScreenshot(e){return this._screenshotManager.takeScreenshot(r(e))}getAlpha(){return!!this._rctx.contextAttributes.alpha}getMinimalDepthForArea(e,t,r,i,n,o=n){const a=i.constrainWindowSize(t,r,n*i.pixelRatio,o*i.pixelRatio),h=this._ensureLinearDepthArrayBuffer(a);this.renderer.readMainDepth(a,h);const l=(e,t,r)=>s(t,e)*(r[1]-r[0])+r[0];let p=Number.MAX_VALUE;for(let s=0;s<a[2]*a[3];s++){const e=l(4*s,h,i.nearFar);p>e&&e!==i.nearFar[0]&&e!==i.nearFar[1]&&(p=e)}if(e){const s=e.pickDepth(t*i.pixelRatio,r*i.pixelRatio,i);null!=s&&p>s&&s!==i.nearFar[0]&&s!==i.nearFar[1]&&(p=s)}return p===Number.MAX_VALUE?void 0:p}_ensureLinearDepthArrayBuffer(e){const t=4*e[2]*e[3];return(null==this._tmpDepthBuffer||this._tmpDepthBuffer.byteLength<t)&&(this._tmpDepthBuffer=new Uint8Array(t)),this._tmpDepthBuffer}async reloadShaders(){X(),await this._techniques.reloadAll(),this.renderer.overlay?.reloadShaders(),this.requestRender()}_registerFrameTask(e){const t=e.view.state;let r=!1,s=0,i=!1;const n={preRender:({time:i})=>{r=this.updating,s=this._needsUpdate?1:0,this._needsRender&&this.renderer.updateSceneDepthRange(t.camera),e.commitSyncLayers(),i=this.test?.time??i;(d(i-this._lastAnimationUpdate)>this.renderer.animationTimestep||r||this._needsRender)&&(this.renderer.updateAnimation(t,i)&&this.requestRender(0),this._lastAnimationUpdate=i)},render:({time:e})=>{if((this._needsRender||!this._idleSuspend||!this.renderer.isCameraFinal||this._needsWaterReflectionUpdate)&&t.camera.fullWidth>0&&t.camera.fullHeight>0){const r=this._needsUpdate&&this._idleSuspend&&this.renderer.isCameraFinal;this._needsRender=!1,this._needsUpdate=!1,this._needsWaterReflectionUpdate=!1,e=this.test?.time??e,this.renderer.render(t,e,0),i=!0,r&&this.renderer.hasReflections&&(this.requestRender(0),this._needsWaterReflectionUpdate=!0)}},update:({time:e})=>{this._textures.update();const r=new J(t,this.renderer.fboCache);e=this.test?.time??e,this._screenshotManager.update(r,e)},finish:()=>{i&&(this.renderer.finish(2===t.mode?s:1),i=!1)}};this._frameTask=c(n)}_initializeContext(e){const{options:t}=e,r=t.canvas??document.createElement("canvas");r.setAttribute("style","width: 100%; height:100%; display:block;"),this._canvas=r;const s={alpha:t.alpha||!1,premultipliedAlpha:!0,antialias:!1,depth:!0,stencil:t.stencil??!0,powerPreference:"high-performance",preserveDrawingBuffer:t.preserveDrawingBuffer??!1},n=r.getContext("webgl2",s);if(null==n)return void i.getLogger(this).error("A WebGL2 context could not be created.");Z(n,!0),this._rctx=ee(n,e),this._loadShaderOnlyExtensions(),!t.alpha&&this._rctx.contextAttributes.alpha&&i.getLogger(this).error("WebGL context has alpha channel even though no alpha channel was requested");const{container:o}=e;!this._rctx.contextAttributes.alpha&&has("safari")>=11&&(o.style.backgroundColor="black"),o.contains(r)||o.appendChild(r)}_loadShaderOnlyExtensions(){this._rctx.capabilities.enable("textureFloatLinear")}get _viewingMode(){return this.stage.viewingMode}get stippleTextures(){return this._stippleTextures}get markerTextures(){return this._markerTextures}get waterTextures(){return this._waterTextures}getObjectAndLayerIdColor(e){return this.olidRenderHelper?.getObjectAndLayerIdColor(e)}get renderer(){return this._renderer}get componentObjectCollection(){return null==this._componentObjectCollection&&(this._componentObjectCollection=new j(this.renderer.renderPassManager,this._viewingMode,this.stage.sphericalSpatialReference)),this._componentObjectCollection}set componentObjectCollection(e){this._componentObjectCollection=e}updateQualitySettings(e){null!=this.test?.time&&(this.test.savedFadeDuration=e.fadeDuration,e.fadeDuration=d(0)),this._rctx.updateOptions({maxPreferredTexturePixels:this.stage.view.qualitySettings.maxTexturePixels})}};function ee(e,t){const r=new G(t);if(K.enabled){let t=te.get(e);return t&&1===t.refCount?(t.configure(r),t.ref(),t):(t=new E(e,r),te.set(e,t),t.ref(),t)}return new E(e,r)}e([m({type:Boolean,readOnly:!0})],$.prototype,"updating",null),e([m({constructOnly:!0})],$.prototype,"stage",void 0),e([m({readOnly:!0})],$.prototype,"stippleTextures",null),e([m({readOnly:!0})],$.prototype,"markerTextures",null),e([m({readOnly:!0})],$.prototype,"waterTextures",null),e([m({readOnly:!0})],$.prototype,"olidRenderHelper",void 0),e([m()],$.prototype,"_textures",void 0),e([m({readOnly:!0})],$.prototype,"renderer",null),e([m()],$.prototype,"_screenshotManager",void 0),e([m()],$.prototype,"componentObjectCollection",null),e([m()],$.prototype,"_componentObjectCollection",void 0),e([m()],$.prototype,"_needsUpdate",void 0),e([m()],$.prototype,"_needsWaterReflectionUpdate",void 0),$=e([u("esri.views.3d.webgl-engine.parts.RenderView")],$);const te=V();export{$ as RenderView};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{a as t}from"../../../../chunks/AtmosphereCompositing.glsl.js";import{makePipelineState as s,defaultColorWrite as i,simpleBlendingParams as n}from"../../../webgl/renderState.js";class l extends r{constructor(r,s){super(r,s,new e(t,()=>import("./AtmosphereCompositing.glsl.js")),o)}initializePipeline(){return s({blending:n(770,771),depthTest:{func:519},colorWrite:i})}}export{l as AtmosphereCompositingTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{a as i}from"../../../../chunks/AtmosphereCompositing.glsl.js";import{makePipelineState as t,defaultColorWrite as m,simpleBlendingParams as p}from"../../../webgl/renderState.js";let c=class extends s{constructor(){super(...arguments),this.shader=new o(i,()=>import("./AtmosphereCompositing.glsl.js"))}initializePipeline(){return t({blending:p(770,771),depthTest:{func:519},colorWrite:m})}};c=e([r("esri.views.3d.webgl-engine.shaders.AtmosphereCompositingTechnique")],c);export{c as AtmosphereCompositingTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as t,depthWrite as o,oitDepthTest as s,blending as n}from"../lib/OrderIndependentTransparency.js";import{PositionUvLayout as a}from"../materials/DefaultLayouts.js";import{C as i}from"../../../../chunks/CheckerBoard.glsl.js";import{makePipelineState as l,defaultColorWrite as c}from"../../../webgl/renderState.js";class p extends r{constructor(r,t){super(r,t,new e(i,()=>import("./CheckerBoard.glsl.js")),a.locations)}initializePipeline(e){const{oitPass:r,transparent:a,polygonOffset:i,output:p}=e,d=0===r,f=2===r;return l({blending:a?n(r):null,depthTest:{func:s(r)},depthWrite:o(e),drawBuffers:t(r,p),colorWrite:c,polygonOffset:d||f?i?u:null:{factor:-1,units:-25}})}}const u={factor:0,units:-25};export{p as CheckerBoardTechnique};
5
+ import{__decorate as r}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as e}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as t,depthWrite as i,oitDepthTest as n,blending as a}from"../lib/OrderIndependentTransparency.js";import{PositionUvLayout as c}from"../materials/DefaultLayouts.js";import{C as l}from"../../../../chunks/CheckerBoard.glsl.js";import{makePipelineState as p,defaultColorWrite as m}from"../../../webgl/renderState.js";let d=class extends s{constructor(r,e){super(r,e,c.locations),this.shader=new o(l,()=>import("./CheckerBoard.glsl.js"))}initializePipeline(r){const{oitPass:e,transparent:o,polygonOffset:s,output:c}=r,l=0===e,d=2===e;return p({blending:o?a(e):null,depthTest:{func:n(e)},depthWrite:i(r),drawBuffers:t(e,c),colorWrite:m,polygonOffset:l||d?s?u:null:{factor:-1,units:-25}})}};d=r([e("esri.views.3d.webgl-engine.shaders.CheckerBoardTechnique")],d);const u={factor:0,units:-25};export{d as CheckerBoardTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ZEROS as e}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{newLayout as r}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as o}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i,depthOnlyOutputBuffersOr as s}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as l}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as n,depthWrite as a,oitDepthTest as c,blending as u,getDrawBuffers as p}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as f,stencilBaseAllZerosParams as m,stencilWriteMaskOn as d}from"../lib/StencilUtils.js";import{VisualVariablePassParameters as h}from"../materials/VisualVariablePassParameters.js";import{C as j}from"../../../../chunks/ColorMaterial.glsl.js";import{makePipelineState as g,defaultColorWrite as P,cullingParams as b}from"../../../webgl/renderState.js";class S extends h{constructor(){super(...arguments),this.color=e}}class y extends i{constructor(e,r){super(e,r,new o(j,()=>import("./ColorMaterial.glsl.js")),v(r).locations)}_createPipeline(e,r){const{oitPass:o,output:i,transparent:l,cullFace:h,draped:j,hasOccludees:S,polygonOffset:y}=e,v=0===o;return g({blending:t(i)&&l?u(o):null,culling:b(h),depthTest:j?null:{func:c(o)},depthWrite:a(e),drawBuffers:s(i,p(o,i)),colorWrite:P,stencilWrite:S?d:null,stencilTest:S?r?f:m:null,polygonOffset:v?y?T:null:n(e)})}initializePipeline(e){return this._occludeePipelineState=this._createPipeline(e,!0),this._createPipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}}const T={factor:1,units:1};function v(e){const t=r().vec3f("position");return l()&&t.vec4u8("olidColor"),e.hasVVColor?t.f32("colorFeatureAttribute"):t.vec4u8("color"),t.freeze()}export{S as ColorMaterialPassParameters,y as ColorMaterialTechnique,v as getLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ZEROS as t}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{newLayout as o}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as s}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShader as i}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as l,depthOnlyOutputBuffersOr as a}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as c}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as n,depthWrite as p,oitDepthTest as u,blending as m,getDrawBuffers as f}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as d,stencilBaseAllZerosParams as h,stencilWriteMaskOn as j}from"../lib/StencilUtils.js";import{VisualVariablePassParameters as g}from"../materials/VisualVariablePassParameters.js";import{C as b}from"../../../../chunks/ColorMaterial.glsl.js";import{makePipelineState as P,defaultColorWrite as S,cullingParams as C}from"../../../webgl/renderState.js";class T extends g{constructor(){super(...arguments),this.color=t}}let v=class extends l{constructor(e,r){super(e,r,w(r).locations),this.shader=new i(b,()=>import("./ColorMaterial.glsl.js"))}_createPipeline(e,r){const{oitPass:t,output:o,transparent:i,cullFace:l,draped:c,hasOccludees:g,polygonOffset:b}=e,T=0===t;return P({blending:s(o)&&i?m(t):null,culling:C(l),depthTest:c?null:{func:u(t)},depthWrite:p(e),drawBuffers:a(o,f(t,o)),colorWrite:S,stencilWrite:g?j:null,stencilTest:g?r?d:h:null,polygonOffset:T?b?y:null:n(e)})}initializePipeline(e){return this._occludeePipelineState=this._createPipeline(e,!0),this._createPipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}};v=e([r("esri.views.3d.webgl-engine.shaders.ColorMaterialTechnique")],v);const y={factor:1,units:1};function w(e){const r=o().vec3f("position");return c()&&r.vec4u8("olidColor"),e.hasVVColor?r.f32("colorFeatureAttribute"):r.vec4u8("color"),r.freeze()}export{T as ColorMaterialPassParameters,v as ColorMaterialTechnique,w as getLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/has.js";import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{getDrawBuffers as s}from"../lib/OrderIndependentTransparency.js";import{a as i}from"../../../../chunks/Compositing.glsl.js";import{makePipelineState as t,defaultColorWrite as n,premultipliedAlpha as a,unpremultipliedAlphaToPremultipliedAlpha as l}from"../../../webgl/renderState.js";class c extends r{constructor(r,s){super(r,s,new e(i,()=>import("./Compositing.glsl.js")),o)}initializePipeline(e){const{blitMode:r,blitEmissiveMode:o}=e,i=o?1:0;switch(r){case 0:case 3:return t({colorWrite:n,drawBuffers:s(0,i)});case 1:return t({blending:l,colorWrite:n,drawBuffers:s(0,i)});default:return t({blending:a,colorWrite:n,drawBuffers:s(0,i)})}}}export{c as CompositingTechnique};
5
+ import{__decorate as r}from"tslib";import"../../../../core/has.js";import"../../../../core/Logger.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as e}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as i}from"../lib/OrderIndependentTransparency.js";import{a as t}from"../../../../chunks/Compositing.glsl.js";import{makePipelineState as n,defaultColorWrite as c,premultipliedAlpha as a,unpremultipliedAlphaToPremultipliedAlpha as m}from"../../../webgl/renderState.js";let d=class extends s{constructor(){super(...arguments),this.shader=new o(t,()=>import("./Compositing.glsl.js"))}initializePipeline(r){const{blitMode:e,blitEmissiveMode:o}=r,s=o?1:0;switch(e){case 0:case 3:return n({colorWrite:c,drawBuffers:i(0,s)});case 1:return n({blending:m,colorWrite:c,drawBuffers:i(0,s)});default:return n({blending:a,colorWrite:c,drawBuffers:i(0,s)})}}};d=r([e("esri.views.3d.webgl-engine.shaders.CompositingTechnique")],d);export{d as CompositingTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{a as i}from"../../../../chunks/CutFillComposition.glsl.js";import{makePipelineState as t,defaultColorWrite as s}from"../../../webgl/renderState.js";class l extends r{constructor(r,t){super(r,t,new e(i,()=>import("./CutFillComposition.glsl.js")),o)}initializePipeline(){return t({colorWrite:s})}}export{l as CutFillCompositionTechnique};
5
+ import{__decorate as r}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as e}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{a as i}from"../../../../chunks/CutFillComposition.glsl.js";import{makePipelineState as t,defaultColorWrite as l}from"../../../webgl/renderState.js";let m=class extends s{constructor(){super(...arguments),this.shader=new o(i,()=>import("./CutFillComposition.glsl.js"))}initializePipeline(){return t({colorWrite:l})}};m=r([e("esri.views.3d.webgl-engine.shaders.CutFillCompositionTechnique")],m);export{m as CutFillCompositionTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as t}from"../lib/DefaultVertexBufferLayouts.js";import{a as o}from"../../../../chunks/CutFillDepth.glsl.js";import{makePipelineState as i,defaultColorWrite as l}from"../../../webgl/renderState.js";class s extends r{constructor(r,i){super(r,i,new e(o,()=>import("./CutFillDepth.glsl.js")),t)}initializePipeline(){return i({colorWrite:l})}}export{s as CutFillDepthTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{a as t}from"../../../../chunks/CutFillDepth.glsl.js";import{makePipelineState as i,defaultColorWrite as l}from"../../../webgl/renderState.js";let c=class extends s{constructor(){super(...arguments),this.shader=new o(t,()=>import("./CutFillDepth.glsl.js"))}initializePipeline(){return i({colorWrite:l})}};c=e([r("esri.views.3d.webgl-engine.shaders.CutFillDepthTechnique")],c);export{c as CutFillDepthTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos3 as t}from"../lib/DefaultVertexBufferLayouts.js";import{a as o}from"../../../../chunks/CutFillMask.glsl.js";import{makePipelineState as s,defaultColorWrite as i}from"../../../webgl/renderState.js";import{fromLayout as l}from"../../../webgl/VertexAttributeLocations.js";class a extends r{constructor(r,s){super(r,s,new e(o,()=>import("./CutFillMask.glsl.js")),l(t))}initializePipeline(){return s({colorWrite:i,depthTest:{func:515}})}}export{a as CutFillMaskTechnique};
5
+ import{__decorate as r}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as e}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos3Locations as t}from"../lib/DefaultVertexBufferLayouts.js";import{a as i}from"../../../../chunks/CutFillMask.glsl.js";import{makePipelineState as a,defaultColorWrite as l}from"../../../webgl/renderState.js";let c=class extends o{constructor(r,e){super(r,e,t),this.shader=new s(i,()=>import("./CutFillMask.glsl.js"))}initializePipeline(){return a({colorWrite:l,depthTest:{func:515}})}};c=r([e("esri.views.3d.webgl-engine.shaders.CutFillMaskTechnique")],c);export{c as CutFillMaskTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{a as t}from"../../../../chunks/CutFillReduction.glsl.js";import{makePipelineState as i,defaultColorWrite as l}from"../../../webgl/renderState.js";class s extends r{constructor(r,i){super(r,i,new e(t,()=>import("./CutFillReduction.glsl.js")),o)}initializePipeline(){return i({colorWrite:l})}}export{s as CutFillReductionTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{a as i}from"../../../../chunks/CutFillReduction.glsl.js";import{makePipelineState as t,defaultColorWrite as c}from"../../../webgl/renderState.js";let l=class extends s{constructor(){super(...arguments),this.shader=new o(i,()=>import("./CutFillReduction.glsl.js"))}initializePipeline(){return t({colorWrite:c})}};l=e([r("esri.views.3d.webgl-engine.shaders.CutFillReductionTechnique")],l);export{l as CutFillReductionTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos3Locations as t}from"../lib/DefaultVertexBufferLayouts.js";import{a as o}from"../../../../chunks/CutFillTargetDepth.glsl.js";import{makePipelineState as i,defaultDepthWrite as s,defaultColorWrite as l}from"../../../webgl/renderState.js";class a extends r{constructor(r,i){super(r,i,new e(o,()=>import("./CutFillTargetDepth.glsl.js")),t)}initializePipeline(){return i({colorWrite:l,depthWrite:s,depthTest:{func:519}})}}export{a as CutFillTargetDepthTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as t}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos3Locations as s}from"../lib/DefaultVertexBufferLayouts.js";import{a as i}from"../../../../chunks/CutFillTargetDepth.glsl.js";import{makePipelineState as a,defaultDepthWrite as l,defaultColorWrite as p}from"../../../webgl/renderState.js";let c=class extends o{constructor(e,r){super(e,r,s),this.shader=new t(i,()=>import("./CutFillTargetDepth.glsl.js"))}initializePipeline(){return a({colorWrite:p,depthWrite:l,depthTest:{func:519}})}};c=e([r("esri.views.3d.webgl-engine.shaders.CutFillTargetDepthTechnique")],c);export{c as CutFillTargetDepthTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ZEROS as e,freeze as t,create as i}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as s}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{glLayout as r}from"../../support/buffer/glUtil.js";import{newLayout as o}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as l}from"../core/shaderLibrary/ShaderOutput.js";import{VertexNormalPassParameters as n,VertexNormalDrawParameters as a}from"../core/shaderLibrary/attributes/VertexNormal.glsl.js";import{ReloadableShaderModule as c}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as h,depthOnlyOutputBuffersOr as u}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as p}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as m,depthWrite as d,oitDepthTest as f,blending as v,getDrawBuffers as b}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as g,stencilBaseAllZerosParams as S,stencilWriteMaskOn as y}from"../lib/StencilUtils.js";import{getRenderInstanceDataLayout as j}from"../lib/lodRendering/RenderInstanceData.js";import{advancedMRRFactors as x}from"../materials/pbrUtils.js";import{D as C}from"../../../../chunks/DefaultMaterial.glsl.js";import{makePipelineState as P,cullingParams as T,defaultColorWrite as O}from"../../../webgl/renderState.js";import{fromLayouts as V}from"../../../webgl/VertexAttributeLocations.js";import{alphaCutoff as D}from"../../../../webscene/support/AlphaCutoff.js";class w extends n{constructor(){super(...arguments),this.isSchematic=!1,this.usePBR=!1,this.mrrFactors=x,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.doubleSided=!1,this.doubleSidedType="normal",this.cullFace=2,this.instanced=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.instanceColorEncodesAlphaIgnore=!1,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=e,this.instancedDoublePrecision=!1,this.normalType=0,this.receiveShadows=!0,this.receiveAmbientOcclusion=!0,this.castShadows=!0,this.ambient=t(.2,.2,.2),this.diffuse=t(.8,.8,.8),this.externalColor=s(1,1,1,1),this.colorMixMode="multiply",this.opacity=1,this.layerOpacity=1,this.origin=i(),this.hasSlicePlane=!1,this.offsetTransparentBackfaces=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.modelTransformation=null,this.drivenOpacity=!1,this.writeDepth=!0,this.customDepthTest=0,this.textureAlphaMode=0,this.textureAlphaCutoff=D,this.textureAlphaPremultiplied=!1,this.renderOccluded=1,this.isDecoration=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}class A extends a{constructor(){super(...arguments),this.origin=i(),this.slicePlaneLocalOrigin=this.origin}}class M extends h{constructor(e,t,i=new c(C,()=>import("./DefaultMaterial.glsl.js"))){const s=[r(F(t))];t.instanced&&t.instancedDoublePrecision&&s.push(r(j(t))),super(e,t,i,V(s))}_makePipeline(e,t){const{oitPass:i,output:s,transparent:r,cullFace:o,customDepthTest:n,hasOccludees:a}=e;return P({blending:l(s)&&r?v(i):null,culling:z(e)?T(o):null,depthTest:{func:f(i,k(n))},depthWrite:d(e),drawBuffers:u(s,b(i,s)),colorWrite:O,stencilWrite:a?y:null,stencilTest:a?t?g:S:null,polygonOffset:m(e)})}initializePipeline(e){return this._occludeePipelineState=this._makePipeline(e,!0),this._makePipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}}function k(e){switch(e){case 1:return 515;case 0:case 3:return 513;case 2:return 516}}function z(e){return 0!==e.cullFace||!e.hasSlicePlane&&(!e.transparent&&!e.doubleSidedMode)}function F(e){const t=o().vec3f("position");return 1===e.normalType?t.vec2i16("normalCompressed",{glNormalized:!0}):t.vec3f("normal"),e.hasVertexTangents&&t.vec4f("tangent"),e.hasTextures&&t.vec2f16("uv0"),e.hasVertexColors&&t.vec4u8("color"),e.hasSymbolColors&&t.vec4u8("symbolColor"),!e.instanced&&p()&&t.vec4u8("olidColor"),t}export{A as DefaultMaterialDrawParameters,w as DefaultMaterialPassParameters,M as DefaultMaterialTechnique,F as getLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as t}from"../../../../core/accessorSupport/decorators/subclass.js";import{ZEROS as s,freeze as i,create as r}from"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import{fromValues as o}from"../../../../core/libs/gl-matrix-2/factories/vec4f64.js";import{glLayout as l}from"../../support/buffer/glUtil.js";import{newLayout as n}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as a}from"../core/shaderLibrary/ShaderOutput.js";import{VertexNormalPassParameters as c,VertexNormalDrawParameters as h}from"../core/shaderLibrary/attributes/VertexNormal.glsl.js";import{ReloadableShader as u}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as p,depthOnlyOutputBuffersOr as m}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as d}from"../effects/geometry/olidUtils.js";import{oitPolygonOffset as f,depthWrite as v,oitDepthTest as b,blending as g,getDrawBuffers as S}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as j,stencilBaseAllZerosParams as y,stencilWriteMaskOn as x}from"../lib/StencilUtils.js";import{getRenderInstanceDataLayout as C}from"../lib/lodRendering/RenderInstanceData.js";import{advancedMRRFactors as P}from"../materials/pbrUtils.js";import{D as T}from"../../../../chunks/DefaultMaterial.glsl.js";import{makePipelineState as O,cullingParams as w,defaultColorWrite as D}from"../../../webgl/renderState.js";import{fromLayouts as V}from"../../../webgl/VertexAttributeLocations.js";import{alphaCutoff as A}from"../../../../webscene/support/AlphaCutoff.js";class M extends c{constructor(){super(...arguments),this.isSchematic=!1,this.usePBR=!1,this.mrrFactors=P,this.hasVertexColors=!1,this.hasSymbolColors=!1,this.doubleSided=!1,this.doubleSidedType="normal",this.cullFace=2,this.instanced=!1,this.instancedFeatureAttribute=!1,this.instancedColor=!1,this.instanceColorEncodesAlphaIgnore=!1,this.emissiveStrength=0,this.emissiveSource=1,this.emissiveBaseColor=s,this.instancedDoublePrecision=!1,this.normalType=0,this.receiveShadows=!0,this.receiveAmbientOcclusion=!0,this.castShadows=!0,this.ambient=i(.2,.2,.2),this.diffuse=i(.8,.8,.8),this.externalColor=o(1,1,1,1),this.colorMixMode="multiply",this.opacity=1,this.layerOpacity=1,this.origin=r(),this.hasSlicePlane=!1,this.offsetTransparentBackfaces=!1,this.vvSize=null,this.vvColor=null,this.vvOpacity=null,this.vvSymbolAnchor=null,this.vvSymbolRotationMatrix=null,this.modelTransformation=null,this.drivenOpacity=!1,this.writeDepth=!0,this.customDepthTest=0,this.textureAlphaMode=0,this.textureAlphaCutoff=A,this.textureAlphaPremultiplied=!1,this.renderOccluded=1,this.isDecoration=!1}get hasVVSize(){return!!this.vvSize}get hasVVColor(){return!!this.vvColor}get hasVVOpacity(){return!!this.vvOpacity}}class L extends h{constructor(){super(...arguments),this.origin=r(),this.slicePlaneLocalOrigin=this.origin}}let R=class extends p{constructor(e,t){const s=[l(F(t))];t.instanced&&t.instancedDoublePrecision&&s.push(l(C(t))),super(e,t,V(s)),this.shader=new u(T,()=>import("./DefaultMaterial.glsl.js"))}_makePipeline(e,t){const{oitPass:s,output:i,transparent:r,cullFace:o,customDepthTest:l,hasOccludees:n}=e;return O({blending:a(i)&&r?g(s):null,culling:z(e)?w(o):null,depthTest:{func:b(s,k(l))},depthWrite:v(e),drawBuffers:m(i,S(s,i)),colorWrite:D,stencilWrite:n?x:null,stencilTest:n?t?j:y:null,polygonOffset:f(e)})}initializePipeline(e){return this._occludeePipelineState=this._makePipeline(e,!0),this._makePipeline(e,!1)}getPipeline(e){return e?this._occludeePipelineState:super.getPipeline()}};function k(e){switch(e){case 1:return 515;case 0:case 3:return 513;case 2:return 516}}function z(e){return 0!==e.cullFace||!e.hasSlicePlane&&(!e.transparent&&!e.doubleSidedMode)}function F(e){const t=n().vec3f("position");return 1===e.normalType?t.vec2i16("normalCompressed",{glNormalized:!0}):t.vec3f("normal"),e.hasVertexTangents&&t.vec4f("tangent"),e.hasTextures&&t.vec2f16("uv0"),e.hasVertexColors&&t.vec4u8("color"),e.hasSymbolColors&&t.vec4u8("symbolColor"),!e.instanced&&d()&&t.vec4u8("olidColor"),t}R=e([t("esri.views.3d.webgl-engine.shaders.DefaultMaterialTechnique")],R);export{L as DefaultMaterialDrawParameters,M as DefaultMaterialPassParameters,R as DefaultMaterialTechnique,F as getLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import"../core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import"../core/shaderLibrary/util/ComputeCovariance.glsl.js";import"../core/shaderLibrary/util/FastApproximateTrigonometry.glsl.js";import"../core/shaderLibrary/util/GaussianSplatUnpacking.glsl.js";import"../core/shaderLibrary/util/QuaternionToRotationMatrix.glsl.js";import"../core/shaderModules/Float2PassUniform.js";import"../core/shaderModules/Float3BindUniform.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/glsl.js";import"../core/shaderModules/IntegerBindUniform.js";import"../core/shaderModules/IntegerPassUniform.js";import"../core/shaderModules/Matrix4BindUniform.js";import"../core/shaderModules/Texture2DUintPassUniform.js";import"../../../webgl/NoParameters.js";import"../../../webgl/ShaderBuilder.js";export{G as GaussianSplatPassParameters,b as build}from"../../../../chunks/GaussianSplat.glsl.js";
5
+ import"../../../../core/libs/gl-matrix-2/factories/vec2f64.js";import"../../../../core/libs/gl-matrix-2/factories/vec3f64.js";import"../core/shaderLibrary/shading/TerrainDepthTest.glsl.js";import"../core/shaderLibrary/util/ComputeCovariance.glsl.js";import"../core/shaderLibrary/util/FastApproximateTrigonometry.glsl.js";import"../core/shaderLibrary/util/GaussianSplatUnpacking.glsl.js";import"../core/shaderLibrary/util/QuaternionToRotationMatrix.glsl.js";import"../core/shaderModules/Float2PassUniform.js";import"../core/shaderModules/Float3BindUniform.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/glsl.js";import"../core/shaderModules/IntegerBindUniform.js";import"../core/shaderModules/IntegerPassUniform.js";import"../core/shaderModules/Matrix4BindUniform.js";import"../core/shaderModules/Texture2DUintPassUniform.js";import"./GaussianSplatTechniqueConfiguration.js";import"../../../webgl/NoParameters.js";import"../../../webgl/ShaderBuilder.js";export{G as GaussianSplatPassParameters,b as build}from"../../../../chunks/GaussianSplat.glsl.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{S as t}from"../../../../chunks/GaussianSplatComposition.glsl.js";import{makePipelineState as s,defaultDepthWrite as i,defaultColorWrite as a}from"../../../webgl/renderState.js";class l extends r{constructor(r,s){super(r,s,new e(t,()=>import("./GaussianSplatComposition.glsl.js")),o)}initializePipeline(){return s({colorWrite:a,depthTest:null,depthWrite:i})}}export{l as GaussianSplatCompositionTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{S as i}from"../../../../chunks/GaussianSplatComposition.glsl.js";import{makePipelineState as t,defaultDepthWrite as a,defaultColorWrite as p}from"../../../webgl/renderState.js";let n=class extends s{constructor(){super(...arguments),this.shader=new o(i,()=>import("./GaussianSplatComposition.glsl.js"))}initializePipeline(){return t({colorWrite:p,depthTest:null,depthWrite:a})}};n=e([r("esri.views.3d.webgl-engine.shaders.GaussianSplatCompositionTechnique")],n);export{n as GaussianSplatCompositionTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{S as s}from"../../../../chunks/GaussianSplatDepthComposition.glsl.js";import{DrawBufferNone as t}from"../../../webgl/enums.js";import{makePipelineState as i,defaultDepthWrite as a}from"../../../webgl/renderState.js";class l extends r{constructor(r,t){super(r,t,new e(s,()=>import("./GaussianSplatDepthComposition.glsl.js")),o)}initializePipeline(){return i({colorWrite:null,depthTest:{func:515},depthWrite:a,drawBuffers:{buffers:[t]}})}}export{l as GaussianSplatDepthCompositionTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{S as t}from"../../../../chunks/GaussianSplatDepthComposition.glsl.js";import{DrawBufferNone as i}from"../../../webgl/enums.js";import{makePipelineState as p,defaultDepthWrite as a}from"../../../webgl/renderState.js";let m=class extends o{constructor(){super(...arguments),this.shader=new s(t,()=>import("./GaussianSplatDepthComposition.glsl.js"))}initializePipeline(){return p({colorWrite:null,depthTest:{func:515},depthWrite:a,drawBuffers:{buffers:[i]}})}};m=e([r("esri.views.3d.webgl-engine.shaders.GaussianSplatDepthCompositionTechnique")],m);export{m as GaussianSplatDepthCompositionTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as t}from"../lib/DefaultVertexBufferLayouts.js";import{a as i}from"../../../../chunks/GaussianSplat.glsl.js";import{makePipelineState as s,defaultColorWrite as a,separateBlendingParams as o}from"../../../webgl/renderState.js";class l extends r{constructor(r,s){super(r,s,new e(i,()=>import("./GaussianSplat.glsl.js")),t)}_createPipeline(){return s({blending:o(773,773,772,1,32774,32774),depthTest:{func:513},colorWrite:a})}initializePipeline(){return this._createPipeline()}}export{l as GaussianSplatDepthTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{a as i}from"../../../../chunks/GaussianSplat.glsl.js";import{makePipelineState as t,defaultColorWrite as a,separateBlendingParams as c}from"../../../webgl/renderState.js";let n=class extends o{constructor(){super(...arguments),this.shader=new s(i,()=>import("./GaussianSplat.glsl.js"))}initializePipeline(){return t({blending:c(773,773,772,1,32774,32774),depthTest:{func:513},colorWrite:a})}};n=e([r("esri.views.3d.webgl-engine.shaders.GaussianSplatDepthTechnique")],n);export{n as GaussianSplatDepthTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as t}from"../lib/DefaultVertexBufferLayouts.js";import{a as i}from"../../../../chunks/GaussianSplat.glsl.js";import{makePipelineState as s,defaultColorWrite as a,separateBlendingParams as o}from"../../../webgl/renderState.js";class l extends r{constructor(r,s){super(r,s,new e(i,()=>import("./GaussianSplat.glsl.js")),t)}_createPipeline(){return s({blending:o(773,773,1,1,32774,32774),depthTest:{func:515},colorWrite:a})}initializePipeline(){return this._createPipeline()}}export{l as GaussianSplatTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{a as i}from"../../../../chunks/GaussianSplat.glsl.js";import{makePipelineState as t,defaultColorWrite as a,separateBlendingParams as c}from"../../../webgl/renderState.js";let n=class extends o{constructor(){super(...arguments),this.shader=new s(i,()=>import("./GaussianSplat.glsl.js"))}initializePipeline(){return t({blending:c(773,773,1,1,32774,32774),depthTest:{func:515},colorWrite:a})}};n=e([r("esri.views.3d.webgl-engine.shaders.GaussianSplatTechnique")],n);export{n as GaussianSplatTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{__decorate as e}from"tslib";import{ShaderTechniqueConfiguration as t,parameter as r}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";class o extends t{constructor(e=!1){super(),this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.occlusionPass=!1,this.depthPass=e}}e([r()],o.prototype,"terrainDepthTest",void 0),e([r()],o.prototype,"cullAboveTerrain",void 0);export{o as GaussianSplatTechniqueConfiguration};
5
+ import{__decorate as t}from"tslib";import{ShaderTechniqueConfiguration as e,parameter as r}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";class o extends e{constructor(t=!1){super(),this.alphaCutoff=1,this.terrainDepthTest=!1,this.cullAboveTerrain=!1,this.occlusionPass=!1,this.depthPass=t}}function s(t){switch(t){case 2:return.005;case 0:return.05;default:return.01}}t([r({count:3})],o.prototype,"alphaCutoff",void 0),t([r()],o.prototype,"terrainDepthTest",void 0),t([r()],o.prototype,"cullAboveTerrain",void 0);export{o as GaussianSplatTechniqueConfiguration,s as getGaussianSplatAlphaCutoffValue};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as o}from"../lib/DefaultVertexBufferLayouts.js";import{a as i}from"../../../../chunks/HUDCompositing.glsl.js";import{makePipelineState as s}from"../../../webgl/renderState.js";class t extends r{constructor(r,s){super(r,s,new e(i,()=>import("./HUDCompositing.glsl.js")),o)}initializePipeline(){return s({colorWrite:{r:!1,g:!0,b:!1,a:!1}})}}export{t as HUDCompositingTechnique};
5
+ import{__decorate as r}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as e}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{a as i}from"../../../../chunks/HUDCompositing.glsl.js";import{makePipelineState as t}from"../../../webgl/renderState.js";let m=class extends s{constructor(){super(...arguments),this.shader=new o(i,()=>import("./HUDCompositing.glsl.js"))}initializePipeline(){return t({colorWrite:{r:!1,g:!0,b:!1,a:!1}})}};m=r([e("esri.views.3d.webgl-engine.shaders.HUDCompositingTechnique")],m);export{m as HUDCompositingTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{glLayout as e}from"../../support/buffer/glUtil.js";import{newLayout as r}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as o}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as i}from"../effects/geometry/olidUtils.js";import{getDrawBuffers as n,blending as l}from"../lib/OrderIndependentTransparency.js";import{H as u}from"../../../../chunks/HUDMaterial.glsl.js";import{PrimitiveType as a}from"../../../webgl/enums.js";import{makePipelineState as c,defaultColorWrite as f,defaultDepthWrite as p}from"../../../webgl/renderState.js";import{fromLayouts as m}from"../../../webgl/VertexAttributeLocations.js";class d extends s{constructor(r,t){super(r,t,new o(u,()=>import("./HUDMaterial.glsl.js")),m([v,g()].map(e))),this.primitiveType=t.occlusionPass?a.POINTS:a.TRIANGLE_STRIP}initializePipeline(e){const{oitPass:r,hasPolygonOffset:o,draped:s,output:i,depthTestEnabled:u,occlusionPass:a}=e,m=u&&!s&&!(1===r)&&!a&&!(9===i);return c({blending:t(i)?l(r,!0):null,depthTest:u&&!s?{func:515}:null,depthWrite:m?p:null,drawBuffers:n(r,i),colorWrite:f,polygonOffset:o?h:null})}}const h={factor:0,units:-4},v=r().vec2u8("uv0",{glNormalized:!0}),b=r().vec3f("position").vec3f("normal").vec4i16("uvi").vec4u8("color").vec2f("size").f32("rotation").vec4f("centerOffsetAndDistance").vec4f("featureAttribute"),j=b.clone().vec4u8("olidColor");function g(){return i()?j:b}export{d as HUDMaterialTechnique,v as baseLayout,g as getInstanceLayout,b as instanceLayout,j as olidInstanceLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{glLayout as o}from"../../support/buffer/glUtil.js";import{newLayout as t}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as s}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShader as i}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as n}from"../core/shaderTechnique/ShaderTechnique.js";import{olidEnabled as l}from"../effects/geometry/olidUtils.js";import{getDrawBuffers as c,blending as a}from"../lib/OrderIndependentTransparency.js";import{H as p}from"../../../../chunks/HUDMaterial.glsl.js";import{PrimitiveType as u}from"../../../webgl/enums.js";import{makePipelineState as m,defaultColorWrite as f,defaultDepthWrite as d}from"../../../webgl/renderState.js";import{fromLayouts as h}from"../../../webgl/VertexAttributeLocations.js";let j=class extends n{constructor(e,r){super(e,r,h([g,w()].map(o))),this.shader=new i(p,()=>import("./HUDMaterial.glsl.js")),this.primitiveType=r.occlusionPass?u.POINTS:u.TRIANGLE_STRIP}initializePipeline(e){const{oitPass:r,hasPolygonOffset:o,draped:t,output:i,depthTestEnabled:n,occlusionPass:l}=e,p=n&&!t&&!(1===r)&&!l&&!(9===i);return m({blending:s(i)?a(r,!0):null,depthTest:n&&!t?{func:515}:null,depthWrite:p?d:null,drawBuffers:c(r,i),colorWrite:f,polygonOffset:o?b:null})}};j=e([r("esri.views.3d.webgl-engine.shaders.HUDMaterialTechnique")],j);const b={factor:0,units:-4},g=t().vec2u8("uv0",{glNormalized:!0}),v=t().vec3f("position").vec3f("normal").vec4i16("uvi").vec4u8("color").vec2f("size").f32("rotation").vec4f("centerOffsetAndDistance").vec4f("featureAttribute"),T=v.clone().vec4u8("olidColor");function w(){return l()?T:v}export{j as HUDMaterialTechnique,g as baseLayout,w as getInstanceLayout,v as instanceLayout,T as olidInstanceLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{glLayout as e}from"../../support/buffer/glUtil.js";import{newLayout as r}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{MaterialParameters as i}from"../lib/Material.js";import{H as o}from"../../../../chunks/HeatmapDensity.glsl.js";import{PrimitiveType as l}from"../../../webgl/enums.js";import{makePipelineState as n,defaultColorWrite as p,add as u}from"../../../webgl/renderState.js";import{fromLayouts as a}from"../../../webgl/VertexAttributeLocations.js";class m extends i{constructor(){super(...arguments),this.searchRadius=128,this.resolutionForScale=0}}class c extends s{constructor(r,s){super(r,s,new t(o,()=>import("./HeatmapDensity.glsl.js")),a([d,s.isAttributeDriven?h:f].map(e))),this.primitiveType=l.TRIANGLE_STRIP}initializePipeline(){return n({blending:u,colorWrite:p,depthTest:null,depthWrite:null})}destroy(){super.destroy()}}const d=r().vec2i8("uv0"),f=r().vec3f("position"),h=f.clone().f32("featureAttribute");export{m as HeatmapDensityPassParameters,c as HeatmapDensityTechnique,h as attributeDrivenInstanceLayout,d as baseLayout,f as instanceLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{glLayout as t}from"../../support/buffer/glUtil.js";import{newLayout as s}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShader as o}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{MaterialParameters as p}from"../lib/Material.js";import{H as a}from"../../../../chunks/HeatmapDensity.glsl.js";import{PrimitiveType as m}from"../../../webgl/enums.js";import{makePipelineState as n,defaultColorWrite as l,add as c}from"../../../webgl/renderState.js";import{fromLayouts as u}from"../../../webgl/VertexAttributeLocations.js";class d extends p{constructor(){super(...arguments),this.searchRadius=128,this.resolutionForScale=0}}let h=class extends i{constructor(e,r){super(e,r,u([f,r.isAttributeDriven?b:j].map(t))),this.shader=new o(a,()=>import("./HeatmapDensity.glsl.js")),this.primitiveType=m.TRIANGLE_STRIP}initializePipeline(){return n({blending:c,colorWrite:l,depthTest:null,depthWrite:null})}destroy(){super.destroy()}};h=e([r("esri.views.3d.webgl-engine.shaders.HeatmapDensityTechnique")],h);const f=s().vec2i8("uv0"),j=s().vec3f("position"),b=j.clone().f32("featureAttribute");export{d as HeatmapDensityPassParameters,h as HeatmapDensityTechnique,b as attributeDrivenInstanceLayout,f as baseLayout,j as instanceLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Pos2Locations as t}from"../lib/DefaultVertexBufferLayouts.js";import{H as s}from"../../../../chunks/Heatmap.glsl.js";import{PrimitiveType as i}from"../../../webgl/enums.js";import{NoParameters as o}from"../../../webgl/NoParameters.js";import{makePipelineState as l,defaultColorWrite as a,unpremultipliedAlphaToPremultipliedAlpha as n}from"../../../webgl/renderState.js";class m extends o{constructor(){super(...arguments),this.colorRamp=null,this.densityMap=null,this.searchRadius=1,this.fieldTotal=0,this.minDensity=0,this.maxDensity=100}}class p extends r{constructor(r,o){super(r,o,new e(s,()=>import("./Heatmap.glsl.js")),t),this.primitiveType=i.TRIANGLE_STRIP}initializePipeline(){return l({blending:n,colorWrite:a,depthTest:null,depthWrite:null})}}export{m as HeatmapPassParameters,p as HeatmapTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{H as i}from"../../../../chunks/Heatmap.glsl.js";import{PrimitiveType as o}from"../../../webgl/enums.js";import{NoParameters as a}from"../../../webgl/NoParameters.js";import{makePipelineState as m,defaultColorWrite as l,unpremultipliedAlphaToPremultipliedAlpha as n}from"../../../webgl/renderState.js";class p extends a{constructor(){super(...arguments),this.colorRamp=null,this.densityMap=null,this.searchRadius=1,this.fieldTotal=0,this.minDensity=0,this.maxDensity=100}}let c=class extends t{constructor(){super(...arguments),this.shader=new s(i,()=>import("./Heatmap.glsl.js")),this.primitiveType=o.TRIANGLE_STRIP}initializePipeline(){return m({blending:n,colorWrite:l,depthTest:null,depthWrite:null})}};c=e([r("esri.views.3d.webgl-engine.shaders.HeatmapTechnique")],c);export{p as HeatmapPassParameters,c as HeatmapTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{isColorOrColorEmission as e}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{oitPolygonOffset as r,getDrawBuffers as l,depthWrite as n,oitDepthTest as s,blending as o}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as a,stencilBaseAllZerosParams as p,stencilWriteMaskOn as c}from"../lib/StencilUtils.js";import{PositionUvLayout as u}from"../materials/DefaultLayouts.js";import{I as d}from"../../../../chunks/ImageMaterial.glsl.js";import{makePipelineState as m,defaultColorWrite as h,cullingParams as f}from"../../../webgl/renderState.js";class g extends i{constructor(e,i){super(e,i,new t(d,()=>import("./ImageMaterial.glsl.js")),j(i).locations)}_getPipelineState(t,i){const{oitPass:u,output:d,hasOccludees:g,cullFace:j}=t;return m({blending:e(d)?o(u,!0):null,culling:f(j),depthTest:{func:s(u)},depthWrite:n(t),drawBuffers:l(u,d),colorWrite:h,stencilWrite:g?c:null,stencilTest:g?i?a:p:null,polygonOffset:r(t)})}initializePipeline(e){return this._occludeePipeline=this._getPipelineState(e,!0),this._getPipelineState(e,!1)}getPipeline(e){return e?this._occludeePipeline:super.getPipeline()}}function j(e){let t=u;return e.perspectiveInterpolation&&(t=t.clone().f32("perspectiveDivide")),t}export{g as ImageMaterialTechnique,j as getLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{isColorOrColorEmission as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShader as i}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{oitPolygonOffset as o,getDrawBuffers as l,depthWrite as n,oitDepthTest as a,blending as c}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as p,stencilBaseAllZerosParams as u,stencilWriteMaskOn as m}from"../lib/StencilUtils.js";import{PositionUvLayout as d}from"../materials/DefaultLayouts.js";import{I as h}from"../../../../chunks/ImageMaterial.glsl.js";import{makePipelineState as f,defaultColorWrite as g,cullingParams as j}from"../../../webgl/renderState.js";let b=class extends s{constructor(e,r){super(e,r,P(r).locations),this.shader=new i(h,()=>import("./ImageMaterial.glsl.js"))}_getPipelineState(e,r){const{oitPass:i,output:s,hasOccludees:d,cullFace:h}=e;return f({blending:t(s)?c(i,!0):null,culling:j(h),depthTest:{func:a(i)},depthWrite:n(e),drawBuffers:l(i,s),colorWrite:g,stencilWrite:d?m:null,stencilTest:d?r?p:u:null,polygonOffset:o(e)})}initializePipeline(e){return this._occludeePipeline=this._getPipelineState(e,!0),this._getPipelineState(e,!1)}getPipeline(e){return e?this._occludeePipeline:super.getPipeline()}};function P(e){let r=d;return e.perspectiveInterpolation&&(r=r.clone().f32("perspectiveDivide")),r}b=e([r("esri.views.3d.webgl-engine.shaders.ImageMaterialTechnique")],b);export{b as ImageMaterialTechnique,P as getLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{L as o}from"../../../../chunks/LineCallout.glsl.js";import{makePipelineState as s,defaultDepthWrite as n,defaultColorWrite as i,separateBlendingParams as c}from"../../../webgl/renderState.js";class l extends r{constructor(e,r){super(e,r,new t(o,()=>import("./LineCallout.glsl.js")),a.locations)}initializePipeline(e){const{hudDepth:t,terrainDepthTest:r}=e,o={func:r?519:513};return s(t?{depthTest:o,depthWrite:n}:{blending:c(1,770,771,771),depthTest:o,colorWrite:i})}}const a=e().vec3f("position").vec3f("normal").vec2f16("uv0").vec4f("centerOffsetAndDistance");export{l as LineCalloutTechnique,a as layout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{newLayout as o}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShader as t}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as s}from"../core/shaderTechnique/ShaderTechnique.js";import{L as i}from"../../../../chunks/LineCallout.glsl.js";import{makePipelineState as n,defaultDepthWrite as c,defaultColorWrite as a,separateBlendingParams as l}from"../../../webgl/renderState.js";let p=class extends s{constructor(e,r){super(e,r,m.locations),this.shader=new t(i,()=>import("./LineCallout.glsl.js"))}initializePipeline(e){const{hudDepth:r,terrainDepthTest:o}=e,t={func:o?519:513};return n(r?{depthTest:t,depthWrite:c}:{blending:l(1,770,771,771),depthTest:t,colorWrite:a})}};p=e([r("esri.views.3d.webgl-engine.shaders.LineCalloutTechnique")],p);const m=o().vec3f("position").vec3f("normal").vec2f16("uv0").vec4f("centerOffsetAndDistance");export{p as LineCalloutTechnique,m as layout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as i}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r,depthOnlyOutputBuffersOr as l}from"../core/shaderTechnique/ShaderTechnique.js";import{depthWrite as n,oitDepthTest as s,blending as o,getDrawBuffers as c}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as u,stencilBaseAllZerosParams as p,stencilWriteMaskOn as a,stencilToolTransparentOccluderParams as d,depthCompareAlways as h,stencilToolMaskOccluderParams as f,stencilWriteMaskOff as m,depthCompareLess as P}from"../lib/StencilUtils.js";import{L as T}from"../../../../chunks/LineMarker.glsl.js";import{makePipelineState as W,defaultColorWrite as _,unpremultipliedAlphaToPremultipliedAlpha as b}from"../../../webgl/renderState.js";class g extends r{constructor(e,t){super(e,t,new i(T,()=>import("./LineMarker.glsl.js")),S(t).locations)}_makePipelineState(e,i){const{output:r,oitPass:d,space:h,hasOccludees:f}=e;return W({blending:t(r)?o(d):null,depthTest:0===h?null:{func:s(d)},depthWrite:n(e),drawBuffers:l(r,c(d,r)),colorWrite:_,stencilWrite:f?a:null,stencilTest:f?i?u:p:null,polygonOffset:{factor:0,units:-10}})}initializePipeline(e){return e.occluder?(this._occluderPipelineTransparent=W({blending:b,depthTest:h,depthWrite:null,colorWrite:_,stencilWrite:null,stencilTest:d}),this._occluderPipelineOpaque=W({blending:b,depthTest:h,depthWrite:null,colorWrite:_,stencilWrite:m,stencilTest:f}),this._occluderPipelineMaskWrite=W({blending:null,depthTest:P,depthWrite:null,colorWrite:null,stencilWrite:a,stencilTest:u})):this._occluderPipelineTransparent=this._occluderPipelineOpaque=this._occluderPipelineMaskWrite=null,this._occludeePipelineState=this._makePipelineState(e,!0),this._makePipelineState(e,!1)}getPipeline(e,t){return e?this._occludeePipelineState:11===t?this._occluderPipelineTransparent??super.getPipeline():10===t?this._occluderPipelineOpaque??super.getPipeline():this._occluderPipelineMaskWrite??super.getPipeline()}}function S(t){const i=e().vec3f("position").vec4f16("previousDelta").vec2f16("uv0");return t.hasVVColor?i.f32("colorFeatureAttribute"):i.vec4u8("color",{glNormalized:!0}),t.hasVVOpacity&&i.f32("opacityFeatureAttribute"),t.hasVVSize?i.f32("sizeFeatureAttribute"):i.f16("size"),t.worldSpace&&i.vec3f16("normal"),i.freeze()}export{g as LineMarkerTechnique,S as getLayout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{newLayout as t}from"../../support/buffer/InterleavedLayout.js";import{isColorOrColorEmission as i}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as l,depthOnlyOutputBuffersOr as n}from"../core/shaderTechnique/ShaderTechnique.js";import{depthWrite as o,oitDepthTest as c,blending as p,getDrawBuffers as a}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as u,stencilBaseAllZerosParams as d,stencilWriteMaskOn as h,stencilToolTransparentOccluderParams as m,depthCompareAlways as f,stencilToolMaskOccluderParams as P,stencilWriteMaskOff as g,depthCompareLess as b}from"../lib/StencilUtils.js";import{L as T}from"../../../../chunks/LineMarker.glsl.js";import{makePipelineState as W,defaultColorWrite as j,unpremultipliedAlphaToPremultipliedAlpha as _}from"../../../webgl/renderState.js";let S=class extends l{constructor(e,r){super(e,r,k(r).locations),this.shader=new s(T,()=>import("./LineMarker.glsl.js"))}_makePipelineState(e,r){const{output:t,oitPass:s,space:l,hasOccludees:m}=e;return W({blending:i(t)?p(s):null,depthTest:0===l?null:{func:c(s)},depthWrite:o(e),drawBuffers:n(t,a(s,t)),colorWrite:j,stencilWrite:m?h:null,stencilTest:m?r?u:d:null,polygonOffset:{factor:0,units:-10}})}initializePipeline(e){return e.occluder?(this._occluderPipelineTransparent=W({blending:_,depthTest:f,depthWrite:null,colorWrite:j,stencilWrite:null,stencilTest:m}),this._occluderPipelineOpaque=W({blending:_,depthTest:f,depthWrite:null,colorWrite:j,stencilWrite:g,stencilTest:P}),this._occluderPipelineMaskWrite=W({blending:null,depthTest:b,depthWrite:null,colorWrite:null,stencilWrite:h,stencilTest:u})):this._occluderPipelineTransparent=this._occluderPipelineOpaque=this._occluderPipelineMaskWrite=null,this._occludeePipelineState=this._makePipelineState(e,!0),this._makePipelineState(e,!1)}getPipeline(e,r){return e?this._occludeePipelineState:11===r?this._occluderPipelineTransparent??super.getPipeline():10===r?this._occluderPipelineOpaque??super.getPipeline():this._occluderPipelineMaskWrite??super.getPipeline()}};function k(e){const r=t().vec3f("position").vec4f16("previousDelta").vec2f16("uv0");return e.hasVVColor?r.f32("colorFeatureAttribute"):r.vec4u8("color",{glNormalized:!0}),e.hasVVOpacity&&r.f32("opacityFeatureAttribute"),e.hasVVSize?r.f32("sizeFeatureAttribute"):r.f16("size"),e.worldSpace&&r.vec3f16("normal"),r.freeze()}S=e([r("esri.views.3d.webgl-engine.shaders.LineMarkerTechnique")],S);export{S as LineMarkerTechnique,k as getLayout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{newLayout as e}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{blending as t}from"../lib/OrderIndependentTransparency.js";import{M as n}from"../../../../chunks/MeasurementArrow.glsl.js";import{PrimitiveType as s}from"../../../webgl/enums.js";import{makePipelineState as i,defaultColorWrite as l,defaultDepthWrite as a}from"../../../webgl/renderState.js";class p extends o{constructor(e,o){super(e,o,new r(n,()=>import("./MeasurementArrow.glsl.js")),m.locations),this.primitiveType=s.TRIANGLE_STRIP}initializePipeline(e){return i({blending:e.transparent?t(e.oitPass):null,polygonOffset:e.polygonOffsetEnabled?{factor:0,units:-4}:null,depthTest:{func:513},depthWrite:a,colorWrite:l})}}const m=e().vec3f("position").vec3f("normal").vec2f("uv0").f32("length");export{p as MeasurementArrowTechnique,m as layout};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{newLayout as o}from"../../support/buffer/InterleavedLayout.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{blending as i}from"../lib/OrderIndependentTransparency.js";import{M as n}from"../../../../chunks/MeasurementArrow.glsl.js";import{PrimitiveType as a}from"../../../webgl/enums.js";import{makePipelineState as p,defaultColorWrite as m,defaultDepthWrite as l}from"../../../webgl/renderState.js";let c=class extends t{constructor(e,r){super(e,r,u.locations),this.shader=new s(n,()=>import("./MeasurementArrow.glsl.js")),this.primitiveType=a.TRIANGLE_STRIP}initializePipeline(e){return p({blending:e.transparent?i(e.oitPass):null,polygonOffset:e.polygonOffsetEnabled?{factor:0,units:-4}:null,depthTest:{func:513},depthWrite:l,colorWrite:m})}};c=e([r("esri.views.3d.webgl-engine.shaders.MeasurementArrowTechnique")],c);const u=o().vec3f("position").vec3f("normal").vec2f("uv0").f32("length");export{c as MeasurementArrowTechnique,u as layout};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{isColorOrColorEmission as e}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as i}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as s,stencilBaseAllZerosParams as l,stencilWriteMaskOn as o,depthCompareLess as n}from"../lib/StencilUtils.js";import{PositionColorLayout as a,PositionLayout as p}from"../materials/DefaultLayouts.js";import{N as u}from"../../../../chunks/NativeLine.glsl.js";import{PrimitiveType as c}from"../../../webgl/enums.js";import{makePipelineState as m,defaultColorWrite as d,defaultDepthWrite as h,unpremultipliedAlphaToPremultipliedAlpha as f}from"../../../webgl/renderState.js";class j extends t{constructor(e,t){super(e,t,new r(u,()=>import("./NativeLine.glsl.js")),t.hasVertexColors?a.locations:p.locations),this.primitiveType=c.LINES}initializePipeline(r){const{hasOccludees:t,output:a,transparent:p,oitPass:u}=r,c=(e,r=null,p=null)=>m({blending:r,depthTest:n,depthWrite:p,colorWrite:d,stencilWrite:t?o:null,stencilTest:t?e?s:l:null,drawBuffers:i(u,a)});return e(a)?(this._occludeePipeline=c(!0,p?f:null,h),c(!1,p?f:null,h)):c(!1)}getPipeline(e){return e?this._occludeePipeline:super.getPipeline()}}export{j as NativeLineTechnique};
5
+ import{__decorate as e}from"tslib";import"../../../../core/Logger.js";import"../../../../core/has.js";import"../../../../core/RandomLCG.js";import"../../../../core/Error.js";import{subclass as r}from"../../../../core/accessorSupport/decorators/subclass.js";import{isColorOrColorEmission as i}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShader as s}from"../core/shaderTechnique/ReloadableShader.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{getDrawBuffers as o}from"../lib/OrderIndependentTransparency.js";import{stencilToolMaskBaseParams as l,stencilBaseAllZerosParams as n,stencilWriteMaskOn as a,depthCompareLess as p}from"../lib/StencilUtils.js";import{PositionColorLayout as c,PositionLayout as m}from"../materials/DefaultLayouts.js";import{N as u}from"../../../../chunks/NativeLine.glsl.js";import{PrimitiveType as d}from"../../../webgl/enums.js";import{makePipelineState as h,defaultColorWrite as j,defaultDepthWrite as f,unpremultipliedAlphaToPremultipliedAlpha as g}from"../../../webgl/renderState.js";let b=class extends t{constructor(e,r){super(e,r,r.hasVertexColors?c.locations:m.locations),this.shader=new s(u,()=>import("./NativeLine.glsl.js")),this.primitiveType=d.LINES}initializePipeline(e){const{hasOccludees:r,output:s,transparent:t,oitPass:c}=e,m=(e,i=null,t=null)=>h({blending:i,depthTest:p,depthWrite:t,colorWrite:j,stencilWrite:r?a:null,stencilTest:r?e?l:n:null,drawBuffers:o(c,s)});return i(s)?(this._occludeePipeline=m(!0,t?g:null,f),m(!1,t?g:null,f)):m(!1)}getPipeline(e){return e?this._occludeePipeline:super.getPipeline()}};b=e([r("esri.views.3d.webgl-engine.shaders.NativeLineTechnique")],b);export{b as NativeLineTechnique};