@arcgis/core 4.24.0-next.20220427 → 4.24.0-next.20220430
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/WebMap.js +1 -1
- package/analysis/LineOfSightAnalysis.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{3a43a2918b44781aaf85.js → 055a0ebf22a82f859474.js} +1 -1
- package/assets/esri/core/workers/chunks/{3273b6be43eeb49ee842.js → 0b12ff7b2ed2838afbb8.js} +1 -1
- package/assets/esri/core/workers/chunks/0e25548573baf855e394.js +1 -0
- package/assets/esri/core/workers/chunks/0edd4c3ca6e7d749d0e5.js +1 -0
- package/assets/esri/core/workers/chunks/133f971e72a1a6277ac4.js +1 -0
- package/assets/esri/core/workers/chunks/{c388ac33496f004d56f3.js → 135a90ae61f3b3cae91b.js} +1 -1
- package/assets/esri/core/workers/chunks/{54f9b1ab9d472bf4baca.js → 1facbda248863cf72cbd.js} +1 -1
- package/assets/esri/core/workers/chunks/1fb2d7abe6c8efa84695.js +1 -0
- package/assets/esri/core/workers/chunks/2133499e642193f6738f.js +1 -0
- package/assets/esri/core/workers/chunks/{dee63bfc108b4e5893a3.js → 2cf3934b3ecabdf207c8.js} +1 -1
- package/assets/esri/core/workers/chunks/{3c572629f46e5093223c.js → 30333a95dc0a44e23fb5.js} +1 -1
- package/assets/esri/core/workers/chunks/{7afe89eafab00afb31f2.js → 30837d93116f0337972f.js} +1 -1
- package/assets/esri/core/workers/chunks/31df729c17470245288c.js +2 -0
- package/assets/esri/core/workers/chunks/{c0bf663240df7be68131.js.LICENSE.txt → 31df729c17470245288c.js.LICENSE.txt} +1 -1
- package/assets/esri/core/workers/chunks/4130ea1f5a9f197168d7.js +1 -0
- package/assets/esri/core/workers/chunks/{417ee7a88575cb8f9aaf.js → 492b65fe99641f5740f0.js} +1 -1
- package/assets/esri/core/workers/chunks/4cdd29e1f3a1c7a39af7.js +1 -0
- package/assets/esri/core/workers/chunks/{9a0073d43b7dbaeba736.js → 541e644fc77dbe527124.js} +1 -1
- package/assets/esri/core/workers/chunks/{5a61a12b2492c6eae592.js → 59e341b2db44351bf557.js} +1 -1
- package/assets/esri/core/workers/chunks/{73630d52768e3d932f30.js → 5a10b58533b4116115ac.js} +1 -1
- package/assets/esri/core/workers/chunks/5fd787f63362defc984f.js +1 -0
- package/assets/esri/core/workers/chunks/682a8f15f352de76df69.js +1 -0
- package/assets/esri/core/workers/chunks/6a06635089761ee3e6d4.js +972 -0
- package/assets/esri/core/workers/chunks/{ab0c0c29d54f2ed954d6.js → 86b31ae136f931d7884a.js} +1 -1
- package/assets/esri/core/workers/chunks/{dc193247a1980360ec4f.js → 8e98ff9404a802352037.js} +1 -1
- package/assets/esri/core/workers/chunks/{863cfe35ee640bac103f.js → 94e51fe1c539df6257c2.js} +1 -1
- package/assets/esri/core/workers/chunks/{cbe7e6283a427a618d4b.js → 9519a02b9b8db88a3150.js} +1 -1
- package/assets/esri/core/workers/chunks/9f3a094aa4b47e4eb046.js +1 -0
- package/assets/esri/core/workers/chunks/{50d256bc3b213c8a1b09.js → a0ebf25c9c9a7f839b93.js} +1 -1
- package/assets/esri/core/workers/chunks/{d8a992dee594a6a64fde.js → a25f0a195f9217665530.js} +1 -1
- package/assets/esri/core/workers/chunks/a59ee7d2b98c85f27dd2.js +1 -0
- package/assets/esri/core/workers/chunks/{92ef9b0c61640e0ecbb4.js → a5dbab94697757c87c49.js} +1 -1
- package/assets/esri/core/workers/chunks/{147d3ee9aa81d7b2b7fa.js → a6406a248b7b2ed65f35.js} +1 -1
- package/assets/esri/core/workers/chunks/{ebdf61eb364ac0856f40.js → acbd0f4d72d1f5d8e4e8.js} +1 -1
- package/assets/esri/core/workers/chunks/acc97a210f36bff2d1b0.js +1 -0
- package/assets/esri/core/workers/chunks/ad68fe924456d6d7d4f0.js +1 -0
- package/assets/esri/core/workers/chunks/b06c949fc7d08e376a5f.js +1 -0
- package/assets/esri/core/workers/chunks/b4405e9fe6c0cf7250d3.js +1 -0
- package/assets/esri/core/workers/chunks/b97a34d2e7cceef1ac41.js +1 -0
- package/assets/esri/core/workers/chunks/bc08fe3b03767bd694c5.js +1 -0
- package/assets/esri/core/workers/chunks/c9b09099488d0e719dfb.js +1 -0
- package/assets/esri/core/workers/chunks/{4a05d0dfa73ff570e1fa.js → d15e6662d90718411d62.js} +1 -1
- package/assets/esri/core/workers/chunks/{b74b9dceabbf7b1aec39.js → d16aac3461af9cee0c29.js} +1 -1
- package/assets/esri/core/workers/chunks/{bb678bc2e2fc48112e07.js → d60dd3e1028f714f2258.js} +1 -1
- package/assets/esri/core/workers/chunks/{31c1ae0532dd991da63d.js → d6c150c243ca1f6108f9.js} +1 -1
- package/assets/esri/core/workers/chunks/{cab6decfcb3f596a3837.js → d8c59b1d73650c060dfb.js} +1 -1
- package/assets/esri/core/workers/chunks/{d24339b37cc9316e6d99.js → dcb6e1b33402d7fa455b.js} +1 -1
- package/assets/esri/core/workers/chunks/{a8da24116180d708cf81.js → df653bca2b14dffc82d1.js} +1 -1
- package/assets/esri/core/workers/chunks/{a3db91d04fe1fca0fe4f.js → e06461703e6f1acfcfdc.js} +1 -1
- package/assets/esri/core/workers/chunks/{423e199c2f695e913c0e.js → e3e1d87b8532bf84a18d.js} +1 -1
- package/assets/esri/core/workers/chunks/e7744b7e0c16bba93151.js +1 -0
- package/assets/esri/core/workers/chunks/ea50effc5c39870dc871.js +1 -0
- package/assets/esri/core/workers/chunks/fc4fd9db056579e09bfe.js +1 -0
- package/assets/esri/core/workers/chunks/fc9b5f40c5179a8c90de.js +1 -0
- package/assets/esri/core/workers/chunks/fd35b69872ac9393924f.js +1 -0
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ar.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_bg.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_bs.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ca.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_cs.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_da.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_de.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_el.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_es.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_et.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_fi.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_fr.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_he.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_hr.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_hu.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_id.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_it.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ja.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ko.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_lt.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_lv.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_nb.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_nl.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_pl.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_pt-BR.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_pt-PT.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ro.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_ru.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sk.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sl.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sr.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_sv.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_th.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_tr.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_uk.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_vi.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_zh-CN.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_zh-HK.json +1 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_zh-TW.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ar.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_bg.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_bs.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ca.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_cs.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_da.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_de.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_el.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_es.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_et.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_fi.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_fr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_he.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_hr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_hu.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_id.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_it.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ja.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ko.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_lt.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_lv.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_nb.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_nl.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_pl.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_pt-BR.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_pt-PT.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ro.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_ru.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sk.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sl.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_sv.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_th.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_tr.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_uk.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_vi.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_zh-CN.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_zh-HK.json +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather_zh-TW.json +1 -1
- package/chunks/ColorMaterial.glsl.js +4 -4
- package/chunks/LineMarker.glsl.js +12 -12
- package/chunks/Pattern.glsl.js +17 -17
- package/chunks/RibbonLine.glsl.js +34 -34
- package/chunks/ShadedColorMaterial.glsl.js +11 -11
- package/chunks/index.js +1 -1
- package/chunks/sphere.js +1 -1
- package/config.js +1 -1
- package/core/workers/RemoteClient.js +1 -1
- package/core/workers/WorkerHandle.js +1 -1
- package/geometry/support/sphere.js +1 -1
- package/interfaces.d.ts +74 -20
- package/layers/mixins/PortalLayer.js +1 -1
- package/layers/support/LercDecoder.js +1 -1
- package/package.json +2 -2
- package/request.js +1 -1
- package/support/elevationInfoUtils.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/support/previewSymbol2D.js +1 -1
- package/views/2d/engine/brushes.js +1 -1
- package/views/2d/engine/vectorTiles/TileParser.js +1 -1
- package/views/2d/engine/webgl/GraphicDisplayList.js +1 -1
- package/views/2d/engine/webgl/Painter.js +1 -1
- package/views/2d/engine/webgl/WGLRendererInfo.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLBrushDotDensity.js +5 -0
- package/views/2d/engine/webgl/brushes/WGLBrushHeatmap.js +5 -0
- package/views/2d/engine/webgl/brushes/WGLGeometryBrush.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLGeometryBrushFill.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLGeometryBrushLabel.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLGeometryBrushLine.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLGeometryBrushMarker.js +1 -1
- package/views/2d/engine/webgl/brushes/WGLGeometryBrushText.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/engine/webgl/techniques/Technique.js +5 -0
- package/views/2d/engine/webgl/techniques/dotDensity/TechniqueDotDensity.js +5 -0
- package/views/2d/engine/webgl/techniques/heatmap/TechniqueHeatmap.js +5 -0
- package/views/2d/engine/webgl/techniques/utils.js +5 -0
- package/views/2d/layers/features/schemaUtils.js +1 -1
- package/views/2d/layers/features/support/AttributeStore.js +1 -1
- package/views/2d/layers/features/support/GraphicsReader.js +1 -1
- package/views/2d/layers/features/tileRenderers/support/WGLFeatureView.js +1 -1
- package/views/2d/layers/graphics/GraphicsView2D.js +1 -1
- package/views/3d/analysis/Slice/SliceTool.js +1 -1
- package/views/3d/camera/constraintUtils/distance.js +1 -1
- package/views/3d/camera/constraintUtils/tilt.js +1 -1
- package/views/3d/interactive/SnappingVisualizer3D.js +1 -1
- package/views/3d/interactive/analysisTools/lineOfSight/LineOfSightTool.js +1 -1
- package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
- package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DView.js +1 -1
- package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DView.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/I3SMeshWorkerHandle.js +1 -1
- package/views/3d/layers/I3SPointsWorkerHandle.js +1 -1
- package/views/3d/layers/PointCloudWorkerHandle.js +1 -1
- package/views/3d/layers/graphics/Deconflictor.js +1 -1
- package/views/3d/layers/i3s/I3SElevationProvider.js +1 -1
- package/views/3d/layers/i3s/I3SNode.js +1 -1
- package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
- package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
- package/views/3d/state/utils/navigationUtils.js +1 -1
- package/views/3d/support/PBFDecoder.js +1 -1
- package/views/3d/support/geometryUtils/sphere.js +1 -1
- package/views/3d/terrain/OverlayManager.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/PatchRenderData.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/Tile.js +1 -1
- package/views/3d/terrain/tileUtils.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/IndexRange/ComponentRangeRunLengthEncoded.js +1 -1
- package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/Octree.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeProcessingWorker.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeWorkerHandle.js +1 -1
- package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
- package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
- package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
- package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
- package/views/interactive/snapping/LineSnapper.js +1 -1
- package/views/interactive/snapping/ParallelLineSnapper.js +1 -1
- package/views/interactive/snapping/RightAngleSnapper.js +1 -1
- package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
- package/views/interactive/snapping/SnappingManager.js +1 -1
- package/views/interactive/snapping/candidates/EdgeSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/FeatureSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/IntersectionSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/LineSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/ParallelLineSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/RightAngleSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/RightAngleTriangleSnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/SnappingCandidate.js +1 -1
- package/views/interactive/snapping/candidates/VertexSnappingCandidate.js +1 -1
- package/views/interactive/snapping/featureSources/FeatureCollectionSnappingSource.js +1 -1
- package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
- package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
- package/views/interactive/snapping/featureSources/SceneLayerSnappingSource.js +5 -0
- package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
- package/views/interactive/snapping/featureSources/queryEngineUtils.js +1 -1
- package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +5 -0
- package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorkerHandle.js +5 -0
- package/views/interactive/snapping/hints/IntersectionSnappingHint.js +1 -1
- package/views/interactive/snapping/hints/LineSnappingHint.js +1 -1
- package/views/interactive/snapping/hints/ParallelSnappingHint.js +1 -1
- package/views/interactive/snapping/hints/PointSnappingHint.js +1 -1
- package/views/interactive/snapping/hints/RightAngleSnappingHint.js +1 -1
- package/views/interactive/snapping/hints/SnappingHint.js +1 -1
- package/views/interactive/snapping/snappingUtils.js +1 -1
- package/views/support/colorUtils.js +1 -1
- package/webmap/Bookmark.js +1 -1
- package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
- package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
- package/widgets/FeatureTable/Grid/Grid.js +2 -2
- package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Slice/SliceViewModel.js +1 -1
- package/widgets/support/AnalysisViewModel.js +1 -1
- package/widgets/support/InteractiveAnalysisViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/2266d6388444ac5d50b3.js +0 -1
- package/assets/esri/core/workers/chunks/3f6b17c9d2629ed396da.js +0 -1
- package/assets/esri/core/workers/chunks/404f1d7bce014c7e6965.js +0 -1
- package/assets/esri/core/workers/chunks/4e4994665549435f51ee.js +0 -1
- package/assets/esri/core/workers/chunks/503226c5c612feab4115.js +0 -1
- package/assets/esri/core/workers/chunks/528033aa0d663b4d41bf.js +0 -1
- package/assets/esri/core/workers/chunks/54af957c5330933805a3.js +0 -1
- package/assets/esri/core/workers/chunks/6ef8de3aa9a8d9c22161.js +0 -1
- package/assets/esri/core/workers/chunks/72d8b2ad36f0d0a40a0d.js +0 -1
- package/assets/esri/core/workers/chunks/756befc4aa3354e1db1d.js +0 -972
- package/assets/esri/core/workers/chunks/8a4e2831e8fdde530b21.js +0 -1
- package/assets/esri/core/workers/chunks/9b9821772b6cbe189fe0.js +0 -1
- package/assets/esri/core/workers/chunks/9c4d41f20c1a94147344.js +0 -1
- package/assets/esri/core/workers/chunks/9cfd66ee9e6328b3693a.js +0 -1
- package/assets/esri/core/workers/chunks/b548bf032c8af34fe155.js +0 -1
- package/assets/esri/core/workers/chunks/bbcae04235830debd814.js +0 -1
- package/assets/esri/core/workers/chunks/bc6f5927f07c5993b998.js +0 -1
- package/assets/esri/core/workers/chunks/c0bf663240df7be68131.js +0 -2
- package/assets/esri/core/workers/chunks/cd9668acbe3babd2b188.js +0 -1
- package/assets/esri/core/workers/chunks/d53c7a9ede56be749f2b.js +0 -1
- package/assets/esri/core/workers/chunks/e07930ab66f89d215666.js +0 -1
- package/assets/esri/core/workers/chunks/f72de828ede4d0c5e9d7.js +0 -1
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{unwrapOr as e}from"../core/maybe.js";import{ShaderOutput as
|
|
5
|
+
import{unwrapOr as e}from"../core/maybe.js";import{ShaderOutput as t}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{RibbonVertexPosition as o}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import{OutputDepth as n}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js";import{LineStipple as r}from"../views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js";import{multipassTerrainTest as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{PiUtils as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js";import{symbolAlphaCutoff as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaCutoff.js";import{ColorConversion as p}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2PassUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float4Uniform as g}from"../views/3d/webgl-engine/core/shaderModules/Float4Uniform.js";import{FloatPassUniform as m}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as v}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{Matrix4PassUniform as f}from"../views/3d/webgl-engine/core/shaderModules/Matrix4PassUniform.js";import{ShaderBuilder as h}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{BindType as u}from"../views/3d/webgl-engine/core/shaderTechnique/BindType.js";import{TransparencyPassType as D}from"../views/3d/webgl-engine/lib/basicInterfaces.js";import{VertexAttribute as S}from"../views/3d/webgl-engine/lib/VertexAttribute.js";import{CapType as x}from"../views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js";const b=1;function L(L){const w=new h,y=L.hasMultipassTerrain&&(L.output===t.Color||L.output===t.Alpha);w.include(s),w.include(o,L),w.include(r,L),L.output===t.Depth&&w.include(n,L),d(w,L);const{vertex:C,fragment:j}=w;C.uniforms.add([new f("inverseProjectionMatrix",((e,t)=>t.camera.inverseProjectionMatrix)),new c("nearFar",((e,t)=>t.camera.nearFar)),new m("miterLimit",(e=>"miter"!==e.join?0:e.miterLimit)),new g("viewport",u.Pass,((e,t)=>t.camera.fullViewport))]),C.constants.add("LARGE_HALF_FLOAT","float",65500),w.attributes.add(S.POSITION,"vec3"),w.attributes.add(S.SUBDIVISIONFACTOR,"float"),w.attributes.add(S.UV0,"vec2"),w.attributes.add(S.AUXPOS1,"vec3"),w.attributes.add(S.AUXPOS2,"vec3"),w.varyings.add("vColor","vec4"),w.varyings.add("vpos","vec3"),w.varyings.add("linearDepth","float"),y&&w.varyings.add("depth","float");const R=L.capType===x.ROUND,P=L.stippleEnabled&&L.stippleScaleWithLineWidth||R;P&&w.varyings.add("vLineWidth","float");const A=L.stippleEnabled&&L.stippleScaleWithLineWidth;A&&w.varyings.add("vLineSizeInv","float");const F=L.innerColorEnabled||R;F&&w.varyings.add("vLineDistance","float");const E=L.stippleEnabled&&R,T=L.falloffEnabled||E;T&&w.varyings.add("vLineDistanceNorm","float"),R&&(w.varyings.add("vSegmentSDF","float"),w.varyings.add("vReverseSegmentSDF","float")),C.code.add(v`#define PERPENDICULAR(v) vec2(v.y, -v.x);
|
|
6
6
|
float interp(float ncp, vec4 a, vec4 b) {
|
|
7
7
|
return (-ncp - a.z) / (b.z - a.z);
|
|
8
8
|
}
|
|
@@ -11,11 +11,11 @@ float s = sin(a);
|
|
|
11
11
|
float c = cos(a);
|
|
12
12
|
mat2 m = mat2(c, -s, s, c);
|
|
13
13
|
return m * v;
|
|
14
|
-
}`),
|
|
14
|
+
}`),C.code.add(v`vec4 projectAndScale(vec4 pos) {
|
|
15
15
|
vec4 posNdc = proj * pos;
|
|
16
16
|
posNdc.xy *= viewport.zw / posNdc.w;
|
|
17
17
|
return posNdc;
|
|
18
|
-
}`),
|
|
18
|
+
}`),C.code.add(v`
|
|
19
19
|
void clipAndTransform(inout vec4 pos, inout vec4 prev, inout vec4 next, in bool isStartVertex) {
|
|
20
20
|
float vnp = nearFar[0] * 0.99;
|
|
21
21
|
|
|
@@ -50,14 +50,14 @@ return posNdc;
|
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
${
|
|
53
|
+
${y?"depth = pos.z;":""}
|
|
54
54
|
linearDepth = (-pos.z - nearFar[0]) / (nearFar[1] - nearFar[0]);
|
|
55
55
|
|
|
56
56
|
pos = projectAndScale(pos);
|
|
57
57
|
next = projectAndScale(next);
|
|
58
58
|
prev = projectAndScale(prev);
|
|
59
59
|
}
|
|
60
|
-
`),
|
|
60
|
+
`),C.uniforms.add(new m("pixelRatio",((e,t)=>t.camera.pixelRatio))),C.code.add(v`
|
|
61
61
|
void main(void) {
|
|
62
62
|
// unpack values from uv0.y
|
|
63
63
|
bool isStartVertex = abs(abs(uv0.y)-3.0) == 1.0;
|
|
@@ -77,8 +77,8 @@ return posNdc;
|
|
|
77
77
|
float lineSize = getSize();
|
|
78
78
|
float lineWidth = lineSize * pixelRatio;
|
|
79
79
|
|
|
80
|
-
${
|
|
81
|
-
${
|
|
80
|
+
${P?v`vLineWidth = lineWidth;`:""}
|
|
81
|
+
${A?v`vLineSizeInv = 1.0 / lineSize;`:""}
|
|
82
82
|
|
|
83
83
|
// convert sub-pixel coverage to alpha
|
|
84
84
|
if (lineWidth < 1.0) {
|
|
@@ -102,12 +102,12 @@ return posNdc;
|
|
|
102
102
|
|
|
103
103
|
float leftLen = length(left);
|
|
104
104
|
float rightLen = length(right);
|
|
105
|
-
`);(L.stippleEnabled||
|
|
105
|
+
`);(L.stippleEnabled||R)&&C.code.add(v`
|
|
106
106
|
float isEndVertex = float(!isStartVertex);
|
|
107
107
|
vec2 segmentOrigin = mix(pos.xy, prev.xy, isEndVertex);
|
|
108
108
|
vec2 segment = mix(right, left, isEndVertex);
|
|
109
|
-
${
|
|
110
|
-
`),
|
|
109
|
+
${R?v`vec2 segmentEnd = mix(next.xy, pos.xy, isEndVertex);`:""}
|
|
110
|
+
`),C.code.add(v`left = (leftLen > 0.001) ? left/leftLen : vec2(0.0, 0.0);
|
|
111
111
|
right = (rightLen > 0.001) ? right/rightLen : vec2(0.0, 0.0);
|
|
112
112
|
vec2 capDisplacementDir = vec2(0, 0);
|
|
113
113
|
vec2 joinDisplacementDir = vec2(0, 0);
|
|
@@ -123,7 +123,7 @@ if (!isOutside) {
|
|
|
123
123
|
displacementLen = min(displacementLen, min(leftLen, rightLen)/abs(nDotSeg));
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
|
-
if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),L.roundJoins?
|
|
126
|
+
if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),L.roundJoins?C.code.add(v`
|
|
127
127
|
vec2 startDir = leftLen < 0.001 ? right : left;
|
|
128
128
|
startDir = PERPENDICULAR(startDir);
|
|
129
129
|
|
|
@@ -134,7 +134,7 @@ if (isOutside && (displacementLen > miterLimit * lineWidth)) {`),L.roundJoins?y.
|
|
|
134
134
|
|
|
135
135
|
float rotationAngle = acos(clamp(dot(startDir, endDir), -1.0, 1.0));
|
|
136
136
|
joinDisplacementDir = rotate(startDir, -sign(uv0.y) * factor * rotationAngle);
|
|
137
|
-
`):
|
|
137
|
+
`):C.code.add(v`if (leftLen < 0.001) {
|
|
138
138
|
joinDisplacementDir = right;
|
|
139
139
|
}
|
|
140
140
|
else if (rightLen < 0.001) {
|
|
@@ -143,7 +143,7 @@ joinDisplacementDir = left;
|
|
|
143
143
|
else {
|
|
144
144
|
joinDisplacementDir = (isStartVertex || subdivisionFactor > 0.0) ? right : left;
|
|
145
145
|
}
|
|
146
|
-
joinDisplacementDir = PERPENDICULAR(joinDisplacementDir);`);const
|
|
146
|
+
joinDisplacementDir = PERPENDICULAR(joinDisplacementDir);`);const W=L.capType!==x.BUTT;return C.code.add(v`
|
|
147
147
|
displacementLen = lineWidth;
|
|
148
148
|
}
|
|
149
149
|
} else {
|
|
@@ -151,9 +151,9 @@ joinDisplacementDir = PERPENDICULAR(joinDisplacementDir);`);const E=L.capType!==
|
|
|
151
151
|
joinDisplacementDir = isStartVertex ? right : left;
|
|
152
152
|
joinDisplacementDir = PERPENDICULAR(joinDisplacementDir);
|
|
153
153
|
|
|
154
|
-
${
|
|
154
|
+
${W?v`capDisplacementDir = isStartVertex ? -right : left;`:""}
|
|
155
155
|
}
|
|
156
|
-
`),
|
|
156
|
+
`),C.code.add(v`
|
|
157
157
|
// Displacement (in pixels) caused by join/or cap
|
|
158
158
|
vec2 dpos = joinDisplacementDir * sign(uv0.y) * displacementLen + capDisplacementDir * displacementLen;
|
|
159
159
|
|
|
@@ -163,16 +163,16 @@ joinDisplacementDir = PERPENDICULAR(joinDisplacementDir);`);const E=L.capType!==
|
|
|
163
163
|
${T?v`vLineDistanceNorm = lineDistNorm;`:""}
|
|
164
164
|
|
|
165
165
|
pos.xy += dpos;
|
|
166
|
-
`),
|
|
166
|
+
`),R&&C.code.add(v`vec2 segmentDir = normalize(segment);
|
|
167
167
|
vSegmentSDF = (isJoin && isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentOrigin, segmentDir) * pos.w) ;
|
|
168
|
-
vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),L.stippleEnabled&&(L.draped?
|
|
169
|
-
float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),
|
|
168
|
+
vReverseSegmentSDF = (isJoin && !isStartVertex) ? LARGE_HALF_FLOAT : (dot(pos.xy - segmentEnd, -segmentDir) * pos.w);`),L.stippleEnabled&&(L.draped?C.uniforms.add(new m("worldToScreenRatio",((e,t)=>1/t.screenToPCSRatio))):C.code.add(v`vec3 segmentCenter = mix((auxpos2 + position) * 0.5, (position + auxpos1) * 0.5, isEndVertex);
|
|
169
|
+
float worldToScreenRatio = computeWorldToScreenRatio(segmentCenter);`),C.code.add(v`float segmentLengthScreenDouble = length(segment);
|
|
170
170
|
float segmentLengthScreen = segmentLengthScreenDouble * 0.5;
|
|
171
171
|
float discreteWorldToScreenRatio = discretizeWorldToScreenRatio(worldToScreenRatio);
|
|
172
172
|
float segmentLengthRender = length(mix(auxpos2 - position, position - auxpos1, isEndVertex));
|
|
173
|
-
vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),L.draped?
|
|
174
|
-
float startPseudoScreen = uv0.x * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):
|
|
175
|
-
float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),
|
|
173
|
+
vStipplePatternStretch = worldToScreenRatio / discreteWorldToScreenRatio;`),L.draped?C.code.add(v`float segmentLengthPseudoScreen = segmentLengthScreen / pixelRatio * discreteWorldToScreenRatio / worldToScreenRatio;
|
|
174
|
+
float startPseudoScreen = uv0.x * discreteWorldToScreenRatio - mix(0.0, segmentLengthPseudoScreen, isEndVertex);`):C.code.add(v`float startPseudoScreen = mix(uv0.x, uv0.x - segmentLengthRender, isEndVertex) * discreteWorldToScreenRatio;
|
|
175
|
+
float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRatio;`),C.code.add(v`
|
|
176
176
|
float patternLength = ${L.stippleScaleWithLineWidth?"lineSize * ":""} stipplePatternPixelSize;
|
|
177
177
|
|
|
178
178
|
// Compute the coordinates at both start and end of the line segment, because we need both to clamp to in the fragment shader
|
|
@@ -201,7 +201,7 @@ float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRat
|
|
|
201
201
|
isStartVertex ?
|
|
202
202
|
vec2(-1e038, vStippleDistanceLimits.y) :
|
|
203
203
|
vec2(vStippleDistanceLimits.x, 1e038);
|
|
204
|
-
`)),
|
|
204
|
+
`)),C.code.add(v`
|
|
205
205
|
// Convert back into NDC
|
|
206
206
|
pos.xy = (pos.xy / viewport.zw) * pos.w;
|
|
207
207
|
|
|
@@ -215,11 +215,11 @@ float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRat
|
|
|
215
215
|
gl_Position = pos;
|
|
216
216
|
}
|
|
217
217
|
}
|
|
218
|
-
`),w.include(a,L),w.include(
|
|
218
|
+
`),y&&w.include(a,L),w.include(i,L),j.include(p),j.code.add(v`
|
|
219
219
|
void main() {
|
|
220
220
|
discardBySlice(vpos);
|
|
221
|
-
${
|
|
222
|
-
`),L.wireframe?
|
|
221
|
+
${y?"terrainDepthTest(gl_FragCoord, depth);":""}
|
|
222
|
+
`),L.wireframe?j.code.add(v`vec4 finalColor = vec4(1.0, 0.0, 1.0, 1.0);`):(R&&j.code.add(v`
|
|
223
223
|
float sdf = min(vSegmentSDF, vReverseSegmentSDF);
|
|
224
224
|
vec2 fragmentPosition = vec2(
|
|
225
225
|
min(sdf, 0.0),
|
|
@@ -233,7 +233,7 @@ float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRat
|
|
|
233
233
|
if (capCoverage < ${v.float(l)}) {
|
|
234
234
|
discard;
|
|
235
235
|
}
|
|
236
|
-
`),
|
|
236
|
+
`),E?j.code.add(v`
|
|
237
237
|
vec2 stipplePosition = vec2(
|
|
238
238
|
min(getStippleSDF() * 2.0 - 1.0, 0.0),
|
|
239
239
|
vLineDistanceNorm * gl_FragCoord.w
|
|
@@ -242,19 +242,19 @@ float segmentLengthPseudoScreen = segmentLengthRender * discreteWorldToScreenRat
|
|
|
242
242
|
float stippleCapSDF = (stippleRadius - vLineWidth) * 0.5; // Divide by 2 to transform from double pixel scale
|
|
243
243
|
float stippleCoverage = clamp(0.5 - stippleCapSDF, 0.0, 1.0);
|
|
244
244
|
float stippleAlpha = step(${v.float(l)}, stippleCoverage);
|
|
245
|
-
`):
|
|
246
|
-
vec4 color = intrinsicColor * vColor;`),L.innerColorEnabled&&(
|
|
245
|
+
`):j.code.add(v`float stippleAlpha = getStippleAlpha();`),j.uniforms.add(new g("intrinsicColor",u.Pass,(e=>e.color))),j.code.add(v`discardByStippleAlpha(stippleAlpha, stippleAlphaColorDiscard);
|
|
246
|
+
vec4 color = intrinsicColor * vColor;`),L.innerColorEnabled&&(j.uniforms.add(new g("innerColor",u.Pass,(t=>e(t.innerColor,t.color)))),j.uniforms.add(new m("innerWidth",((e,t)=>e.innerWidth*t.camera.pixelRatio))),j.code.add(v`float distToInner = abs(vLineDistance * gl_FragCoord.w) - innerWidth;
|
|
247
247
|
float innerAA = clamp(0.5 - distToInner, 0.0, 1.0);
|
|
248
248
|
float innerAlpha = innerColor.a + color.a * (1.0 - innerColor.a);
|
|
249
|
-
color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),
|
|
249
|
+
color = mix(color, vec4(innerColor.rgb, innerAlpha), innerAA);`)),j.code.add(v`vec4 finalColor = blendStipple(color, stippleAlpha);`),L.falloffEnabled&&(j.uniforms.add(new m("falloff",(e=>e.falloff))),j.code.add(v`finalColor.a *= pow(max(0.0, 1.0 - abs(vLineDistanceNorm * gl_FragCoord.w)), falloff);`))),j.code.add(v`
|
|
250
250
|
if (finalColor.a < ${v.float(l)}) {
|
|
251
251
|
discard;
|
|
252
252
|
}
|
|
253
253
|
|
|
254
|
-
${L.output===
|
|
255
|
-
${L.output===
|
|
256
|
-
${L.output===
|
|
257
|
-
${L.output===
|
|
258
|
-
${L.output===
|
|
254
|
+
${L.output===t.Alpha?v`gl_FragColor = vec4(finalColor.a);`:""}
|
|
255
|
+
${L.output===t.Color?v`gl_FragColor = highlightSlice(finalColor, vpos);`:""}
|
|
256
|
+
${L.output===t.Color&&L.transparencyPassType===D.Color?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}
|
|
257
|
+
${L.output===t.Highlight?v`gl_FragColor = vec4(1.0);`:""}
|
|
258
|
+
${L.output===t.Depth?v`outputDepth(linearDepth);`:""}
|
|
259
259
|
}
|
|
260
260
|
`),w}const w=Object.freeze(Object.defineProperty({__proto__:null,NUM_ROUND_JOIN_SUBDIVISIONS:b,build:L},Symbol.toStringTag,{value:"Module"}));export{b as N,w as R,L as b};
|
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.24/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{c as e}from"./vec4f64.js";import{ScreenSizeScaling as
|
|
5
|
+
import{c as e}from"./vec4f64.js";import{ScreenSizeScaling as o}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js";import{ShaderOutput as r}from"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js";import{SliceDraw as i}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{Transform as a}from"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js";import{multipassTerrainTest as s}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import{symbolAlphaCutoff as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaCutoff.js";import{ColorConversion as n}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{addProjViewLocalOrigin as l}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float3PassUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{Float4Uniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float4Uniform.js";import{glsl as g}from"../views/3d/webgl-engine/core/shaderModules/interfaces.js";import{Matrix4PassUniform as m}from"../views/3d/webgl-engine/core/shaderModules/Matrix4PassUniform.js";import{ShaderBuilder as v}from"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js";import{BindType as w}from"../views/3d/webgl-engine/core/shaderTechnique/BindType.js";import{TransparencyPassType as u}from"../views/3d/webgl-engine/lib/basicInterfaces.js";import{VertexAttribute as f}from"../views/3d/webgl-engine/lib/VertexAttribute.js";function p(e){const p=new v,h=e.hasMultipassTerrain&&(e.output===r.Color||e.output===r.Alpha);p.include(a),p.include(o,e),p.include(i,e);const{vertex:C,fragment:j}=p;return j.include(n),l(p,e),j.uniforms.add(new c("uColor",w.Pass,(e=>e.color))),p.attributes.add(f.POSITION,"vec3"),p.varyings.add("vWorldPosition","vec3"),h&&p.varyings.add("depth","float"),e.screenSizeEnabled&&p.attributes.add(f.OFFSET,"vec3"),e.shadingEnabled&&(C.uniforms.add(new m("viewNormal",((e,o)=>o.camera.viewInverseTransposeMatrix))),p.attributes.add(f.NORMAL,"vec3"),p.varyings.add("vViewNormal","vec3")),C.code.add(g`
|
|
6
6
|
void main(void) {
|
|
7
7
|
vWorldPosition = ${e.screenSizeEnabled?"screenSizeScaling(offset, position)":"position"};
|
|
8
|
-
`),e.shadingEnabled&&
|
|
9
|
-
vViewNormal = (viewNormal * vec4(worldNormal, 1)).xyz;`),
|
|
10
|
-
${
|
|
8
|
+
`),e.shadingEnabled&&C.code.add(g`vec3 worldNormal = normal;
|
|
9
|
+
vViewNormal = (viewNormal * vec4(worldNormal, 1)).xyz;`),C.code.add(g`
|
|
10
|
+
${h?"depth = (view * vec4(vWorldPosition, 1.0)).z;":""}
|
|
11
11
|
gl_Position = transformPosition(proj, view, vWorldPosition);
|
|
12
12
|
}
|
|
13
|
-
`),p.include(s,e),j.code.add(g`
|
|
13
|
+
`),h&&p.include(s,e),j.code.add(g`
|
|
14
14
|
void main() {
|
|
15
15
|
discardBySlice(vWorldPosition);
|
|
16
|
-
${
|
|
17
|
-
`),e.shadingEnabled?(j.uniforms.add(new t("shadingDirection",(e=>e.shadingDirection))),j.uniforms.add(new c("shadedColor",w.Pass,(e=>
|
|
16
|
+
${h?"terrainDepthTest(gl_FragCoord, depth);":""}
|
|
17
|
+
`),e.shadingEnabled?(j.uniforms.add(new t("shadingDirection",(e=>e.shadingDirection))),j.uniforms.add(new c("shadedColor",w.Pass,(e=>b(e.shadingTint,e.color)))),j.code.add(g`vec3 viewNormalNorm = normalize(vViewNormal);
|
|
18
18
|
float shadingFactor = 1.0 - clamp(-dot(viewNormalNorm, shadingDirection), 0.0, 1.0);
|
|
19
19
|
vec4 finalColor = mix(uColor, shadedColor, shadingFactor);`)):j.code.add(g`vec4 finalColor = uColor;`),j.code.add(g`
|
|
20
|
-
if (finalColor.a < ${g.float(
|
|
20
|
+
if (finalColor.a < ${g.float(d)}) {
|
|
21
21
|
discard;
|
|
22
22
|
}
|
|
23
|
-
${e.output===
|
|
23
|
+
${e.output===r.Alpha?g`gl_FragColor = vec4(finalColor.a);`:""}
|
|
24
24
|
|
|
25
|
-
${e.output===
|
|
25
|
+
${e.output===r.Color?g`gl_FragColor = highlightSlice(finalColor, vWorldPosition); ${e.transparencyPassType===u.Color?"gl_FragColor = premultiplyAlpha(gl_FragColor);":""}`:""}
|
|
26
26
|
}
|
|
27
|
-
`),p}function
|
|
27
|
+
`),p}function b(e,o){const r=1-e[3],i=e[3]+o[3]*r;return 0===i?(h[3]=i,h):(h[0]=(e[0]*e[3]+o[0]*o[3]*r)/i,h[1]=(e[1]*e[3]+o[1]*o[3]*r)/i,h[2]=(e[2]*e[3]+o[2]*o[3]*r)/i,h[3]=o[3],h)}const h=e(),C=Object.freeze(Object.defineProperty({__proto__:null,build:p},Symbol.toStringTag,{value:"Module"}));export{C as S,p as b};
|