@arcgis/core 4.23.0-next.20220126 → 4.23.0-next.20220130
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/02fbc76dfdc20e628c61.js +1 -0
- package/assets/esri/core/workers/chunks/0453fad5cb819797b4f6.js +1 -0
- package/assets/esri/core/workers/chunks/0463ba46df855a92b9c0.js +1 -0
- package/assets/esri/core/workers/chunks/0cd0a6eef51fc5b9ea61.js +1 -0
- package/assets/esri/core/workers/chunks/{97ec9eef0048760fa260.js → 0d02c6ad1f4688bfa374.js} +1 -1
- package/assets/esri/core/workers/chunks/0d684f16f37d5dc385dd.js +1 -0
- package/assets/esri/core/workers/chunks/0e17691520d890d34efb.js +1 -0
- package/assets/esri/core/workers/chunks/16b6d0f8378582c051c3.js +1 -0
- package/assets/esri/core/workers/chunks/{0ce1dc14280d6f188468.js → 17de7a324dfa7f57ad5d.js} +1 -1
- package/assets/esri/core/workers/chunks/{b313ab14a643273e7d09.js → 1877ab1b6a115dbba1c5.js} +1 -1
- package/assets/esri/core/workers/chunks/{c36f84daa7736878418d.js → 197ec52641aed20029c6.js} +1 -1
- package/assets/esri/core/workers/chunks/1b2a961f776a0b57e57a.js +1 -0
- package/assets/esri/core/workers/chunks/1b3fd66577b19aa5f2b6.js +1 -0
- package/assets/esri/core/workers/chunks/1c733b7db092a2a88ef3.js +1 -0
- package/assets/esri/core/workers/chunks/1f8c6a179e39fd4c5e6f.js +1 -0
- package/assets/esri/core/workers/chunks/2076fcbae63f1bfb7143.js +1 -0
- package/assets/esri/core/workers/chunks/{9387db408f496e7dd003.js → 214910032945dd2d86b0.js} +1 -1
- package/assets/esri/core/workers/chunks/27474b007988855bea9d.js +1 -0
- package/assets/esri/core/workers/chunks/281b89dbf5574fc642ae.js +1 -0
- package/assets/esri/core/workers/chunks/2c8fe9bc988c3c5760a5.js +1 -0
- package/assets/esri/core/workers/chunks/34b59d7099904dcb28b5.js +1 -0
- package/assets/esri/core/workers/chunks/357033117dfe61eb81ea.js +1 -0
- package/assets/esri/core/workers/chunks/{b2ebe4f6d100e15b512d.js → 37c03cfc19086ce631c6.js} +1 -1
- package/assets/esri/core/workers/chunks/386f86f961146f530aa7.js +1 -0
- package/assets/esri/core/workers/chunks/{e6165e17fbb07bfc40a1.js → 391e96192d1ec4e55ce2.js} +1 -1
- package/assets/esri/core/workers/chunks/44f0c3663b293afbd172.js +1 -0
- package/assets/esri/core/workers/chunks/483d5d8593d96d0f0b15.js +1 -0
- package/assets/esri/core/workers/chunks/{c959e0d1cf7dce0421b9.js → 48fa8aed6c24877b44c4.js} +1 -1
- package/assets/esri/core/workers/chunks/{438f0b5ae5c53ae4f06a.js → 4954fd86b48cc68b737c.js} +1 -1
- package/assets/esri/core/workers/chunks/49a1a633bb0d93764aae.js +1 -0
- package/assets/esri/core/workers/chunks/4ba6de8aa7e2960bad49.js +1 -0
- package/assets/esri/core/workers/chunks/4be35af7d6babbfe9d84.js +1 -0
- package/assets/esri/core/workers/chunks/5457962a70bd3c557a75.js +1 -0
- package/assets/esri/core/workers/chunks/57856b4a9b8784a69844.js +1 -0
- package/assets/esri/core/workers/chunks/{b9c177524b3e7de1ffd1.js → 5790d171072b3c7d108f.js} +1 -1
- package/assets/esri/core/workers/chunks/{5dfe1f8d520025e2118b.js → 57b349d1dbc0bed75b79.js} +1 -1
- package/assets/esri/core/workers/chunks/{97a28641b3b2fd31bea2.js → 5bcb3240b3c005e5fe72.js} +1 -1
- package/assets/esri/core/workers/chunks/5d11b97b667921d67ae7.js +1 -0
- package/assets/esri/core/workers/chunks/5dbe555a5a662ff3d9ce.js +1 -0
- package/assets/esri/core/workers/chunks/5ec98f4ddac707d0fbd1.js +1 -0
- package/assets/esri/core/workers/chunks/64b7e8d812ea8fcf269e.js +1 -0
- package/assets/esri/core/workers/chunks/{ba5eb394f098968c22d2.js → 655b55ac0cd533d7e9d7.js} +1 -1
- package/assets/esri/core/workers/chunks/{b0b036ad3ad3cd956747.js → 69fd99b7c76e9992ccf3.js} +1 -1
- package/assets/esri/core/workers/chunks/75d812955a473d0e8960.js +1 -0
- package/assets/esri/core/workers/chunks/7903a3e2e0faff0f86c0.js +1 -0
- package/assets/esri/core/workers/chunks/{cc146c57bbdac8029fd8.js → 7a5f5acfbd4ca1a5c1f3.js} +1 -1
- package/assets/esri/core/workers/chunks/83d00afae4406ec78bc9.js +1 -0
- package/assets/esri/core/workers/chunks/{434b16731c6a81f868ef.js → 85b1f36790df95b17659.js} +1 -1
- package/assets/esri/core/workers/chunks/89820b200ee44e678af5.js +1 -0
- package/assets/esri/core/workers/chunks/918bb7a7d901544a7367.js +1 -0
- package/assets/esri/core/workers/chunks/{94b8dbf859df71858d1c.js → 929c9b7cdab7c4ca3d87.js} +1 -1
- package/assets/esri/core/workers/chunks/949b2269457302ffc64b.js +1 -0
- package/assets/esri/core/workers/chunks/{601e697dc7414bda128a.js → 952980635afc7ec81804.js} +1 -1
- package/assets/esri/core/workers/chunks/9876a1bae350795fab36.js +1 -0
- package/assets/esri/core/workers/chunks/99619fcb772807c74f3b.js +1 -0
- package/assets/esri/core/workers/chunks/{010a71c2aa1b7681e191.js → 9d11f84e6c893b9d0019.js} +1 -1
- package/assets/esri/core/workers/chunks/a1930e4f035bc9aa1ae5.js +1 -0
- package/assets/esri/core/workers/chunks/a8692bffb76444c34760.js +1 -0
- package/assets/esri/core/workers/chunks/{f760a3e030b0f358a92a.js → aeaa1667c2d9f1b3366b.js} +1 -1
- package/assets/esri/core/workers/chunks/{3f343f792fd9f44d6f25.js → b3f5e91116112b0b612a.js} +1 -1
- package/assets/esri/core/workers/chunks/b97953694f42bfec1b3c.js +1 -0
- package/assets/esri/core/workers/chunks/b9e9cb354822c6d995a4.js +1 -0
- package/assets/esri/core/workers/chunks/ba762bcfd74af0bb8218.js +1 -0
- package/assets/esri/core/workers/chunks/{e4b84ca8ddfd48dd79b1.js → bac9fc90e6756e211160.js} +1 -1
- package/assets/esri/core/workers/chunks/{4c76146014dc15143ba3.js → be588873c16770ceb9ef.js} +1 -1
- package/assets/esri/core/workers/chunks/bf97a933ea3b220115e1.js +1 -0
- package/assets/esri/core/workers/chunks/bfedd6ebff817c9b31c0.js +1 -0
- package/assets/esri/core/workers/chunks/c093dff4592832ac0973.js +1 -0
- package/assets/esri/core/workers/chunks/c1135cb02ec46c491459.js +1 -0
- package/assets/esri/core/workers/chunks/{e4e2036373166c1d5cf5.js → c2253a9f29c1aabb2b75.js} +1 -1
- package/assets/esri/core/workers/chunks/d04fca5d46cca02500b7.js +1 -0
- package/assets/esri/core/workers/chunks/d08efbc349dd9f999497.js +1 -0
- package/assets/esri/core/workers/chunks/d1fe53b597351dc58305.js +1 -0
- package/assets/esri/core/workers/chunks/{a8b13fb804bb775e4967.js → db3c729ce0c0b2690dc9.js} +1 -1
- package/assets/esri/core/workers/chunks/dd13772a5e2eccc6a2bc.js +1 -0
- package/assets/esri/core/workers/chunks/dedc333a61081772ca7b.js +1 -0
- package/assets/esri/core/workers/chunks/{6f50a9647f026a8d4729.js → e0c8d61c7a85ce15499a.js} +1 -1
- package/assets/esri/core/workers/chunks/{199670a3a564ebe3bd79.js → e218bde41ffbcc5194f5.js} +1 -1
- package/assets/esri/core/workers/chunks/e21b211913aefde47e30.js +1 -0
- package/assets/esri/core/workers/chunks/e287f49184d076af17e2.js +1 -0
- package/assets/esri/core/workers/chunks/{bde1d5b0a7717350986e.js → e4019b63a1fe74e2c842.js} +1 -1
- package/assets/esri/core/workers/chunks/e8e775758b79c5a084c8.js +1 -0
- package/assets/esri/core/workers/chunks/e93dfdede0532a89ffa5.js +1 -0
- package/assets/esri/core/workers/chunks/ea595b0df5050eda2a13.js +1 -0
- package/assets/esri/core/workers/chunks/eb82ff10cef2bde6e57f.js +1 -0
- package/assets/esri/core/workers/chunks/ebc6f4764b82d4104c65.js +1 -0
- package/assets/esri/core/workers/chunks/{1305ef8717da6e902a55.js → ec10151a2a95e95a0bb5.js} +1 -1
- package/assets/esri/core/workers/chunks/eccba071ced2d922bb85.js +1 -0
- package/assets/esri/core/workers/chunks/ee6e0db58dc64410e687.js +1 -0
- package/assets/esri/core/workers/chunks/f0a9f161805fc7a30fc5.js +1 -0
- package/assets/esri/core/workers/chunks/f2124f4d0f2b8a91f0ea.js +1 -0
- package/assets/esri/core/workers/chunks/ff6abdc72076f3994659.js +981 -0
- package/assets/esri/libs/vxl/vxlLayer.wasm +0 -0
- package/assets/esri/themes/base/widgets/_Weather.scss +1 -1
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/dark-blue/main.css +1 -1
- package/assets/esri/themes/dark-green/main.css +1 -1
- package/assets/esri/themes/dark-purple/main.css +1 -1
- package/assets/esri/themes/dark-red/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/assets/esri/themes/light-blue/main.css +1 -1
- package/assets/esri/themes/light-green/main.css +1 -1
- package/assets/esri/themes/light-purple/main.css +1 -1
- package/assets/esri/themes/light-red/main.css +1 -1
- package/assets/esri/widgets/Weather/t9n/Weather.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_en.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/BlendLayers.glsl.js +2 -2
- package/chunks/ChapmanAtmosphere.glsl.js +17 -17
- package/chunks/CheckerBoard.glsl.js +3 -3
- package/chunks/Clouds.glsl.js +2 -2
- package/chunks/CloudsComposition.glsl.js +1 -1
- package/chunks/ColorMaterial.glsl.js +12 -12
- package/chunks/ComponentShader.glsl.js +3 -3
- package/chunks/Compositing.glsl.js +1 -1
- package/chunks/DefaultMaterial.glsl.js +33 -33
- package/chunks/EdgeShaderProgram.glsl.js +7 -7
- package/chunks/Fog.glsl.js +10 -12
- package/chunks/HUDMaterial.glsl.js +2 -2
- package/chunks/HighlightComposition.glsl.js +5 -5
- package/chunks/ImageMaterial.glsl.js +6 -6
- package/chunks/LaserlinePath.glsl.js +8 -8
- package/chunks/LineCallout.glsl.js +6 -6
- package/chunks/MeasurementArrow.glsl.js +1 -1
- package/chunks/NativeLine.glsl.js +1 -1
- package/chunks/Path.glsl.js +5 -5
- package/chunks/Pattern.glsl.js +9 -9
- package/chunks/PointRenderer.glsl.js +14 -14
- package/chunks/Precipitation.glsl.js +91 -0
- package/chunks/RealisticTree.glsl.js +21 -21
- package/chunks/RibbonLine.glsl.js +11 -11
- package/chunks/SMAA.glsl.js +40 -40
- package/chunks/ShadedColorMaterial.glsl.js +12 -12
- package/chunks/ShadowCast.glsl.js +6 -6
- package/chunks/ShadowHighlight.glsl.js +4 -4
- package/chunks/SimpleAtmosphere.glsl.js +3 -3
- package/chunks/SlicePlaneMaterial.glsl.js +3 -3
- package/chunks/Stars.glsl.js +3 -3
- package/chunks/Terrain.glsl.js +11 -11
- package/chunks/TextureOnly.glsl.js +2 -2
- package/chunks/WaterSurface.glsl.js +5 -5
- package/chunks/boundedPlane.js +1 -1
- package/chunks/vxlLayer.js +1 -1
- package/core/accessorSupport/watch.js +1 -1
- package/core/clock.js +1 -1
- package/core/jsonMap.js +1 -1
- package/core/loadAll.js +1 -1
- package/core/promiseUtils.js +1 -1
- package/core/reactiveUtils.js +1 -1
- package/form/ExpressionInfo.js +1 -1
- package/geometry/support/frustum.js +1 -1
- package/geometry/support/plane.js +1 -1
- package/interfaces.d.ts +232 -38
- package/layers/VectorTileLayer.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/graphics/featureConversionUtils.js +1 -1
- package/layers/support/LayerContingentValuesCache.js +1 -1
- package/layers/support/TileInfo.js +1 -1
- package/package.json +1 -1
- package/rest/print.js +1 -1
- package/smartMapping/statistics/support/predominanceUtils.d.ts +4 -0
- package/support/arcadeOnDemand.js +1 -1
- package/support/featureFlags.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/FillSymbol3DLayer.js +1 -1
- package/symbols/IconSymbol3DLayer.js +1 -1
- package/symbols/ObjectSymbol3DLayer.js +1 -1
- package/symbols/Symbol3D.js +1 -1
- package/symbols/WebStyleSymbol.js +1 -1
- package/symbols/cim/CIMSymbolRasterizer.js +1 -1
- package/symbols/support/IconSymbol3DLayerResource.js +1 -1
- package/symbols/support/ObjectSymbol3DLayerResource.js +1 -1
- package/symbols/support/Symbol3DAnchorPosition2D.js +1 -1
- package/symbols/support/Symbol3DAnchorPosition3D.js +1 -1
- package/symbols/support/Symbol3DFillMaterial.js +1 -1
- package/symbols/support/Symbol3DIconOutline.js +1 -1
- package/symbols/support/Symbol3DOutline.js +1 -1
- package/symbols/support/Thumbnail.js +1 -1
- package/symbols/support/webStyleSymbolUtils.js +1 -1
- package/views/2d/MapViewConstraints.js +1 -1
- package/views/2d/engine/vectorTiles/SchemaHelper.js +1 -1
- package/views/2d/viewpointUtils.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
- package/views/3d/environment/ChapmanAtmosphere.js +1 -1
- package/views/3d/environment/CloudsComposition.glsl.js +1 -1
- package/views/3d/environment/CloudsGenerator.js +1 -1
- package/views/3d/environment/CloudsPresets.js +1 -1
- package/views/3d/environment/EnvironmentRenderer.js +1 -1
- package/views/3d/environment/Fog.glsl.js +1 -1
- package/views/3d/environment/Fog.js +1 -1
- package/views/3d/environment/PanoramicAtmosphere.js +1 -1
- package/views/3d/environment/Precipitation.glsl.js +5 -0
- package/views/3d/environment/Precipitation.js +5 -0
- package/views/3d/environment/PrecipitationTechnique.js +5 -0
- package/views/3d/environment/RainyWeather.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.glsl.js +1 -1
- package/views/3d/environment/SimpleAtmosphere.js +1 -1
- package/views/3d/environment/SnowyWeather.js +5 -0
- package/views/3d/environment/Stars.glsl.js +1 -1
- package/views/3d/environment/Stars.js +1 -1
- package/views/3d/environment/weather.js +1 -1
- package/views/3d/interactive/analysisTools/slice/SliceTool.js +1 -1
- package/views/3d/interactive/analysisTools/slice/sliceToolUtils.js +1 -1
- package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
- package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
- package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
- package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
- package/views/3d/layers/GraphicsLayerView3D.js +1 -1
- package/views/3d/layers/GraphicsView3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/VectorTileLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Deconflictor.js +1 -1
- package/views/3d/layers/graphics/ElevationAligners.js +1 -1
- package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
- package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
- package/views/3d/layers/graphics/graphicUtils.js +1 -1
- package/views/3d/layers/graphics/lineUtils.js +1 -1
- package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
- package/views/3d/layers/graphics/polygonUtils.js +1 -1
- package/views/3d/layers/graphics/symbolComplexity.js +1 -1
- package/views/3d/layers/i3s/I3SBinaryReader.js +1 -1
- package/views/3d/layers/i3s/PointRenderer.js +1 -1
- package/views/3d/layers/support/HeatmapFeatureProcessor.js +5 -0
- package/views/3d/layers/support/overlayImageUtils.js +1 -1
- package/views/3d/layers/support/patternUtils.js +1 -1
- package/views/3d/state/controllers/local/PinchAndPanController.js +1 -1
- package/views/3d/support/FrustumExtentIntersection.js +1 -1
- package/views/3d/support/LaserLineRenderer.js +1 -1
- package/views/3d/support/LaserlinePathData.js +1 -1
- package/views/3d/support/sunUtils.js +1 -1
- package/views/3d/terrain/OverlayRenderer.js +1 -1
- package/views/3d/terrain/PatchGeometryFactory.js +1 -1
- package/views/3d/terrain/TerrainRenderer.js +1 -1
- package/views/3d/terrain/TerrainSurface.js +1 -1
- package/views/3d/terrain/Tile.js +1 -1
- package/views/3d/terrain/terrainUtils.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/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +10 -10
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
- package/views/3d/webgl-engine/collections/Component/SourceGeometry.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/ScreenSizeScaling.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js +3 -3
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +12 -12
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +16 -16
- package/views/3d/webgl-engine/core/shaderLibrary/default/RealisticTree.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +3 -3
- package/views/3d/webgl-engine/core/shaderLibrary/raster/BasicGrid.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeMaterialColor.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeShadingNormal.glsl.js +10 -11
- package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js +2 -2
- package/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js +6 -6
- package/views/3d/webgl-engine/core/shaderLibrary/shading/Reprojection.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js +5 -5
- package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/Water.glsl.js +10 -10
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/Terrain.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/util/BlendLayers.glsl.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +4 -4
- package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
- package/views/3d/webgl-engine/lib/Camera.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js +1 -1
- package/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/Geometry.js +1 -1
- package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
- package/views/3d/webgl-engine/lib/GridLocalOriginFactory.js +1 -1
- package/views/3d/webgl-engine/lib/MagnifierHelper.js +1 -1
- package/views/3d/webgl-engine/lib/Material.js +1 -1
- package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
- package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
- package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
- package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
- package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
- package/views/3d/webgl-engine/lib/Texture.js +1 -1
- package/views/3d/webgl-engine/lib/TextureUniformName.js +4 -0
- package/views/3d/webgl-engine/lib/UniformName.js +4 -0
- package/views/3d/webgl-engine/lib/VertexAttribute.js +5 -0
- package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
- package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
- package/views/3d/webgl-engine/lib/edgeRendering/bufferLayouts.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/InstanceData.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/RenderInstanceData.js +1 -1
- package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
- package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/VisualVariableMaterialParameters.js +1 -1
- package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
- package/views/3d/webgl-engine/materials/internal/DefaultBufferWriter.js +1 -1
- package/views/3d/webgl-engine/materials/internal/MaterialUtil.js +1 -1
- package/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js +1 -1
- package/views/3d/webgl-engine/materials/internal/waterMaterialUtils.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/HighlightComposition.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/HighlightTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LaserlinePath.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LaserlinePathTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/Magnifier.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/MeasurementArrow.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/SMAA.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowCastTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
- package/views/3d/webgl-engine/shaders/SlicePlaneMaterial.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/AdjustProjectedPosition.glsl.js +10 -10
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/DiscardShortEdges.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeShaderProgram.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +21 -21
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineAmplitude.glsl.js +6 -6
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/LineOffset.glsl.js +13 -13
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/UnpackAttributes.glsl.js +6 -6
- package/views/MapView.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/View.js +1 -1
- package/views/input/recognizers/DoubleTapDrag.js +1 -1
- package/views/input/recognizers/ImmediateDoubleClick.js +1 -1
- package/views/input/recognizers/PointerClickHoldAndDrag.js +1 -1
- package/views/input/recognizers/SingleAndDoubleClick.js +1 -1
- package/views/interactive/editGeometry/operations/OffsetEdgeVertex.js +1 -1
- package/views/support/DefaultsFromMap.js +1 -1
- package/views/support/WatchUpdatingTracking.js +1 -1
- package/views/support/projectionUtils.js +5 -0
- package/views/webgl/BufferObject.js +1 -1
- package/views/webgl/InstanceCounter.js +1 -1
- package/views/webgl/Program.js +1 -1
- package/webdoc/support/{Thumbnail.js → SlideThumbnail.js} +1 -1
- package/webmap/Bookmark.js +1 -1
- package/webmap/Version.js +1 -1
- package/webscene/Slide.js +1 -1
- package/webscene/Version.js +1 -1
- package/webscene/support/SlideVisibleLayer.js +1 -1
- package/widgets/AreaMeasurement3D/AreaMeasurement3DViewModel.js +1 -1
- package/widgets/BasemapGallery/BasemapGalleryViewModel.js +1 -1
- package/widgets/BasemapGallery/support/BasemapGalleryItem.js +1 -1
- package/widgets/BasemapGallery/support/basemapCompatibilityUtils.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
- package/widgets/Bookmarks.js +1 -1
- package/widgets/DirectLineMeasurement3D/DirectLineMeasurement3DViewModel.js +1 -1
- package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
- package/widgets/LineOfSight/LineOfSightViewModel.js +1 -1
- package/widgets/Search/support/locatorUtils.js +1 -1
- package/widgets/Search.js +1 -1
- package/widgets/Slice/SliceViewModel.js +1 -1
- package/widgets/TimeSlider.js +1 -1
- package/widgets/Weather/WeatherViewModel.js +1 -1
- package/widgets/Weather/css.js +1 -1
- package/widgets/Weather/enums.js +5 -0
- package/widgets/Weather.js +1 -1
- package/widgets/support/InteractiveToolViewModel.js +1 -1
- package/assets/esri/core/workers/chunks/00c5bb5eecb0e89266df.js +0 -1
- package/assets/esri/core/workers/chunks/021a37e2b191298e80b7.js +0 -1
- package/assets/esri/core/workers/chunks/1370c92c40fd6271553c.js +0 -1
- package/assets/esri/core/workers/chunks/14bef72154b3a19561a7.js +0 -1
- package/assets/esri/core/workers/chunks/18668dc45eb9e35530df.js +0 -1
- package/assets/esri/core/workers/chunks/1e4d37c2b9dc83d20a11.js +0 -1
- package/assets/esri/core/workers/chunks/1fbcc8424452d0256bd6.js +0 -1
- package/assets/esri/core/workers/chunks/208a7e24e19fc5633dd7.js +0 -1
- package/assets/esri/core/workers/chunks/22b09e276c9b9f22f0f8.js +0 -1
- package/assets/esri/core/workers/chunks/23b15e7c2f96d260e16c.js +0 -1
- package/assets/esri/core/workers/chunks/25a3e9bc0b4c7e0d3165.js +0 -1
- package/assets/esri/core/workers/chunks/2792ca40f1e92849247c.js +0 -1
- package/assets/esri/core/workers/chunks/2a96f1bba9ce6883e5e0.js +0 -1
- package/assets/esri/core/workers/chunks/3231ee3e090bb4cac3fc.js +0 -1
- package/assets/esri/core/workers/chunks/36a3f6fb4d1d18fcb642.js +0 -1
- package/assets/esri/core/workers/chunks/36e250278b5622ccf068.js +0 -1
- package/assets/esri/core/workers/chunks/395ba088d4864588ff66.js +0 -1
- package/assets/esri/core/workers/chunks/3aa4194dc5497c57647f.js +0 -1
- package/assets/esri/core/workers/chunks/3cc77692b2eee27b9c9e.js +0 -1
- package/assets/esri/core/workers/chunks/40a1e713f63ec77110c0.js +0 -1
- package/assets/esri/core/workers/chunks/4385a268c2a64281d1c1.js +0 -1
- package/assets/esri/core/workers/chunks/46b4bb66a54bbd8e2e57.js +0 -1
- package/assets/esri/core/workers/chunks/4bfbf5a34c9207fdcf44.js +0 -1
- package/assets/esri/core/workers/chunks/5a4a5585ec8027079f32.js +0 -1
- package/assets/esri/core/workers/chunks/5d4863a92b03bebc1b54.js +0 -1
- package/assets/esri/core/workers/chunks/5d991b74d958005c26c4.js +0 -1
- package/assets/esri/core/workers/chunks/634b5ccd7a3ac67f855d.js +0 -1
- package/assets/esri/core/workers/chunks/662d13f68cf3ec92439b.js +0 -1
- package/assets/esri/core/workers/chunks/663ad15b86936eb06b69.js +0 -1
- package/assets/esri/core/workers/chunks/7bc5cc5dbf1b7b70ddac.js +0 -1
- package/assets/esri/core/workers/chunks/7d661129a0d8c466eeec.js +0 -1
- package/assets/esri/core/workers/chunks/8070972c0efb78523b68.js +0 -1
- package/assets/esri/core/workers/chunks/85e27fd949475f9a6bbc.js +0 -1
- package/assets/esri/core/workers/chunks/8b6ab6202a40fe622833.js +0 -1
- package/assets/esri/core/workers/chunks/96ab518eb6ba11333dee.js +0 -1
- package/assets/esri/core/workers/chunks/9796d54ff12b6429164a.js +0 -1
- package/assets/esri/core/workers/chunks/98986e6601b0366376b4.js +0 -1
- package/assets/esri/core/workers/chunks/9cdcf9309d6feda70185.js +0 -1
- package/assets/esri/core/workers/chunks/aa861b8eae6c85f3dad4.js +0 -1
- package/assets/esri/core/workers/chunks/aace7e1fef256bb961c9.js +0 -1
- package/assets/esri/core/workers/chunks/ad081d8e49e7f90c3c26.js +0 -1
- package/assets/esri/core/workers/chunks/af5694b4d278cf1db2d9.js +0 -1
- package/assets/esri/core/workers/chunks/afbb4f802ca5774f0326.js +0 -1
- package/assets/esri/core/workers/chunks/b2c5f92e3d7606297ca9.js +0 -1
- package/assets/esri/core/workers/chunks/b8316c6469a543029bc6.js +0 -1
- package/assets/esri/core/workers/chunks/ba615f118a3a8970ef25.js +0 -1
- package/assets/esri/core/workers/chunks/ba6654a885be4b7a43f0.js +0 -1
- package/assets/esri/core/workers/chunks/bf0a65b4be31959f921d.js +0 -1
- package/assets/esri/core/workers/chunks/c11474b702dfb94e8e87.js +0 -1
- package/assets/esri/core/workers/chunks/c890c7fca27170e3341f.js +0 -1
- package/assets/esri/core/workers/chunks/c976785f2391c77d8a30.js +0 -1
- package/assets/esri/core/workers/chunks/ca2f5faa01d99c21ec14.js +0 -1
- package/assets/esri/core/workers/chunks/cef4af64860ebbfc1c47.js +0 -1
- package/assets/esri/core/workers/chunks/cfbffa429d88e7709c3f.js +0 -1
- package/assets/esri/core/workers/chunks/d24c4fbc567486b1188f.js +0 -1
- package/assets/esri/core/workers/chunks/de6cff7b6cbbf99b20d1.js +0 -981
- package/assets/esri/core/workers/chunks/e4f93c55eaefab4192b5.js +0 -1
- package/assets/esri/core/workers/chunks/e59764ee8cf25d4f74e2.js +0 -1
- package/assets/esri/core/workers/chunks/ec89466f76d0ba22525e.js +0 -1
- package/assets/esri/core/workers/chunks/ee45618c45806ab654cb.js +0 -1
- package/assets/esri/core/workers/chunks/f467c8f1fce22f6f599c.js +0 -1
- package/assets/esri/core/workers/chunks/f4baa5ea2e42b1317941.js +0 -1
- package/assets/esri/core/workers/chunks/face43cf5abcd2f5bd9d.js +0 -1
- package/assets/esri/core/workers/chunks/ffaf091c6023225cf5aa.js +0 -1
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{_ as e}from"../../../../../../chunks/tslib.es6.js";import{isSome as r}from"../../../../../../core/maybe.js";import{c as o}from"../../../../../../chunks/mat3f64.js";import{c as t}from"../../../../../../chunks/vec4f64.js";import{ComponentDataType as i}from"./shader/ComponentData.glsl.js";import{C as a}from"../../../../../../chunks/ComponentShader.glsl.js";import{VertexDiscardMode as s}from"./shader/VertexDiscardByOpacity.glsl.js";import{RenderPassIdentifier as n,MaterialSubPass as l}from"../../../core/renderPasses/AllRenderPasses.js";import{ShaderOutput as d}from"../../../core/shaderLibrary/ShaderOutputOptions.js";import{bindSliceUniforms as p}from"../../../core/shaderLibrary/Slice.glsl.js";import{NormalAttribute as u}from"../../../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{TextureCoordinateAttribute as c}from"../../../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{VertexPosition as m}from"../../../core/shaderLibrary/attributes/VertexPosition.glsl.js";import{bindOutputHighlight as h}from"../../../core/shaderLibrary/output/OutputHighlight.glsl.js";import{Normals as b}from"../../../core/shaderLibrary/shading/Normals.glsl.js";import{bindPBRUniforms as T,PBRMode as f}from"../../../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{bindSSRUniforms as x}from"../../../core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js";import{doublePrecisionRequiresObfuscation as g}from"../../../core/shaderLibrary/util/DoublePrecision.glsl.js";import{EllipsoidMode as v}from"../../../core/shaderLibrary/util/EllipsoidMode.js";import{ReloadableShaderModule as y}from"../../../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as M}from"../../../core/shaderTechnique/ShaderTechnique.js";import{parameter as C,ShaderTechniqueConfiguration as O}from"../../../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{CullFaceOptions as N,AlphaDiscardMode as S,TransparencyPassType as P,StencilBits as E}from"../../../lib/basicInterfaces.js";import{blendingDefault as j,oitBlending as U,oitDepthTest as D,OITPolygonOffset as A}from"../../../lib/OrderIndependentTransparency.js";import{Program as w}from"../../../lib/Program.js";import{stencilWriteMaskOn as F,replaceBitWhenDepthTestPasses as R,stencilBaseAllZerosParams as L}from"../../../lib/StencilUtils.js";import{makePipelineState as W,cullingParams as _,defaultDepthWriteParams as V,defaultColorWriteParams as G}from"../../../../../webgl/renderState.js";class q extends M{bindPass(e){const r=this.program;m.bindViewProjTransform(r,e.viewTransform),p(this.program,this.configuration,e.slicePlane),e.identifier===n.Material&&(void 0!==e.ssrParams&&x(this.program,e.ssrParams),r.setUniformMatrix3fv("uTransformNormal_ViewFromGlobal",e.transformNormal_ViewFromGlobal),e.subPass===l.Depth&&r.setUniform2fv("cameraNearFar",e.cameraNearFar),e.subPass===l.Color&&e.lighting.setUniforms(this.program,e.integratedMesh)),e.identifier===n.ShadowMap&&this.program.setUniform2fv("cameraNearFar",e.cameraNearFar)}bindMaterial(e,o){this._material=e;const t=this.program;t.setUniform4fv("uBaseColor",e.baseColor),t.setUniform1f("uObjectOpacity",e.objectOpacity),t.setUniform1f("textureAlphaCutoff",e.alphaCutoff),e.componentParameters.type===i.Varying?e.componentParameters.texture.bind(t,"uComponentColorTex","uComponentColorTexInvDim"):(t.setUniform4fv("uExternalColor",e.componentParameters.externalColor),t.setUniform1i("uExternalColorMixMode",e.componentParameters.externalColorMixMode)),r(e.baseColorTexture)&&e.baseColorTexture.bind(t,"uBaseColorTexture","uBaseColorTextureSize"),this.configuration.output!==d.Color&&this.configuration.output!==d.Alpha||(T(this.program,e,this.configuration.isSchematic),r(e.metallicRoughnessTexture)&&e.metallicRoughnessTexture.bind(t,"texMetallicRoughness","texMetallicRoughnessSize"),r(e.emissionTexture)&&e.emissionTexture.bind(t,"texEmission","texEmissionSize"),r(e.occlusionTexture)&&e.occlusionTexture.bind(t,"texOcclusion","texOcclusionSize"),r(e.normalTexture)&&e.normalTexture.bind(t,"normalTexture","normalTextureSize")),e.isIntegratedMesh&&(o.identifier===n.Material&&o.subPass===l.Color?(t.bindTexture(e.overlayColor,"ovColorTex"),t.bindTexture(e.overlayNormal,"ovNormalTex")):o.identifier===n.Highlight&&t.bindTexture(e.overlayHighlight,"ovColorTex"),t.setUniform1f("overlayOpacity",1)),o.identifier===n.Highlight&&h(this.program,o),o.identifier===n.Material&&o.subPass===l.Color&&(o.ambientOcclusionEnabled&&o.bindAmbientOcclusion(t),o.shadowsEnabled&&o.bindShadowMap(t)),o.identifier!==n.Material||o.subPass!==l.Color&&o.subPass!==l.Alpha||!o.multipassTerrainParams.multipassTerrainEnabled||(this.program.setUniform2fv("cameraNearFar",o.cameraNearFar),t.setUniform2fv("inverseViewport",o.inverseViewport),o.multipassTerrainParams.terrainLinearDepthTexture&&t.bindTexture(o.multipassTerrainParams.terrainLinearDepthTexture,"terrainDepthTexture"))}bindDraw(e){if(m.bindModelTransform(this.program,e),this.program.setUniformMatrix3fv("uTransformNormal_GlobalFromModel",e.transformNormal_GlobalFromModel),this.program.rebindTextures(),r(this._material)&&this._material.isIntegratedMesh){const r=this._material.overlayTexScale,o=this._material.overlayTexOffset;this.program.setUniform4fv("overlayTexOffset",[e.toMapSpace[0]*r[0]+o[0],e.toMapSpace[1]*r[1]+o[1],e.toMapSpace[0]*r[2]+o[2],e.toMapSpace[1]*r[3]+o[3]]),this.program.setUniform4fv("overlayTexScale",[e.toMapSpace[2]*r[0],e.toMapSpace[3]*r[1],e.toMapSpace[2]*r[2],e.toMapSpace[3]*r[3]])}}initializeProgram(e){const r=q.shader.get(),o=this.configuration,t=r.build({multipassTerrainEnabled:o.multipassTerrainEnabled,cullAboveGround:o.cullAboveGround,OITEnabled:o.transparencyPassType===P.Color,output:o.output,normalType:o.integratedMeshMode===I.None?o.hasNormals?u.Type.CompressedAttribute:u.Type.ScreenDerivative:u.Type.Ground,attributeColor:o.hasVertexColors,attributeTextureCoordinates:o.vertexTextureCoordinates,componentData:o.componentData,alphaDiscardMode:o.alphaDiscardMode,baseColorTexture:o.baseColorTexture,doubleSidedMode:o.doubleSidedMode,receiveAmbientOcclusion:o.receiveAmbientOcclusion,receiveShadows:o.receiveShadows,slicePlaneEnabled:o.slicePlaneEnabled,sliceHighlightDisabled:!1,sliceEnabledForVertexPrograms:!1,viewingMode:e.viewingMode,vertexDiscardMode:o.vertexDiscardMode,pbrMode:o.integratedMeshMode===I.ColorOverlayWithWater?f.WaterOnIntegratedMesh:o.usePBR?o.isSchematic?f.Schematic:f.Normal:f.Disabled,hasMetalnessAndRoughnessTexture:o.hasMetalnessAndRoughnessTexture,hasEmissionTexture:o.hasEmissionTexture,hasOcclusionTexture:o.hasOcclusionTexture,hasNormalTexture:o.hasNormalTexture,vertexTangents:!1,supportsTextureAtlas:!0,doublePrecisionRequiresObfuscation:g(e.rctx),overlayEnabled:o.integratedMeshMode===I.ColorOverlay||o.integratedMeshMode===I.ColorOverlayWithWater,ssrEnabled:o.ssrEnabled,highStepCount:!1,ellipsoidMode:o.ellipsoidMode});return new w(e.rctx,t,r.attributeLocations)}_setPipelineState(e){const r=this.configuration,o=r.integratedMeshMode!==I.None,t=e===P.NONE,i=e===P.FrontFace;return W({blending:r.output!==d.Color&&r.output!==d.Alpha||!r.blendingEnabled?null:t?j:U(e),culling:_(r.cullFace),depthTest:{func:D(e)},depthWrite:t||i?V:null,colorWrite:G,stencilWrite:o||r.sceneHasOcludees?F:null,stencilTest:o?R(E.IntegratedMeshMaskExcluded):r.sceneHasOcludees?L:null,polygonOffset:t||i?r.polygonOffsetEnabled?{factor:2,units:2}:null:A})}initializePipeline(){return this._setPipelineState(this.configuration.transparencyPassType)}}q.shader=new y(a,(()=>import("./shader/ComponentShader.glsl.js")));class B extends m.ModelTransform{constructor(){super(...arguments),this.transformNormal_GlobalFromModel=o(),this.toMapSpace=t()}}var H,I;!function(e){e[e.None=0]="None",e[e.Transparent=1]="Transparent",e[e.Opaque=2]="Opaque",e[e.COUNT=3]="COUNT"}(H||(H={})),function(e){e[e.None=0]="None",e[e.NoOverlay=1]="NoOverlay",e[e.ColorOverlay=2]="ColorOverlay",e[e.ColorOverlayWithWater=3]="ColorOverlayWithWater",e[e.COUNT=4]="COUNT"}(I||(I={}));class z extends O{constructor(){super(...arguments),this.output=d.Color,this.hasVertexColors=!1,this.hasNormals=!1,this.vertexTextureCoordinates=c.AttributeType.None,this.componentData=i.Uniform,this.slicePlaneEnabled=!1,this.cullFace=N.Back,this.baseColorTexture=!1,this.receiveAmbientOcclusion=!0,this.receiveShadows=!0,this.vertexDiscardMode=s.None,this.doubleSidedMode=b.DoubleSidedMode.WindingOrder,this.blendingEnabled=!0,this.alphaDiscardMode=S.Opaque,this.integratedMeshMode=I.None,this.ssrEnabled=!1,this.polygonOffsetEnabled=!1,this.usePBR=!1,this.isSchematic=!1,this.hasMetalnessAndRoughnessTexture=!1,this.hasEmissionTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.sceneHasOcludees=!1,this.transparencyPassType=P.NONE,this.ellipsoidMode=v.Earth,this.multipassTerrainEnabled=!1,this.cullAboveGround=!1}}e([C({count:d.COUNT})],z.prototype,"output",void 0),e([C()],z.prototype,"hasVertexColors",void 0),e([C()],z.prototype,"hasNormals",void 0),e([C({count:c.AttributeType.COUNT})],z.prototype,"vertexTextureCoordinates",void 0),e([C({count:i.COUNT})],z.prototype,"componentData",void 0),e([C()],z.prototype,"slicePlaneEnabled",void 0),e([C({count:N.COUNT})],z.prototype,"cullFace",void 0),e([C()],z.prototype,"baseColorTexture",void 0),e([C()],z.prototype,"receiveAmbientOcclusion",void 0),e([C()],z.prototype,"receiveShadows",void 0),e([C({count:s.COUNT})],z.prototype,"vertexDiscardMode",void 0),e([C({count:b.DoubleSidedMode.COUNT})],z.prototype,"doubleSidedMode",void 0),e([C()],z.prototype,"blendingEnabled",void 0),e([C({count:S.COUNT})],z.prototype,"alphaDiscardMode",void 0),e([C({count:I.COUNT})],z.prototype,"integratedMeshMode",void 0),e([C()],z.prototype,"ssrEnabled",void 0),e([C()],z.prototype,"polygonOffsetEnabled",void 0),e([C()],z.prototype,"usePBR",void 0),e([C()],z.prototype,"isSchematic",void 0),e([C()],z.prototype,"hasMetalnessAndRoughnessTexture",void 0),e([C()],z.prototype,"hasEmissionTexture",void 0),e([C()],z.prototype,"hasOcclusionTexture",void 0),e([C()],z.prototype,"hasNormalTexture",void 0),e([C()],z.prototype,"sceneHasOcludees",void 0),e([C({count:P.COUNT})],z.prototype,"transparencyPassType",void 0),e([C({count:v.COUNT})],z.prototype,"ellipsoidMode",void 0),e([C()],z.prototype,"multipassTerrainEnabled",void 0),e([C()],z.prototype,"cullAboveGround",void 0);export{B as ComponentDrawParameters,q as ComponentTechnique,z as ComponentTechniqueConfiguration,I as IntegratedMeshMode,H as PassDiscardMode};
|
|
5
|
+
import{_ as e}from"../../../../../../chunks/tslib.es6.js";import{isSome as r}from"../../../../../../core/maybe.js";import{c as o}from"../../../../../../chunks/mat3f64.js";import{c as t}from"../../../../../../chunks/vec4f64.js";import{ComponentDataType as i}from"./shader/ComponentData.glsl.js";import{C as s}from"../../../../../../chunks/ComponentShader.glsl.js";import{VertexDiscardMode as a}from"./shader/VertexDiscardByOpacity.glsl.js";import{RenderPassIdentifier as n,MaterialSubPass as l}from"../../../core/renderPasses/AllRenderPasses.js";import{ShaderOutput as d}from"../../../core/shaderLibrary/ShaderOutputOptions.js";import{bindSliceUniforms as p}from"../../../core/shaderLibrary/Slice.glsl.js";import{NormalAttributeType as u}from"../../../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import{TextureCoordinateAttributeType as c}from"../../../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{bindViewProjTransform as h,bindModelTransform as m,VertexPositionModelTransform as b}from"../../../core/shaderLibrary/attributes/VertexPosition.glsl.js";import{bindOutputHighlight as f}from"../../../core/shaderLibrary/output/OutputHighlight.glsl.js";import{NormalsDoubleSidedMode as T}from"../../../core/shaderLibrary/shading/Normals.glsl.js";import{bindPBRUniforms as x,PBRMode as g}from"../../../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{bindSSRUniforms as v}from"../../../core/shaderLibrary/shading/ScreenSpaceReflections.glsl.js";import{doublePrecisionRequiresObfuscation as y}from"../../../core/shaderLibrary/util/DoublePrecision.glsl.js";import{EllipsoidMode as M}from"../../../core/shaderLibrary/util/EllipsoidMode.js";import{ReloadableShaderModule as C}from"../../../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as O}from"../../../core/shaderTechnique/ShaderTechnique.js";import{parameter as N,ShaderTechniqueConfiguration as S}from"../../../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{CullFaceOptions as P,AlphaDiscardMode as E,TransparencyPassType as U,StencilBits as j}from"../../../lib/basicInterfaces.js";import{blendingDefault as D,oitBlending as A,oitDepthTest as w,OITPolygonOffset as F}from"../../../lib/OrderIndependentTransparency.js";import{Program as R}from"../../../lib/Program.js";import{stencilWriteMaskOn as L,replaceBitWhenDepthTestPasses as W,stencilBaseAllZerosParams as V}from"../../../lib/StencilUtils.js";import{makePipelineState as G,cullingParams as q,defaultDepthWriteParams as H,defaultColorWriteParams as _}from"../../../../../webgl/renderState.js";class z extends O{bindPass(e){const r=this.program;h(r,e.viewTransform),p(this.program,this.configuration,e.slicePlane),e.identifier===n.Material&&(void 0!==e.ssrParams&&v(this.program,e.ssrParams),r.setUniformMatrix3fv("transformNormalViewFromGlobal",e.transformNormalViewFromGlobal),e.subPass===l.Depth&&r.setUniform2fv("nearFar",e.nearFar),e.subPass===l.Color&&e.lighting.setUniforms(this.program,e.integratedMesh)),e.identifier===n.ShadowMap&&this.program.setUniform2fv("nearFar",e.nearFar)}bindMaterial(e,o){this._material=e;const t=this.program;t.setUniform4fv("baseColor",e.baseColor),t.setUniform1f("objectOpacity",e.objectOpacity),t.setUniform1f("textureAlphaCutoff",e.alphaCutoff),e.componentParameters.type===i.Varying?e.componentParameters.texture.bind(t,"componentColorTex","componentColorTexInvDim"):(t.setUniform4fv("externalColor",e.componentParameters.externalColor),t.setUniform1i("externalColorMixMode",e.componentParameters.externalColorMixMode)),r(e.baseColorTexture)&&e.baseColorTexture.bind(t,"baseColorTexture","baseColorTextureSize"),this.configuration.output!==d.Color&&this.configuration.output!==d.Alpha||(x(this.program,e,this.configuration.isSchematic),r(e.metallicRoughnessTexture)&&e.metallicRoughnessTexture.bind(t,"texMetallicRoughness","texMetallicRoughnessSize"),r(e.emissionTexture)&&e.emissionTexture.bind(t,"texEmission","texEmissionSize"),r(e.occlusionTexture)&&e.occlusionTexture.bind(t,"texOcclusion","texOcclusionSize"),r(e.normalTexture)&&e.normalTexture.bind(t,"normalTexture","normalTextureSize")),e.isIntegratedMesh&&(o.identifier===n.Material&&o.subPass===l.Color?(t.bindTexture(e.overlayColor,"ovColorTex"),t.bindTexture(e.overlayNormal,"ovNormalTex")):o.identifier===n.Highlight&&t.bindTexture(e.overlayHighlight,"ovColorTex"),t.setUniform1f("overlayOpacity",1)),o.identifier===n.Highlight&&f(this.program,o),o.identifier===n.Material&&o.subPass===l.Color&&(o.ambientOcclusionEnabled&&o.bindAmbientOcclusion(t),o.shadowsEnabled&&o.bindShadowMap(t)),o.identifier!==n.Material||o.subPass!==l.Color&&o.subPass!==l.Alpha||!o.multipassTerrainParams.multipassTerrainEnabled||(this.program.setUniform2fv("nearFar",o.nearFar),t.setUniform2fv("inverseViewport",o.inverseViewport),o.multipassTerrainParams.terrainLinearDepthTexture&&t.bindTexture(o.multipassTerrainParams.terrainLinearDepthTexture,"terrainDepthTexture"))}bindDraw(e){if(m(this.program,e),this.program.setUniformMatrix3fv("transformNormalGlobalFromModel",e.transformNormalGlobalFromModel),this.program.rebindTextures(),r(this._material)&&this._material.isIntegratedMesh){const r=this._material.overlayTexScale,o=this._material.overlayTexOffset;this.program.setUniform4fv("overlayTexOffset",[e.toMapSpace[0]*r[0]+o[0],e.toMapSpace[1]*r[1]+o[1],e.toMapSpace[0]*r[2]+o[2],e.toMapSpace[1]*r[3]+o[3]]),this.program.setUniform4fv("overlayTexScale",[e.toMapSpace[2]*r[0],e.toMapSpace[3]*r[1],e.toMapSpace[2]*r[2],e.toMapSpace[3]*r[3]])}}initializeProgram(e){const r=z.shader.get(),o=this.configuration,t=r.build({multipassTerrainEnabled:o.multipassTerrainEnabled,cullAboveGround:o.cullAboveGround,oitEnabled:o.transparencyPassType===U.Color,output:o.output,normalType:o.integratedMeshMode===B.None?o.hasNormals?u.CompressedAttribute:u.ScreenDerivative:u.Ground,attributeColor:o.hasVertexColors,attributeTextureCoordinates:o.vertexTextureCoordinates,componentData:o.componentData,alphaDiscardMode:o.alphaDiscardMode,baseColorTexture:o.baseColorTexture,doubleSidedMode:o.doubleSidedMode,receiveAmbientOcclusion:o.receiveAmbientOcclusion,receiveShadows:o.receiveShadows,slicePlaneEnabled:o.slicePlaneEnabled,sliceHighlightDisabled:!1,sliceEnabledForVertexPrograms:!1,viewingMode:e.viewingMode,vertexDiscardMode:o.vertexDiscardMode,pbrMode:o.integratedMeshMode===B.ColorOverlayWithWater?g.WaterOnIntegratedMesh:o.usePBR?o.isSchematic?g.Schematic:g.Normal:g.Disabled,hasMetalnessAndRoughnessTexture:o.hasMetalnessAndRoughnessTexture,hasEmissionTexture:o.hasEmissionTexture,hasOcclusionTexture:o.hasOcclusionTexture,hasNormalTexture:o.hasNormalTexture,vertexTangents:!1,supportsTextureAtlas:!0,doublePrecisionRequiresObfuscation:y(e.rctx),overlayEnabled:o.integratedMeshMode===B.ColorOverlay||o.integratedMeshMode===B.ColorOverlayWithWater,ssrEnabled:o.ssrEnabled,highStepCount:!1,ellipsoidMode:o.ellipsoidMode});return new R(e.rctx,t,r.attributeLocations)}_setPipelineState(e){const r=this.configuration,o=r.integratedMeshMode!==B.None,t=e===U.NONE,i=e===U.FrontFace;return G({blending:r.output!==d.Color&&r.output!==d.Alpha||!r.blendingEnabled?null:t?D:A(e),culling:q(r.cullFace),depthTest:{func:w(e)},depthWrite:t||i?H:null,colorWrite:_,stencilWrite:o||r.sceneHasOcludees?L:null,stencilTest:o?W(j.IntegratedMeshMaskExcluded):r.sceneHasOcludees?V:null,polygonOffset:t||i?r.polygonOffsetEnabled?{factor:2,units:2}:null:F})}initializePipeline(){return this._setPipelineState(this.configuration.transparencyPassType)}}z.shader=new C(s,(()=>import("./shader/ComponentShader.glsl.js")));class I extends b{constructor(){super(...arguments),this.transformNormalGlobalFromModel=o(),this.toMapSpace=t()}}var k,B;!function(e){e[e.None=0]="None",e[e.Transparent=1]="Transparent",e[e.Opaque=2]="Opaque",e[e.COUNT=3]="COUNT"}(k||(k={})),function(e){e[e.None=0]="None",e[e.NoOverlay=1]="NoOverlay",e[e.ColorOverlay=2]="ColorOverlay",e[e.ColorOverlayWithWater=3]="ColorOverlayWithWater",e[e.COUNT=4]="COUNT"}(B||(B={}));class J extends S{constructor(){super(...arguments),this.output=d.Color,this.hasVertexColors=!1,this.hasNormals=!1,this.vertexTextureCoordinates=c.None,this.componentData=i.Uniform,this.slicePlaneEnabled=!1,this.cullFace=P.Back,this.baseColorTexture=!1,this.receiveAmbientOcclusion=!0,this.receiveShadows=!0,this.vertexDiscardMode=a.None,this.doubleSidedMode=T.WindingOrder,this.blendingEnabled=!0,this.alphaDiscardMode=E.Opaque,this.integratedMeshMode=B.None,this.ssrEnabled=!1,this.polygonOffsetEnabled=!1,this.usePBR=!1,this.isSchematic=!1,this.hasMetalnessAndRoughnessTexture=!1,this.hasEmissionTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.sceneHasOcludees=!1,this.transparencyPassType=U.NONE,this.ellipsoidMode=M.Earth,this.multipassTerrainEnabled=!1,this.cullAboveGround=!1}}e([N({count:d.COUNT})],J.prototype,"output",void 0),e([N()],J.prototype,"hasVertexColors",void 0),e([N()],J.prototype,"hasNormals",void 0),e([N({count:c.COUNT})],J.prototype,"vertexTextureCoordinates",void 0),e([N({count:i.COUNT})],J.prototype,"componentData",void 0),e([N()],J.prototype,"slicePlaneEnabled",void 0),e([N({count:P.COUNT})],J.prototype,"cullFace",void 0),e([N()],J.prototype,"baseColorTexture",void 0),e([N()],J.prototype,"receiveAmbientOcclusion",void 0),e([N()],J.prototype,"receiveShadows",void 0),e([N({count:a.COUNT})],J.prototype,"vertexDiscardMode",void 0),e([N({count:T.COUNT})],J.prototype,"doubleSidedMode",void 0),e([N()],J.prototype,"blendingEnabled",void 0),e([N({count:E.COUNT})],J.prototype,"alphaDiscardMode",void 0),e([N({count:B.COUNT})],J.prototype,"integratedMeshMode",void 0),e([N()],J.prototype,"ssrEnabled",void 0),e([N()],J.prototype,"polygonOffsetEnabled",void 0),e([N()],J.prototype,"usePBR",void 0),e([N()],J.prototype,"isSchematic",void 0),e([N()],J.prototype,"hasMetalnessAndRoughnessTexture",void 0),e([N()],J.prototype,"hasEmissionTexture",void 0),e([N()],J.prototype,"hasOcclusionTexture",void 0),e([N()],J.prototype,"hasNormalTexture",void 0),e([N()],J.prototype,"sceneHasOcludees",void 0),e([N({count:U.COUNT})],J.prototype,"transparencyPassType",void 0),e([N({count:M.COUNT})],J.prototype,"ellipsoidMode",void 0),e([N()],J.prototype,"multipassTerrainEnabled",void 0),e([N()],J.prototype,"cullAboveGround",void 0);export{I as ComponentDrawParameters,z as ComponentTechnique,J as ComponentTechniqueConfiguration,B as IntegratedMeshMode,k as PassDiscardMode};
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{DecodeSymbolColor as o}from"./DecodeSymbolColor.glsl.js";import{glsl as e}from"../../../../core/shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../../lib/
|
|
6
|
-
float normalizedIndex = (componentIndex + 0.5) *
|
|
5
|
+
import{DecodeSymbolColor as o}from"./DecodeSymbolColor.glsl.js";import{glsl as e}from"../../../../core/shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../../lib/VertexAttribute.js";var n;function l(l,t){t.componentData===n.Varying&&(l.vertex.uniforms.add("componentColorTex","sampler2D"),l.vertex.uniforms.add("componentColorTexInvDim","vec2"),l.attributes.add(r.COMPONENTINDEX,"float"),l.varyings.add("vExternalColorMixMode","mediump float"),l.varyings.add("vExternalColor","vec4"),l.include(o),l.vertex.code.add(e`vec4 _readComponentColor() {
|
|
6
|
+
float normalizedIndex = (componentIndex + 0.5) * componentColorTexInvDim.x;
|
|
7
7
|
vec2 indexCoord = vec2(
|
|
8
8
|
mod(normalizedIndex, 1.0),
|
|
9
|
-
(floor(normalizedIndex) + 0.5) *
|
|
9
|
+
(floor(normalizedIndex) + 0.5) * componentColorTexInvDim.y
|
|
10
10
|
);
|
|
11
|
-
return texture2D(
|
|
11
|
+
return texture2D(componentColorTex, indexCoord);
|
|
12
12
|
}
|
|
13
13
|
vec4 forwardExternalColor(out bool castShadows) {
|
|
14
14
|
vec4 componentColor = _readComponentColor() * 255.0;
|
|
@@ -22,11 +22,11 @@ return vExternalColor;
|
|
|
22
22
|
}`),l.fragment.code.add(e`void readExternalColor(out vec4 externalColor, out int externalColorMixMode) {
|
|
23
23
|
externalColor = vExternalColor;
|
|
24
24
|
externalColorMixMode = int(vExternalColorMixMode);
|
|
25
|
-
}`)),t.componentData===n.Uniform&&(l.vertex.uniforms.add("
|
|
26
|
-
vExternalColor =
|
|
25
|
+
}`)),t.componentData===n.Uniform&&(l.vertex.uniforms.add("externalColor","vec4"),l.fragment.uniforms.add("externalColorMixMode","int"),l.varyings.add("vExternalColor","vec4"),l.vertex.code.add(e`vec4 forwardExternalColor(out bool castShadows) {
|
|
26
|
+
vExternalColor = externalColor;
|
|
27
27
|
castShadows = true;
|
|
28
|
-
return
|
|
29
|
-
}`),l.fragment.code.add(e`void readExternalColor(out vec4
|
|
30
|
-
|
|
31
|
-
|
|
28
|
+
return externalColor;
|
|
29
|
+
}`),l.fragment.code.add(e`void readExternalColor(out vec4 color, out int colorMixMode) {
|
|
30
|
+
color = vExternalColor;
|
|
31
|
+
colorMixMode = externalColorMixMode;
|
|
32
32
|
}`))}!function(o){o[o.Uniform=0]="Uniform",o[o.Varying=1]="Varying",o[o.COUNT=2]="COUNT"}(n||(n={}));export{l as ComponentData,n as ComponentDataType};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"../../../../../../../geometry/support/Ellipsoid.js";import"../../../../../../ViewingMode.js";import"./ComponentData.glsl.js";import"./VertexDiscardByOpacity.glsl.js";import"../../../../core/shaderLibrary/ForwardLinearDepth.glsl.js";import"../../../../core/shaderLibrary/ShaderOutputOptions.js";import"../../../../core/shaderLibrary/Slice.glsl.js";import"../../../../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import"../../../../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import"../../../../core/shaderLibrary/attributes/VertexColor.glsl.js";import"../../../../core/shaderLibrary/attributes/VertexNormal.glsl.js";import"../../../../core/shaderLibrary/attributes/VertexPosition.glsl.js";import"../../../../core/shaderLibrary/output/OutputDepth.glsl.js";import"../../../../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../../../../core/shaderLibrary/output/ReadLinearDepth.glsl.js";import"../../../../core/shaderLibrary/shading/ComputeMaterialColor.glsl.js";import"../../../../core/shaderLibrary/shading/ComputeNormalTexture.glsl.js";import"../../../../core/shaderLibrary/shading/ComputeShadingNormal.glsl.js";import"../../../../core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import"../../../../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../../../../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import"../../../../core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js";import"../../../../core/shaderLibrary/shading/ReadShadowMap.glsl.js";import"../../../../core/shaderLibrary/terrain/Overlay.glsl.js";import"../../../../core/shaderLibrary/util/AlphaDiscard.glsl.js";import"../../../../core/shaderLibrary/util/EllipsoidMode.js";import"../../../../core/shaderModules/interfaces.js";import"../../../../core/shaderModules/ShaderBuilder.js";import"../../../../lib/
|
|
5
|
+
import"../../../../../../../geometry/support/Ellipsoid.js";import"../../../../../../ViewingMode.js";import"./ComponentData.glsl.js";import"./VertexDiscardByOpacity.glsl.js";import"../../../../core/shaderLibrary/ForwardLinearDepth.glsl.js";import"../../../../core/shaderLibrary/ShaderOutputOptions.js";import"../../../../core/shaderLibrary/Slice.glsl.js";import"../../../../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import"../../../../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import"../../../../core/shaderLibrary/attributes/VertexColor.glsl.js";import"../../../../core/shaderLibrary/attributes/VertexNormal.glsl.js";import"../../../../core/shaderLibrary/attributes/VertexPosition.glsl.js";import"../../../../core/shaderLibrary/output/OutputDepth.glsl.js";import"../../../../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../../../../core/shaderLibrary/output/ReadLinearDepth.glsl.js";import"../../../../core/shaderLibrary/shading/ComputeMaterialColor.glsl.js";import"../../../../core/shaderLibrary/shading/ComputeNormalTexture.glsl.js";import"../../../../core/shaderLibrary/shading/ComputeShadingNormal.glsl.js";import"../../../../core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import"../../../../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../../../../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import"../../../../core/shaderLibrary/shading/ReadBaseColorTexture.glsl.js";import"../../../../core/shaderLibrary/shading/ReadShadowMap.glsl.js";import"../../../../core/shaderLibrary/terrain/Overlay.glsl.js";import"../../../../core/shaderLibrary/util/AlphaDiscard.glsl.js";import"../../../../core/shaderLibrary/util/EllipsoidMode.js";import"../../../../core/shaderModules/interfaces.js";import"../../../../core/shaderModules/ShaderBuilder.js";import"../../../../lib/VertexAttribute.js";export{a as attributeLocations,b as build}from"../../../../../../../chunks/ComponentShader.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/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{newLayout as e}from"../../../support/buffer/InterleavedLayout.js";import{
|
|
5
|
+
import{newLayout as e}from"../../../support/buffer/InterleavedLayout.js";import{TextureCoordinateAttributeType as r}from"../../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import{VertexAttribute as t}from"../../lib/VertexAttribute.js";function o(o){const i=e().vec3f(t.POSITION);return o.normals&&i.vec2i16(t.NORMALCOMPRESSED,{glNormalized:!0}),o.textureCoordinates===r.Default?i.vec2f(t.UV0):o.textureCoordinates===r.Atlas&&(i.vec2f(t.UV0),i.vec4u16(t.UVREGION,{glNormalized:!0})),o.colors&&i.vec4u8(t.COLOR,{glNormalized:!0}),i.alignTo(4)}export{o as createVertexBufferLayout};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{c as s}from"../../../../../chunks/mat3f64.js";import{a as t}from"../../../../../chunks/vec2f64.js";import{c as
|
|
5
|
+
import{c as s}from"../../../../../chunks/mat3f64.js";import{a as t}from"../../../../../chunks/vec2f64.js";import{c as i}from"../../../../../chunks/vec4f64.js";import{c as e}from"../../../../../chunks/boundedPlane.js";import{VertexPositionViewProjectionTransform as r}from"../shaderLibrary/attributes/VertexPosition.glsl.js";import{TransparencyPassType as a}from"../../lib/basicInterfaces.js";var o,n;!function(s){s[s.Material=0]="Material",s[s.ShadowMap=1]="ShadowMap",s[s.Highlight=2]="Highlight"}(o||(o={})),function(s){s[s.Color=0]="Color",s[s.Alpha=1]="Alpha",s[s.Depth=2]="Depth",s[s.Normal=3]="Normal"}(n||(n={}));class h{constructor(){this.viewTransform=new r,this.slicePlane=e()}}class c extends h{constructor(){super(...arguments),this.identifier=o.Material,this.slicePlaneEnabled=!0,this.transparent=!1,this.integratedMesh=!1,this.transformNormalViewFromGlobal=s(),this.nearFar=t(),this.inverseViewport=t(),this.ambientOcclusionEnabled=!0,this.shadowsEnabled=!0,this.sceneHasOcludees=!1,this.transparencyPassType=a.NONE}}class l extends h{constructor(){super(...arguments),this.identifier=o.ShadowMap,this.nearFar=t()}}class p extends h{constructor(){super(...arguments),this.identifier=o.Highlight,this.inverseViewport=t(),this.viewport=i()}}export{p as HighlightPassParameters,c as MaterialPassesParameters,n as MaterialSubPass,h as PassParameters,o as RenderPassIdentifier,l as ShadowMapPassParameters};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{isSome as s}from"../../../../../core/maybe.js";import{f as a,t as e,e as r}from"../../../../../chunks/mat3.js";import{c as t}from"../../../../../chunks/mat3f64.js";import{c as i}from"../../../../../chunks/mat4.js";import{
|
|
5
|
+
import{isSome as s}from"../../../../../core/maybe.js";import{f as a,t as e,e as r}from"../../../../../chunks/mat3.js";import{c as t}from"../../../../../chunks/mat3f64.js";import{c as i}from"../../../../../chunks/mat4.js";import{c as h}from"../../../../../chunks/vec2.js";import{b as n,s as m,g as o,f as l}from"../../../../../chunks/vec3.js";import{c as P}from"../../../../../chunks/vec3f64.js";import{c as p}from"../../../../../chunks/vec4.js";import{d as c}from"../../../../../chunks/boundedPlane.js";import{MaterialPassesParameters as _,ShadowMapPassParameters as d,HighlightPassParameters as u,MaterialSubPass as T,RenderPassIdentifier as A}from"./AllRenderPasses.js";import{RenderPass as g,RenderPassSorting as f}from"./RenderPass.js";import{TwoVectorPosition as w}from"../util/TwoVectorPosition.js";import{union as R}from"../../lib/depthRange.js";import{RenderPass as M}from"../../lib/RenderPass.js";import{RenderSlot as E}from"../../lib/RenderSlot.js";class H{constructor(s,a){this.rctx=s,this.shaderTechniqueRepository=a,this.canRender=!0,this._materialPassParams=new _,this._shadowPassParams=new d,this._highlightPassParams=new u,this._systems=new Set,this._passes={materialOpaque:new g(s,this.shaderTechniqueRepository),materialTransparent:new g(s,this.shaderTechniqueRepository,f.BackToFront),materialIntegratedMesh:new g(s,this.shaderTechniqueRepository),shadowMap:new g(s,this.shaderTechniqueRepository),highlight:new g(s,this.shaderTechniqueRepository),highlightIntegratedMesh:new g(s,this.shaderTechniqueRepository),highlightShadowMap:new g(s,this.shaderTechniqueRepository),defaultShadowMap:new g(s,this.shaderTechniqueRepository)}}register(s){this._systems.add(s)}prepareRender(s){if(0!==this._systems.size){for(const s of Object.values(this._passes))s.prepareSubmit();this._systems.forEach((a=>a.submit(this._passes,{camera:s})));for(const s of Object.values(this._passes))s.finishSubmit();this.shaderTechniqueRepository.frameUpdate()}}render(s){if(0!==this._systems.size)switch(this._configure(s),s.slot){case E.OPAQUE_PLUGIN:switch(s.pass){case M.MATERIAL:return this._materialPassParams.subPass=T.Color,this._configureMaterialColorPass(s),this._passes.materialOpaque.dispatch(this._materialPassParams);case M.MATERIAL_DEPTH:return this._materialPassParams.subPass=T.Depth,this._passes.materialOpaque.dispatch(this._materialPassParams);case M.MATERIAL_NORMAL:return this._materialPassParams.subPass=T.Normal,this._passes.materialOpaque.dispatch(this._materialPassParams);case M.MATERIAL_HIGHLIGHT:return this._passes.highlight.dispatch(this._highlightPassParams);case M.MATERIAL_DEPTH_SHADOWMAP_ALL:return this._passes.shadowMap.dispatch(this._shadowPassParams);case M.MATERIAL_DEPTH_SHADOWMAP_HIGHLIGHT:return this._passes.highlightShadowMap.dispatch(this._shadowPassParams);case M.MATERIAL_DEPTH_SHADOWMAP_DEFAULT:return this._passes.defaultShadowMap.dispatch(this._shadowPassParams)}return;case E.TRANSPARENT_PLUGIN:switch(s.pass){case M.MATERIAL:return this._materialPassParams.subPass=T.Color,this._configureMaterialColorPass(s),this._passes.materialTransparent.dispatch(this._materialPassParams);case M.MATERIAL_ALPHA:return this._materialPassParams.subPass=T.Alpha,this._configureMaterialColorPass(s),this._passes.materialTransparent.dispatch(this._materialPassParams);case M.MATERIAL_DEPTH:return this._materialPassParams.subPass=T.Depth,this._passes.materialTransparent.dispatch(this._materialPassParams);case M.MATERIAL_NORMAL:return this._materialPassParams.subPass=T.Normal,this._passes.materialTransparent.dispatch(this._materialPassParams)}return;case E.INTEGRATED_MESH:switch(s.pass){case M.MATERIAL:return this._materialPassParams.subPass=T.Color,this._configureMaterialColorPass(s),this._materialPassParams.ssrParams=s.ssrParams,this._passes.materialIntegratedMesh.dispatch(this._materialPassParams);case M.MATERIAL_DEPTH:return this._materialPassParams.subPass=T.Depth,this._passes.materialIntegratedMesh.dispatch(this._materialPassParams);case M.MATERIAL_NORMAL:return this._materialPassParams.subPass=T.Normal,this._passes.materialIntegratedMesh.dispatch(this._materialPassParams);case M.MATERIAL_HIGHLIGHT:return this._passes.highlightIntegratedMesh.dispatch(this._highlightPassParams)}return}}notifyDirty(){this._context.requestRender()}slots(){return[E.OPAQUE_PLUGIN,E.TRANSPARENT_PLUGIN,E.INTEGRATED_MESH]}initializeRenderContext(s){this._context=s}uninitializeRenderContext(){}queryDepthRange(a){const e={near:1/0,far:-1/0};return this._systems.forEach((r=>{const t=r.queryShadowCasterDepthRange(a);s(t)&&R(e,t,e)})),e}get shadowCastingEnabled(){return this._materialPassParams.shadowsEnabled}set shadowCastingEnabled(s){this._materialPassParams.shadowsEnabled=s}get screenSpaceReflectionsEnabled(){return s(this._materialPassParams.ssrParams.ssrEnabled)}set screenSpaceReflectionsEnabled(s){this._materialPassParams.ssrParams.ssrEnabled=!!s}_configureMaterialColorPass(s){this._materialPassParams.bindShadowMap=a=>{s.shadowMap.bind(a);const e=this._materialPassParams.viewTransform;n(I,e.transformWorldFromViewTL,e.transformWorldFromViewTH),s.shadowMap.bindView(a,I)},this._materialPassParams.bindAmbientOcclusion=a=>s.ssaoHelper.bind(a,s.camera),this._materialPassParams.ambientOcclusionEnabled=!!s.ssaoHelper&&s.ssaoHelper.ready,this._materialPassParams.sceneHasOcludees=s.hasOccludees}_configure(s){const a=s.pass===M.MATERIAL_DEPTH_SHADOWMAP_ALL||s.pass===M.MATERIAL_DEPTH_SHADOWMAP_HIGHLIGHT||s.pass===M.MATERIAL_DEPTH_SHADOWMAP_DEFAULT?this._shadowPassParams:s.pass===M.MATERIAL_HIGHLIGHT?this._highlightPassParams:this._materialPassParams;this._updateParameters(s,a)}_updateParameters(s,t){const n=s.camera,P=n.viewInverseTransposeMatrix;m(I,P[3],P[7],P[11]),b.set(I),o(t.viewTransform.transformWorldFromViewTH,b.high),o(t.viewTransform.transformWorldFromViewTL,b.low),a(t.viewTransform.transformViewFromCameraRelativeRS,n.viewMatrix),i(t.viewTransform.transformProjFromView,n.projectionMatrix),t.identifier===A.Material?(this._materialPassParams.transparent=s.slot===E.TRANSPARENT_PLUGIN,this._materialPassParams.integratedMesh=s.slot===E.INTEGRATED_MESH,this._materialPassParams.lighting=s.scenelightingData,e(L,t.viewTransform.transformViewFromCameraRelativeRS),r(t.transformNormalViewFromGlobal,L),h(t.nearFar,n.nearFar)):t.identifier===A.ShadowMap?h(t.nearFar,n.nearFar):t.identifier===A.Highlight&&(t.highlightDepthTexture=s.highlightDepthTexture,p(t.viewport,n.fullViewport)),t.identifier!==A.Material&&t.identifier!==A.Highlight||(t.inverseViewport[0]=1/n.fullViewport[2],t.inverseViewport[1]=1/n.fullViewport[3]),c(s.sliceHelper.plane,t.slicePlane),l(t.slicePlane.origin,t.slicePlane.origin,I),t.slicePlaneEnabled=s.sliceHelper.isEnabled,this._materialPassParams.slot=s.slot,this._materialPassParams.transparencyPassType=s.transparencyPassType,this._materialPassParams.multipassTerrainParams=s.multipassTerrainParams}get needsHighlight(){return this._passes.highlight.count>0||this._passes.highlightIntegratedMesh.count>0}get needsTransparentPass(){return this._passes.materialTransparent.count>0}}const I=P(),L=t(),b=new w;export{H as RenderPassManager};
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ShaderOutput as e}from"./ShaderOutputOptions.js";import{glsl as r}from"../shaderModules/interfaces.js";function a(a,o){o.output===e.Color&&o.receiveShadows?(a.varyings.add("linearDepth","float"),a.vertex.code.add(r`void forwardLinearDepth() { linearDepth = gl_Position.w; }`)):o.output===e.Depth||o.output===e.Shadow?(a.varyings.add("linearDepth","float"),a.vertex.uniforms.add("
|
|
6
|
-
linearDepth = (-position_view().z -
|
|
5
|
+
import{ShaderOutput as e}from"./ShaderOutputOptions.js";import{glsl as r}from"../shaderModules/interfaces.js";function a(a,o){o.output===e.Color&&o.receiveShadows?(a.varyings.add("linearDepth","float"),a.vertex.code.add(r`void forwardLinearDepth() { linearDepth = gl_Position.w; }`)):o.output===e.Depth||o.output===e.Shadow?(a.varyings.add("linearDepth","float"),a.vertex.uniforms.add("nearFar","vec2"),a.vertex.code.add(r`void forwardLinearDepth() {
|
|
6
|
+
linearDepth = (-position_view().z - nearFar[0]) / (nearFar[1] - nearFar[0]);
|
|
7
7
|
}`)):a.vertex.code.add(r`void forwardLinearDepth() {}`)}export{a as ForwardLinearDepth};
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{glsl as e}from"../shaderModules/interfaces.js";function i(i){i.vertex.uniforms.add("
|
|
5
|
+
import{glsl as e}from"../shaderModules/interfaces.js";function i(i){i.vertex.uniforms.add("cameraPosition","vec3").add("perScreenPixelRatio","float").add("screenSize","float"),i.vertex.code.add(e`float computeRenderPixelSizeAt( vec3 pWorld ){
|
|
6
6
|
vec3 viewForward = - vec3(view[0][2], view[1][2], view[2][2]);
|
|
7
|
-
float viewDirectionDistance = abs(dot(viewForward, pWorld -
|
|
7
|
+
float viewDirectionDistance = abs(dot(viewForward, pWorld - cameraPosition));
|
|
8
8
|
return viewDirectionDistance*perScreenPixelRatio;
|
|
9
9
|
}
|
|
10
10
|
vec3 screenSizeScaling(vec3 position, vec3 anchor){
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{glsl as i}from"../shaderModules/interfaces.js";import{VertexAttribute as
|
|
5
|
+
import{glsl as i}from"../shaderModules/interfaces.js";import{VertexAttribute as e}from"../../lib/VertexAttribute.js";function o(o,t=!0){o.attributes.add(e.POSITION,"vec2"),t&&o.varyings.add("uv","vec2"),o.vertex.code.add(i`
|
|
6
6
|
void main(void) {
|
|
7
7
|
gl_Position = vec4(position, 0.0, 1.0);
|
|
8
8
|
${t?i`uv = position * 0.5 + vec2(0.5);`:""}
|
|
9
9
|
}
|
|
10
|
-
`)}export{
|
|
10
|
+
`)}export{o as ScreenSpacePass};
|
package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{c as e}from"../../../../../../chunks/vec3f64.js";import{ShaderOutput as r}from"../ShaderOutputOptions.js";import{DoublePrecision as i}from"../util/DoublePrecision.glsl.js";import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as n}from"../../../lib/
|
|
5
|
+
import{c as e}from"../../../../../../chunks/vec3f64.js";import{ShaderOutput as r}from"../ShaderOutputOptions.js";import{DoublePrecision as i}from"../util/DoublePrecision.glsl.js";import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as n}from"../../../lib/VertexAttribute.js";import{encodeDoubleArraySplit as t}from"../../../../../webgl/doublePrecisionUtils.js";function a(e,t){t.instanced&&t.instancedDoublePrecision&&(e.attributes.add(n.MODELORIGINHI,"vec3"),e.attributes.add(n.MODELORIGINLO,"vec3"),e.attributes.add(n.MODEL,"mat3"),e.attributes.add(n.MODELNORMAL,"mat3")),t.instancedDoublePrecision&&(e.vertex.include(i,t),e.vertex.uniforms.add("viewOriginHi","vec3"),e.vertex.uniforms.add("viewOriginLo","vec3"));const a=[o`
|
|
6
6
|
vec3 calculateVPos() {
|
|
7
7
|
${t.instancedDoublePrecision?"return model * localPosition().xyz;":"return localPosition().xyz;"}
|
|
8
8
|
}
|
|
@@ -25,4 +25,4 @@ import{c as e}from"../../../../../../chunks/vec3f64.js";import{ShaderOutput as r
|
|
|
25
25
|
${t.instancedDoublePrecision?"return vec4(modelNormal * _tangent.xyz, _tangent.w);":"return _tangent;"}
|
|
26
26
|
|
|
27
27
|
}
|
|
28
|
-
`:o``];e.vertex.code.add(a[0]),e.vertex.code.add(a[1]),e.vertex.code.add(a[2]),t.output===r.Normal&&e.vertex.code.add(a[3]),e.vertex.code.add(a[4])}class c{}function
|
|
28
|
+
`:o``];e.vertex.code.add(a[0]),e.vertex.code.add(a[1]),e.vertex.code.add(a[2]),t.output===r.Normal&&e.vertex.code.add(a[3]),e.vertex.code.add(a[4])}class c{}function d(e,r){t(r,s,l,3),e.setUniform3fv("viewOriginHi",s),e.setUniform3fv("viewOriginLo",l)}const s=e(),l=e();export{a as InstancedDoublePrecision,c as InstancedDoublePrecisionUniforms,d as bindCustomOrigin};
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{DecodeNormal as e}from"../util/DecodeNormal.glsl.js";import{glsl as r}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/
|
|
5
|
+
import{DecodeNormal as e}from"../util/DecodeNormal.glsl.js";import{glsl as r}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/VertexAttribute.js";function o(o,d){d.normalType===i.Attribute&&(o.attributes.add(t.NORMAL,"vec3"),o.vertex.code.add(r`vec3 normalModel() {
|
|
6
6
|
return normal;
|
|
7
|
-
}`)),d.normalType===
|
|
7
|
+
}`)),d.normalType===i.CompressedAttribute&&(o.include(e),o.attributes.add(t.NORMALCOMPRESSED,"vec2"),o.vertex.code.add(r`vec3 normalModel() {
|
|
8
8
|
return decodeNormal(normalCompressed);
|
|
9
|
-
}`)),d.normalType===
|
|
9
|
+
}`)),d.normalType===i.ScreenDerivative&&(o.extensions.add("GL_OES_standard_derivatives"),o.fragment.code.add(r`vec3 screenDerivativeNormal(vec3 positionView) {
|
|
10
10
|
return normalize(cross(dFdx(positionView), dFdy(positionView)));
|
|
11
|
-
}`))}
|
|
11
|
+
}`))}var i;!function(e){e[e.Attribute=0]="Attribute",e[e.CompressedAttribute=1]="CompressedAttribute",e[e.Ground=2]="Ground",e[e.ScreenDerivative=3]="ScreenDerivative",e[e.COUNT=4]="COUNT"}(i||(i={}));export{o as NormalAttribute,i as NormalAttributeType};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{PositionAttribute as e}from"./PositionAttribute.glsl.js";import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../lib/
|
|
5
|
+
import{PositionAttribute as e}from"./PositionAttribute.glsl.js";import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../lib/VertexAttribute.js";function i(i,t){i.attributes.add(r.FEATUREVALUE,"vec4"),i.vertex.code.add(o`bool isCapVertex() {
|
|
6
6
|
return featureValue.w == 1.0;
|
|
7
7
|
}`),i.vertex.uniforms.add("size","vec3"),t.vvSize?(i.vertex.uniforms.add("vvSizeMinSize","vec3"),i.vertex.uniforms.add("vvSizeMaxSize","vec3"),i.vertex.uniforms.add("vvSizeOffset","vec3"),i.vertex.uniforms.add("vvSizeFactor","vec3"),i.vertex.code.add(o`vec2 getSize() {
|
|
8
8
|
return size.xy*clamp(vvSizeOffset + featureValue.x * vvSizeFactor, vvSizeMinSize, vvSizeMaxSize).xz;
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as
|
|
5
|
+
import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/VertexAttribute.js";function o(o){o.attributes.add(t.POSITION,"vec3"),o.vertex.code.add(e`vec3 positionModel() { return position; }`)}export{o as PositionAttribute};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/
|
|
5
|
+
import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/VertexAttribute.js";function v(v,i){v.vertex.uniforms.add("intrinsicWidth","float"),i.vvSize?(v.attributes.add(t.SIZEFEATUREATTRIBUTE,"float"),v.vertex.uniforms.add("vvSizeMinSize","vec3"),v.vertex.uniforms.add("vvSizeMaxSize","vec3"),v.vertex.uniforms.add("vvSizeOffset","vec3"),v.vertex.uniforms.add("vvSizeFactor","vec3"),v.vertex.code.add(e`float getSize() {
|
|
6
6
|
return intrinsicWidth * clamp(vvSizeOffset + sizeFeatureAttribute * vvSizeFactor, vvSizeMinSize, vvSizeMaxSize).x;
|
|
7
7
|
}`)):(v.attributes.add(t.SIZE,"float"),v.vertex.code.add(e`float getSize(){
|
|
8
8
|
return intrinsicWidth * size;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{DecodeSymbolColor as o}from"../../../collections/Component/Material/shader/DecodeSymbolColor.glsl.js";import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../lib/
|
|
5
|
+
import{DecodeSymbolColor as o}from"../../../collections/Component/Material/shader/DecodeSymbolColor.glsl.js";import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../lib/VertexAttribute.js";function l(l,d){d.symbolColor?(l.include(o),l.attributes.add(r.SYMBOLCOLOR,"vec4"),l.varyings.add("colorMixMode","mediump float")):l.fragment.uniforms.add("colorMixMode","int"),d.symbolColor?l.vertex.code.add(e`int symbolColorMixMode;
|
|
6
6
|
vec4 getSymbolColor() {
|
|
7
7
|
return decodeSymbolColor(symbolColor, symbolColorMixMode) * 0.003921568627451;
|
|
8
8
|
}
|
package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/
|
|
5
|
+
import{glsl as e}from"../../shaderModules/interfaces.js";import{VertexAttribute as t}from"../../../lib/VertexAttribute.js";function r(r,d){d.attributeTextureCoordinates===a.Default&&(r.attributes.add(t.UV0,"vec2"),r.varyings.add("vuv0","vec2"),r.vertex.code.add(e`void forwardTextureCoordinates() {
|
|
6
6
|
vuv0 = uv0;
|
|
7
|
-
}`)),d.attributeTextureCoordinates===
|
|
7
|
+
}`)),d.attributeTextureCoordinates===a.Atlas&&(r.attributes.add(t.UV0,"vec2"),r.varyings.add("vuv0","vec2"),r.attributes.add(t.UVREGION,"vec4"),r.varyings.add("vuvRegion","vec4"),r.vertex.code.add(e`void forwardTextureCoordinates() {
|
|
8
8
|
vuv0 = uv0;
|
|
9
9
|
vuvRegion = uvRegion;
|
|
10
|
-
}`)),d.attributeTextureCoordinates===
|
|
10
|
+
}`)),d.attributeTextureCoordinates===a.None&&r.vertex.code.add(e`void forwardTextureCoordinates() {}`)}var a;!function(e){e[e.None=0]="None",e[e.Default=1]="Default",e[e.Atlas=2]="Atlas",e[e.COUNT=3]="COUNT"}(a||(a={}));export{r as TextureCoordinateAttribute,a as TextureCoordinateAttributeType};
|
|
@@ -2,5 +2,5 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../lib/
|
|
5
|
+
import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as r}from"../../../lib/VertexAttribute.js";function e(e,d){d.attributeColor?(e.attributes.add(r.COLOR,"vec4"),e.varyings.add("vColor","vec4"),e.vertex.code.add(o`void forwardVertexColor() { vColor = color; }`),e.vertex.code.add(o`void forwardNormalizedVertexColor() { vColor = color * 0.003921568627451; }`)):e.vertex.code.add(o`void forwardVertexColor() {}
|
|
6
6
|
void forwardNormalizedVertexColor() {}`)}export{e as VertexColor};
|
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ViewingMode as o}from"../../../../../ViewingMode.js";import{NormalAttribute as
|
|
6
|
-
vNormalWorld =
|
|
7
|
-
vNormalView =
|
|
8
|
-
}`)):
|
|
5
|
+
import{ViewingMode as o}from"../../../../../ViewingMode.js";import{NormalAttributeType as r,NormalAttribute as a}from"./NormalAttribute.glsl.js";import{VertexPosition as e}from"./VertexPosition.glsl.js";import{glsl as l}from"../../shaderModules/interfaces.js";function m(m,d){d.normalType===r.Attribute||d.normalType===r.CompressedAttribute?(m.include(a,d),m.varyings.add("vNormalWorld","vec3"),m.varyings.add("vNormalView","vec3"),m.vertex.uniforms.add("transformNormalGlobalFromModel","mat3"),m.vertex.uniforms.add("transformNormalViewFromGlobal","mat3"),m.vertex.code.add(l`void forwardNormal() {
|
|
6
|
+
vNormalWorld = transformNormalGlobalFromModel * normalModel();
|
|
7
|
+
vNormalView = transformNormalViewFromGlobal * vNormalWorld;
|
|
8
|
+
}`)):d.normalType===r.Ground?(m.include(e,d),m.varyings.add("vNormalWorld","vec3"),m.vertex.code.add(l`
|
|
9
9
|
void forwardNormal() {
|
|
10
|
-
vNormalWorld = ${
|
|
10
|
+
vNormalWorld = ${d.viewingMode===o.Global?l`normalize(vPositionWorldCameraRelative);`:l`vec3(0.0, 0.0, 1.0);`}
|
|
11
11
|
}
|
|
12
|
-
`)):
|
|
12
|
+
`)):m.vertex.code.add(l`void forwardNormal() {}`)}function d(o,r){o.setUniformMatrix4fv("viewNormal",r)}export{m as VertexNormal,d as bindVertexNormalUniforms};
|
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{c as
|
|
6
|
-
vec3 rotatedModelPosition =
|
|
5
|
+
import{c as r}from"../../../../../../chunks/mat3f64.js";import{c as o}from"../../../../../../chunks/mat4f64.js";import{c as e}from"../../../../../../chunks/vec3f64.js";import{PositionAttribute as t}from"./PositionAttribute.glsl.js";import{DoublePrecision as m}from"../util/DoublePrecision.glsl.js";import{glsl as i}from"../../shaderModules/interfaces.js";function a(r,o){r.include(t),r.vertex.include(m,o),r.varyings.add("vPositionWorldCameraRelative","vec3"),r.varyings.add("vPosition_view","vec3"),r.vertex.uniforms.add("transformWorldFromModelRS","mat3"),r.vertex.uniforms.add("transformWorldFromModelTH","vec3"),r.vertex.uniforms.add("transformWorldFromModelTL","vec3"),r.vertex.uniforms.add("transformWorldFromViewTH","vec3"),r.vertex.uniforms.add("transformWorldFromViewTL","vec3"),r.vertex.uniforms.add("transformViewFromCameraRelativeRS","mat3"),r.vertex.uniforms.add("transformProjFromView","mat4"),r.vertex.code.add(i`vec3 positionWorldCameraRelative() {
|
|
6
|
+
vec3 rotatedModelPosition = transformWorldFromModelRS * positionModel();
|
|
7
7
|
vec3 transform_CameraRelativeFromModel = dpAdd(
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
8
|
+
transformWorldFromModelTL,
|
|
9
|
+
transformWorldFromModelTH,
|
|
10
|
+
-transformWorldFromViewTL,
|
|
11
|
+
-transformWorldFromViewTH
|
|
12
12
|
);
|
|
13
13
|
return transform_CameraRelativeFromModel + rotatedModelPosition;
|
|
14
14
|
}
|
|
15
15
|
vec3 position_view() {
|
|
16
|
-
return
|
|
16
|
+
return transformViewFromCameraRelativeRS * positionWorldCameraRelative();
|
|
17
17
|
}
|
|
18
18
|
void forwardPosition() {
|
|
19
19
|
vPositionWorldCameraRelative = positionWorldCameraRelative();
|
|
20
20
|
vPosition_view = position_view();
|
|
21
|
-
gl_Position =
|
|
21
|
+
gl_Position = transformProjFromView * vec4(vPosition_view, 1.0);
|
|
22
22
|
}
|
|
23
23
|
vec3 positionWorld() {
|
|
24
|
-
return
|
|
25
|
-
}`),
|
|
26
|
-
return
|
|
27
|
-
}`)}
|
|
24
|
+
return transformWorldFromViewTL + vPositionWorldCameraRelative;
|
|
25
|
+
}`),r.fragment.uniforms.add("transformWorldFromViewTL","vec3"),r.fragment.code.add(i`vec3 positionWorld() {
|
|
26
|
+
return transformWorldFromViewTL + vPositionWorldCameraRelative;
|
|
27
|
+
}`)}class s{constructor(){this.transformWorldFromModelRS=r(),this.transformWorldFromModelTH=e(),this.transformWorldFromModelTL=e()}}class n{constructor(){this.transformWorldFromViewTH=e(),this.transformWorldFromViewTL=e(),this.transformViewFromCameraRelativeRS=r(),this.transformProjFromView=o()}}function d(r,o){r.setUniformMatrix3fv("transformWorldFromModelRS",o.transformWorldFromModelRS),r.setUniform3fv("transformWorldFromModelTH",o.transformWorldFromModelTH),r.setUniform3fv("transformWorldFromModelTL",o.transformWorldFromModelTL)}function l(r,o){r.setUniform3fv("transformWorldFromViewTH",o.transformWorldFromViewTH),r.setUniform3fv("transformWorldFromViewTL",o.transformWorldFromViewTL),r.setUniformMatrix4fv("transformProjFromView",o.transformProjFromView),r.setUniformMatrix3fv("transformViewFromCameraRelativeRS",o.transformViewFromCameraRelativeRS)}export{a as VertexPosition,s as VertexPositionModelTransform,n as VertexPositionViewProjectionTransform,d as bindModelTransform,l as bindViewProjTransform};
|
package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js
CHANGED
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{TextureCoordinateAttribute as e}from"./TextureCoordinateAttribute.glsl.js";import{TextureAtlasLookup as
|
|
5
|
+
import{TextureCoordinateAttribute as e,TextureCoordinateAttributeType as t}from"./TextureCoordinateAttribute.glsl.js";import{TextureAtlasLookup as r}from"../util/TextureAtlasLookup.glsl.js";import{glsl as a}from"../../shaderModules/interfaces.js";function u(u,o){u.include(e,o),u.fragment.code.add(a`
|
|
6
6
|
struct TextureLookupParameter {
|
|
7
7
|
vec2 uv;
|
|
8
|
-
${
|
|
8
|
+
${o.supportsTextureAtlas?"vec2 size;":""}
|
|
9
9
|
} vtc;
|
|
10
|
-
`),
|
|
10
|
+
`),o.attributeTextureCoordinates===t.Default&&u.fragment.code.add(a`vec4 textureLookup(sampler2D tex, TextureLookupParameter params) {
|
|
11
11
|
return texture2D(tex, params.uv);
|
|
12
|
-
}`),
|
|
12
|
+
}`),o.attributeTextureCoordinates===t.Atlas&&(u.include(r),u.fragment.code.add(a`vec4 textureLookup(sampler2D tex, TextureLookupParameter params) {
|
|
13
13
|
return textureAtlasLookup(tex, params.size, params.uv, vuvRegion);
|
|
14
14
|
}`))}export{u as VertexTextureCoordinates};
|
|
@@ -7,7 +7,7 @@ import{ViewingMode as e}from"../../../../../ViewingMode.js";import{ScreenSizePer
|
|
|
7
7
|
float viewDistance = length((view * vec4(worldPos, 1.0)).xyz);
|
|
8
8
|
${c.viewingMode===e.Global?t`vec3 worldNormal = normalize(worldPos + localOrigin);`:t`vec3 worldNormal = vec3(0.0, 0.0, 1.0);`}
|
|
9
9
|
${c.screenSizePerspectiveEnabled?t`
|
|
10
|
-
float cosAngle = dot(worldNormal, normalize(worldPos -
|
|
10
|
+
float cosAngle = dot(worldNormal, normalize(worldPos - cameraPosition));
|
|
11
11
|
float verticalOffsetScreenHeight = screenSizePerspectiveScaleFloat(verticalOffset.x, abs(cosAngle), viewDistance, screenSizePerspectiveAlignment);`:t`
|
|
12
12
|
float verticalOffsetScreenHeight = verticalOffset.x;`}
|
|
13
13
|
// Screen sized offset in world space, used for example for line callouts
|
package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js
CHANGED
|
@@ -2,59 +2,59 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{ShaderOutput as o}from"../ShaderOutputOptions.js";import{Slice as r}from"../Slice.glsl.js";import{Transform as e}from"../Transform.glsl.js";import{NormalAttribute as t}from"../attributes/NormalAttribute.glsl.js";import{TextureCoordinateAttribute as
|
|
5
|
+
import{ShaderOutput as o}from"../ShaderOutputOptions.js";import{Slice as r}from"../Slice.glsl.js";import{Transform as e}from"../Transform.glsl.js";import{NormalAttribute as t,NormalAttributeType as i}from"../attributes/NormalAttribute.glsl.js";import{TextureCoordinateAttribute as a}from"../attributes/TextureCoordinateAttribute.glsl.js";import{VertexNormal as l}from"../attributes/VertexNormal.glsl.js";import{OutputDepth as s}from"../output/OutputDepth.glsl.js";import{OutputHighlight as d}from"../output/OutputHighlight.glsl.js";import{VisualVariables as n}from"../shading/VisualVariables.glsl.js";import{DiscardOrAdjustAlpha as u}from"../util/AlphaDiscard.glsl.js";import{glsl as m}from"../../shaderModules/interfaces.js";function p(p,v){const c=p.vertex.code,f=p.fragment.code,g=v.hasModelTransformation;v.output!==o.Depth&&v.output!==o.Shadow||(p.include(e,{linearDepth:!0,hasModelTransformation:g}),p.include(a,v),p.include(n,v),p.include(s,v),p.include(r,v),p.vertex.uniforms.add("nearFar","vec2"),p.varyings.add("depth","float"),v.hasColorTexture&&p.fragment.uniforms.add("tex","sampler2D"),c.add(m`
|
|
6
6
|
void main(void) {
|
|
7
7
|
vpos = calculateVPos();
|
|
8
8
|
vpos = subtractOrigin(vpos);
|
|
9
9
|
vpos = addVerticalOffset(vpos, localOrigin);
|
|
10
|
-
gl_Position = transformPositionWithDepth(proj, view, ${
|
|
10
|
+
gl_Position = transformPositionWithDepth(proj, view, ${g?"model,":""} vpos, nearFar, depth);
|
|
11
11
|
forwardTextureCoordinates();
|
|
12
12
|
}
|
|
13
|
-
`),
|
|
13
|
+
`),p.include(u,v),f.add(m`
|
|
14
14
|
void main(void) {
|
|
15
15
|
discardBySlice(vpos);
|
|
16
|
-
${
|
|
16
|
+
${v.hasColorTexture?m`
|
|
17
17
|
vec4 texColor = texture2D(tex, vuv0);
|
|
18
18
|
discardOrAdjustAlpha(texColor);`:""}
|
|
19
19
|
outputDepth(depth);
|
|
20
20
|
}
|
|
21
|
-
`)),
|
|
21
|
+
`)),v.output===o.Normal&&(p.include(e,{linearDepth:!1,hasModelTransformation:g}),p.include(t,v),p.include(l,v),p.include(a,v),p.include(n,v),v.hasColorTexture&&p.fragment.uniforms.add("tex","sampler2D"),p.vertex.uniforms.add("viewNormal","mat4"),p.varyings.add("vPositionView","vec3"),c.add(m`
|
|
22
22
|
void main(void) {
|
|
23
23
|
vpos = calculateVPos();
|
|
24
24
|
vpos = subtractOrigin(vpos);
|
|
25
|
-
${
|
|
25
|
+
${v.normalType===i.Attribute?m`
|
|
26
26
|
vNormalWorld = dpNormalView(vvLocalNormal(normalModel()));`:""}
|
|
27
27
|
vpos = addVerticalOffset(vpos, localOrigin);
|
|
28
|
-
gl_Position = transformPosition(proj, view, ${
|
|
28
|
+
gl_Position = transformPosition(proj, view, ${g?"model,":""} vpos);
|
|
29
29
|
forwardTextureCoordinates();
|
|
30
30
|
}
|
|
31
|
-
`),
|
|
31
|
+
`),p.include(r,v),p.include(u,v),f.add(m`
|
|
32
32
|
void main() {
|
|
33
33
|
discardBySlice(vpos);
|
|
34
|
-
${
|
|
34
|
+
${v.hasColorTexture?m`
|
|
35
35
|
vec4 texColor = texture2D(tex, vuv0);
|
|
36
36
|
discardOrAdjustAlpha(texColor);`:""}
|
|
37
37
|
|
|
38
|
-
${
|
|
39
|
-
vec3 normal = screenDerivativeNormal(vPositionView);`:
|
|
38
|
+
${v.normalType===i.ScreenDerivative?m`
|
|
39
|
+
vec3 normal = screenDerivativeNormal(vPositionView);`:m`
|
|
40
40
|
vec3 normal = normalize(vNormalWorld);
|
|
41
41
|
if (gl_FrontFacing == false) normal = -normal;`}
|
|
42
42
|
gl_FragColor = vec4(vec3(0.5) + 0.5 * normal, 1.0);
|
|
43
43
|
}
|
|
44
|
-
`)),
|
|
44
|
+
`)),v.output===o.Highlight&&(p.include(e,{linearDepth:!1,hasModelTransformation:g}),p.include(a,v),p.include(n,v),v.hasColorTexture&&p.fragment.uniforms.add("tex","sampler2D"),c.add(m`
|
|
45
45
|
void main(void) {
|
|
46
46
|
vpos = calculateVPos();
|
|
47
47
|
vpos = subtractOrigin(vpos);
|
|
48
48
|
vpos = addVerticalOffset(vpos, localOrigin);
|
|
49
|
-
gl_Position = transformPosition(proj, view, ${
|
|
49
|
+
gl_Position = transformPosition(proj, view, ${g?"model,":""} vpos);
|
|
50
50
|
forwardTextureCoordinates();
|
|
51
51
|
}
|
|
52
|
-
`),
|
|
52
|
+
`),p.include(r,v),p.include(u,v),p.include(d),f.add(m`
|
|
53
53
|
void main() {
|
|
54
54
|
discardBySlice(vpos);
|
|
55
|
-
${
|
|
55
|
+
${v.hasColorTexture?m`
|
|
56
56
|
vec4 texColor = texture2D(tex, vuv0);
|
|
57
57
|
discardOrAdjustAlpha(texColor);`:""}
|
|
58
58
|
outputHighlight();
|
|
59
59
|
}
|
|
60
|
-
`))}export{
|
|
60
|
+
`))}export{p as DefaultMaterialAuxiliaryPasses};
|
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"../../../../../ViewingMode.js";import"../ForwardLinearDepth.glsl.js";import"../Offset.glsl.js";import"../ShaderOutputOptions.js";import"../Slice.glsl.js";import"../Transform.glsl.js";import"../attributes/InstancedDoublePrecision.glsl.js";import"../attributes/NormalAttribute.glsl.js";import"../attributes/PositionAttribute.glsl.js";import"../attributes/SymbolColor.glsl.js";import"../attributes/TextureCoordinateAttribute.glsl.js";import"../attributes/VertexColor.glsl.js";import"../attributes/VerticalOffset.glsl.js";import"./DefaultMaterialAuxiliaryPasses.glsl.js";import"../output/ReadLinearDepth.glsl.js";import"../shading/EvaluateAmbientOcclusion.glsl.js";import"../shading/EvaluateSceneLighting.glsl.js";import"../shading/MultipassTerrainTest.glsl.js";import"../shading/PhysicallyBasedRendering.glsl.js";import"../shading/PhysicallyBasedRenderingParameters.glsl.js";import"../shading/ReadShadowMap.glsl.js";import"../shading/VisualVariables.glsl.js";import"../util/AlphaDiscard.glsl.js";import"../util/MixExternalColor.glsl.js";import"../../shaderModules/interfaces.js";import"../../shaderModules/ShaderBuilder.js";import"../../../lib/
|
|
5
|
+
import"../../../../../ViewingMode.js";import"../ForwardLinearDepth.glsl.js";import"../Offset.glsl.js";import"../ShaderOutputOptions.js";import"../Slice.glsl.js";import"../Transform.glsl.js";import"../attributes/InstancedDoublePrecision.glsl.js";import"../attributes/NormalAttribute.glsl.js";import"../attributes/PositionAttribute.glsl.js";import"../attributes/SymbolColor.glsl.js";import"../attributes/TextureCoordinateAttribute.glsl.js";import"../attributes/VertexColor.glsl.js";import"../attributes/VerticalOffset.glsl.js";import"./DefaultMaterialAuxiliaryPasses.glsl.js";import"../output/ReadLinearDepth.glsl.js";import"../shading/EvaluateAmbientOcclusion.glsl.js";import"../shading/EvaluateSceneLighting.glsl.js";import"../shading/MultipassTerrainTest.glsl.js";import"../shading/PhysicallyBasedRendering.glsl.js";import"../shading/PhysicallyBasedRenderingParameters.glsl.js";import"../shading/ReadShadowMap.glsl.js";import"../shading/VisualVariables.glsl.js";import"../util/AlphaDiscard.glsl.js";import"../util/MixExternalColor.glsl.js";import"../../shaderModules/interfaces.js";import"../../shaderModules/ShaderBuilder.js";import"../../../lib/VertexAttribute.js";export{b as build}from"../../../../../../chunks/RealisticTree.glsl.js";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
All material copyright ESRI, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/4.23/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{HUDTransparentRenderStyle as e}from"./HUDUniforms.js";import{ScreenSizePerspective as t}from"../util/ScreenSizePerspective.glsl.js";import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as a}from"../../../lib/
|
|
5
|
+
import{HUDTransparentRenderStyle as e}from"./HUDUniforms.js";import{ScreenSizePerspective as t}from"../util/ScreenSizePerspective.glsl.js";import{glsl as o}from"../../shaderModules/interfaces.js";import{VertexAttribute as a}from"../../../lib/VertexAttribute.js";var r;function i(e,i){const n=e;n.include(t),n.attributes.add(a.POSITION,"vec3"),n.attributes.add(a.NORMAL,"vec3"),n.attributes.add(a.AUXPOS1,"vec4"),n.vertex.uniforms.add("proj","mat4"),n.vertex.uniforms.add("view","mat4"),n.vertex.uniforms.add("viewNormal","mat4"),n.vertex.uniforms.add("viewport","vec4"),n.vertex.uniforms.add("cameraPosition","vec3"),n.vertex.uniforms.add("polygonOffset","float"),n.vertex.uniforms.add("cameraGroundRelative","float"),n.vertex.uniforms.add("pixelRatio","float"),n.vertex.uniforms.add("perDistancePixelRatio","float"),n.vertex.uniforms.add("renderTransparentlyOccludedHUD","float"),i.verticalOffsetEnabled&&n.vertex.uniforms.add("verticalOffset","vec4"),i.screenSizePerspectiveEnabled&&n.vertex.uniforms.add("screenSizePerspectiveAlignment","vec4"),n.vertex.uniforms.add("hudVisibilityTexture","sampler2D"),n.vertex.constants.add("smallOffsetAngle","float",.984807753012208),n.vertex.code.add(o`struct ProjectHUDAux {
|
|
6
6
|
vec3 posModel;
|
|
7
7
|
vec3 posView;
|
|
8
8
|
vec3 vnormal;
|
|
@@ -57,7 +57,7 @@ posView += viewOffset;
|
|
|
57
57
|
|
|
58
58
|
aux.distanceToCamera = length(aux.posView);
|
|
59
59
|
|
|
60
|
-
vec3 viewDirObjSpace = normalize(
|
|
60
|
+
vec3 viewDirObjSpace = normalize(cameraPosition - aux.posModel);
|
|
61
61
|
float cosAngle = dot(aux.vnormal, viewDirObjSpace);
|
|
62
62
|
|
|
63
63
|
aux.absCosAngle = abs(cosAngle);
|
|
@@ -102,8 +102,8 @@ posView += viewOffset;
|
|
|
102
102
|
`),n.vertex.code.add(o`bool testVisibilityHUD(vec4 posProj) {
|
|
103
103
|
vec4 posProjCenter = alignToPixelCenter(posProj, viewport.zw);
|
|
104
104
|
vec4 occlusionPixel = texture2D(hudVisibilityTexture, .5 + .5 * posProjCenter.xy / posProjCenter.w);
|
|
105
|
-
if (
|
|
106
|
-
return occlusionPixel.r * occlusionPixel.g > 0.0 && occlusionPixel.g *
|
|
105
|
+
if (renderTransparentlyOccludedHUD > 0.5) {
|
|
106
|
+
return occlusionPixel.r * occlusionPixel.g > 0.0 && occlusionPixel.g * renderTransparentlyOccludedHUD < 1.0;
|
|
107
107
|
}
|
|
108
108
|
return occlusionPixel.r * occlusionPixel.g > 0.0 && occlusionPixel.g == 1.0;
|
|
109
|
-
}`)}function n(t,o){t.setUniform1f("
|
|
109
|
+
}`)}function n(t,o){t.setUniform1f("renderTransparentlyOccludedHUD",o.renderTransparentlyOccludedHUD===e.OCCLUDED?1:o.renderTransparentlyOccludedHUD===e.NOTOCCLUDED?0:.75)}!function(e){e[e.World=0]="World",e[e.Screen=1]="Screen",e[e.COUNT=2]="COUNT"}(r||(r={}));export{i as HUD,r as HUDSpace,n as bindHUDUniforms};
|