{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/chunks/DefaultMaterial.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/quat.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js","webpack:///./node_modules/@arcgis/core/support/requestImageUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/webgl/testSVGPremultipliedAlpha.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderModules/interfaces.js","webpack:///./node_modules/@arcgis/core/chunks/vec3f32.js","webpack:///./node_modules/@arcgis/core/chunks/vec33.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/AnalyticalSkyModel.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/math/common.js","webpack:///./node_modules/@arcgis/core/chunks/vec32.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/WebGLDriverTest.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/DoublePrecision.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/collections/Component/Material/shader/DecodeSymbolColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/screenSizePerspectiveUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/renderers/utils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/internal/MaterialUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/TextureAtlasLookup.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexTextureCoordinates.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/internals/Mat3.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/internals/Mat4.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/internals/Scalar.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/internals/Vec2.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/internals/Vec3.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/internals/Vec4.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/BufferView.js","webpack:///./node_modules/@arcgis/core/views/webgl/reservedWordsGLSL3.js","webpack:///./node_modules/@arcgis/core/views/webgl/ShaderTranspiler.js","webpack:///./node_modules/@arcgis/core/views/webgl/Program.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/BoundingInfo.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/ContentObject.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Geometry.js","webpack:///./node_modules/@arcgis/core/libs/basisu/BasisU.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/BasisUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DDSUtil.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DefaultVertexAttributeLocations.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/DefaultVertexBufferLayouts.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/glUtil3D.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Texture.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/AutoDisposable.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/GLMaterial.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/GLMaterialTexture.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Material.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/OrderIndependentTransparency.js","webpack:///./node_modules/@arcgis/core/geometry/support/ray.js","webpack:///./node_modules/@arcgis/core/geometry/support/vector.js","webpack:///./node_modules/@arcgis/core/chunks/sphere.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/verticalOffsetUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/internal/bufferWriterUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderTechnique/ReloadableShaderModule.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderTechnique/ShaderTechniqueConfiguration.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/Program.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/StencilUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/DefaultMaterial.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/graphics/wosrLoader.js","webpack:///./node_modules/@arcgis/core/views/3d/layers/graphics/objectResourceUtils.js","webpack:///./node_modules/@arcgis/core/chunks/mat4f32.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/lib/doublePrecisionUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/mat4f64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/RealisticTree.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/quatf64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/DecodeNormal.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/PiUtils.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/mat3f64.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateMainLighting.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/support/buffer/InterleavedLayout.js"],"names":["P","_","S","vertex","code","$","fragment","include","name","output","uniforms","add","varyings","linearDepth","normalType","offsetBackfaces","instancedColor","attributes","multipassTerrainEnabled","float","vertexTangents","hasColorTexture","textureAlphaPremultiplied","attributeColor","receiveShadows","pbrMode","viewingMode","hasNormalTexture","OITEnabled","Object","freeze","__proto__","build","x","t","A","s","a","n","Math","sin","cos","I","acos","o","r","c","e","u","i","h","b","y","E","sqrt","abs","z","M","f","l","m","p","q","d","L","PI","k","w","B","C","D","F","G","O","R","T","W","X","Y","Z","H","J","K","N","Q","U","V","tt","st","at","nt","ot","identity","setAxisAngle","getAxisAngle","multiply","rotateX","rotateY","rotateZ","calculateW","slerp","random","invert","conjugate","fromMat3","fromEuler","str","copy","set","mul","scale","dot","lerp","length","len","squaredLength","sqrLen","normalize","exactEquals","equals","rotationTo","sqlerp","setAxes","doubleSidedMode","extensions","attributeTextureCoordinates","supportsTextureAtlas","verticalOffsetEnabled","screenSizePerspectiveEnabled","verticalOffset","camera","fovY","fullViewport","pixelRatio","setUniform4f","screenLength","perDistance","minWorldLength","maxWorldLength","tan","async","data","responseType","int","Image","src","width","height","decode","gl","colorTarget","depthStencilTarget","target","wrapMode","pixelFormat","dataType","samplingMode","createVertex","Uint16Array","Map","geometry","count","type","offset","stride","normalized","useProgram","g","preMultiplyAlpha","bindTexture","setUniform1i","getBoundFramebufferObject","getViewport","bindFramebuffer","setViewport","bindVAO","drawArrays","v","Uint8Array","readPixels","dispose","round","toString","toPrecision","Float32Array","create","clone","fromValues","createView","zeros","ones","unitX","unitY","unitZ","ZEROS","ONES","UNIT_X","UNIT_Y","UNIT_Z","typedBuffer","typedBufferStride","dstIndex","srcIndex","fill","useCustomDTRExponentForWater","getLogger","error","min","transformMat4","transformMat3","shiftRight","this","includedModules","has","get","builder","super","arguments","constants","generateSource","concat","join","_entries","arraySize","Array","from","values","map","push","Set","ALLOWLIST_VERTEX","ALLOWLIST_FRAGMENT","filter","includes","numberToFloatStr","numberToIntStr","prototype","call","toFixed","Number","isInteger","highlightDepthTexture","inverseViewport","context","svgAlwaysPremultipliesAlpha","_doublePrecisionRequiresObfuscation","then","setUniform3f","doublePrecisionRequiresObfuscation","symbolColor","receiveAmbientOcclusion","parameters","paddingPixelsOverride","divisor","factor","minPixelSize","paddingPixels","max","visible","Float64Array","boundingInfo","primitiveType","tolerance","indices","vertexAttributes","getBBMin","getBBMax","applyToAabb","primitiveIndices","position","getChildren","size","j","applyToVertex","EPSILON","fullHeight","forEach","isArray","slice","ignore","replace","tint","worldFromModel_RS","worldFromModel_TH","worldFromModel_TL","ModelTransform","worldFromView_TH","worldFromView_TL","viewFromCameraRelative_RS","projFromView","setUniformMatrix3fv","setUniform3fv","setUniformMatrix4fv","ViewProjectionTransform","bindModelTransform","bindViewProjTransform","bindUniforms","TypedArrayConstructor","elementCount","BYTES_PER_ELEMENT","byteLength","ceil","byteOffset","buffer","ElementCount","elementType","ElementType","sliceBuffer","Uint32Array","Int8Array","Int16Array","Int32Array","line","column","test","indexOf","exec","Error","splice","match","parseInt","trim","_context","_locations","_vShader","_fShader","_nameToUniformLocation","_nameToUniform1","_nameToUniform1v","_nameToUniform2","_nameToUniform3","_nameToUniform4","_nameToUniformMatrix3","_nameToUniformMatrix4","console","createProgram","attachShader","bindAttribLocation","linkProgram","getProgramParameter","LINK_STATUS","VALIDATE_STATUS","getError","getProgramInfoLog","_glName","instanceCounter","increment","Program","deleteShader","deleteProgram","decrement","getUniformLocation","_getUniformLocation","uniform1i","uniform1iv","uniform2iv","uniform3iv","uniform4iv","uniform1f","uniform1fv","uniform2f","uniform2fv","uniform3f","uniform3fv","uniform4f","uniform4fv","uniformMatrix3fv","uniformMatrix4fv","locations","webglVersion","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","log","_numIndexPerPrimitive","center","clear","bbMin","bbMax","radius","getItemAt","_children","prune","deallocator","id","_primitiveType","edgeIndicesLength","_vertexAttributes","_indices","_boundingInfo","keys","exclusive","next","value","indexCount","_calculateBoundingInfo","computeAttachmentOriginTriangles","computeAttachmentOriginPoints","default","locateFile","initializeBasis","BasisFile","getNumLevels","getHasAlpha","getImageWidth","getImageHeight","close","delete","KTX2File","getLevels","getWidth","getHeight","getNumImages","isUASTC","getFaces","isETC1S","startTranscoding","getImageTranscodedSizeInBytes","transcodeImage","compressedTextureETC","compressedTextureS3TC","capabilities","hasMipmap","internalFormat","levels","charCodeAt","String","fromCharCode","textureData","warn","glTexture","powerOfTwoStretchInfo","loadingPromise","loadingController","events","params","mipmap","noUnpackFlip","wrap","powerOfTwoResizeMode","estimatedTexMemRequired","estimateTexMemRequired","startPreload","HTMLVideoElement","startPreloadVideoElement","HTMLImageElement","startPreloadImageElement","preload","crossOrigin","videoWidth","videoHeight","encoding","KTX2_ENCODING","BASIS_ENCODING","ImageData","HTMLCanvasElement","getDataDimensions","components","flipped","maxAnisotropy","maxMaxAnisotropy","createDescriptor","loadFromURL","loadFromImageElement","loadFromVideoElement","loadFromImage","DDS_ENCODING","loadFromDDSData","loadFromKTX2","loadFromBasis","loadFromPixelData","readyState","currentTime","framebuffer","vao","sourceTexture","setData","drawStretchedTexture","descriptor","updateData","generateMipmap","loadAsync","signal","complete","loadFromVideoElementAsync","Promise","removeEventListener","remove","addEventListener","requiresPowerOfTwo","makePowerOfTwoTexture","textureCoordinateScaleFactor","stretchToPowerOfTwo","requiresFrameUpdates","detachColorTexture","program","setPipelineState","pipeline","abort","emit","_isDisposed","_managedDisposables","_material","material","_techniqueRep","techniqueRep","_output","_technique","technique","_textureIDs","_textureRepository","textureRep","_textureId","textureId","_initTransparent","initTextureTransparent","_texture","_acquire","_textureNormal","normalTextureId","_textureEmissive","emissiveTextureId","_textureOcclusion","occlusionTextureId","_textureMetallicRoughness","metallicRoughnessTextureId","release","_release","setUniform2fv","setUniform2f","acquire","supportsEdges","_visible","_renderPriority","_insertOrder","_vertexAttributeLocations","_params","validateParameterValues","parametersChanged","renderOccluded","materialRepository","materialChanged","units","direction","origin","fromCenterAndRadius","fromRadius","getRadius","getCenter","elevate","setExtent","intersectRay","intersectsRay","intersectRayClosestSilhouette","closestPointOnSilhouette","closestPoint","projectPoint","distanceToSilhouette","angleToSilhouette","axisAt","altitudeAt","setAltitudeAt","tmpVertex","localOrigin","componentLocalOriginLength","mbs","obb","halfSize","quaternion","sphere","objectTransform","transform","inverse","fieldNames","getField","_module","_loadModule","_config","snapshot","_program","initializeProgram","_pipeline","initializePipeline","key","assertCompatibleVertexAttributeLocations","_key","_keyDirty","_parameterBits","apply","_parameterNames","defineProperty","_textures","_freeTextureUnits","_fragmentUniforms","fragmentUniforms","entries","glName","unit","_freeTextureUnit","_allocTextureUnit","texture","pop","mask","function","func","ref","operation","fail","zFail","zPass","shader","configuration","transparencyPassType","slicePlaneEnabled","sliceHighlightDisabled","sliceEnabledForVertexPrograms","symbolColors","vvSize","vvColor","vvInstancingEnabled","instanced","instancedDoublePrecision","usePBR","isSchematic","hasMetalnessAndRoughnessTexture","hasEmissionTexture","hasOcclusionTexture","normalsTypeDerivate","vertexColors","screenSizePerspective","rctx","alphaDiscardMode","cullAboveGround","projectionMatrix","nearFar","setUniform1f","opacity","layerOpacity","setUniform4fv","externalColor","colorMixMode","lighting","setUniforms","ambient","diffuse","textureAlphaMode","textureAlphaCutoff","shadowMap","bind","ssaoHelper","viewInverseTransposeMatrix","viewMatrix","rebindTextures","bindCustomOrigin","slicePlane","blending","transparent","culling","cullFace","depthTest","depthWrite","writeDepth","colorWrite","stencilWrite","sceneHasOcludees","stencilTest","polygonOffset","enableOffset","_occludeePipelineState","setPipeline","techniqueConfig","vertexBufferLayout","getVertexBufferLayout","instanceBufferLayout","getInstanceBufferLayout","castShadows","isVisible","vvColorEnabled","vvSizeEnabled","normals","treeRendering","doubleSided","doubleSidedType","shadowMappingEnabled","ssaoEnabled","receiveSSAO","offsetTransparentBackfaces","relativeElevation","eye","inverseRotation","vec3f","vec4f","vec2f","vec4u8","mat3f","mat4f","updateParameters","updateTexture","releaseAndAcquire","getTechniqueConfig","setParameterValues","hasOccludees","_updateShadowState","_updateOccludeeState","bindPass","bindTextures","getPipelineState","emissiveFactor","mrrFactors","vvSizeMinSize","vvSizeMaxSize","vvSizeOffset","vvSizeFactor","vvSizeValue","vvColorValues","vvColorColors","vvSymbolAnchor","vvSymbolRotationMatrix","createBuffer","transformation","invTranspTransformation","resource","textures","textureDefinitions","streamDataRequester","ok","request","details","url","topology","faces","valueType","valuesPerElement","parse","version","validate","model","geometries","materialDefinitions","image","substring","lastIndexOf","transparency","alphaChannelUsage","externalColorMixMode","materialParamsMixin","assign","stageResources","materials","pivotOffset","boundingBox","numberOfVertices","lodThreshold","images","disableTextures","resolve","refId","channels","all","region","fileType","cache","loadWOSR","lods","referenceBoundingBox","isEsriSymbolResource","isWosr","loadGLTF","meta","uri","customMeta","esriTreeRendering","specifiedLodIndex","parts","normal","color","texCoord0","tangent","textureColor","textureNormal","textureOcclusion","textureEmissive","textureMetallicRoughness","alphaMode","alphaCutoff","metallicFactor","roughnessFactor","getVec","setVec","IDENTITY","setUniform1fv","terrainLinearDepthTexture","bindView","basis1","basis2","Uniforms","lightingSphericalHarmonicsOrder","layout","ArrayBuffer","fields","constructor","appendField","optional","floor","BufferType"],"mappings":"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","file":"js/chunk-0b77055b.efd82ff9.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{ForwardLinearDepth as e}from\"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js\";import{Offset as r}from\"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js\";import{Slice as o}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{Transform as a}from\"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js\";import{InstancedDoublePrecision as i}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{NormalAttribute as l}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{PositionAttribute as t}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js\";import{SymbolColor as n}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js\";import{TextureCoordinateAttribute as d}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{VertexColor as s}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js\";import{VertexNormal as c}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js\";import{VerticalOffset as g}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{DefaultMaterialAuxiliaryPasses as m}from\"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js\";import{ReadLinearDepth as v}from\"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js\";import{ComputeNormalTexture as p}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js\";import{EvaluateAmbientOcclusion as u}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js\";import{EvaluateSceneLighting as b}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js\";import{multipassTerrainTest as h}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{Normals as f}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js\";import{PhysicallyBasedRendering as x}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js\";import{PhysicallyBasedRenderingParameters as w}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{ReadShadowMap as y}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{VisualVariables as C}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js\";import{symbolAlphaCutoff as L,DiscardOrAdjustAlpha as j}from\"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{HeaderComment as M}from\"../views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js\";import{MixExternalColor as T}from\"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js\";import{glsl as E}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{ShaderBuilder as O}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";function P(P){const _=new O,S=_.vertex.code,$=_.fragment.code;return _.include(M,{name:\"Default Material Shader\",output:P.output}),_.vertex.uniforms.add(\"proj\",\"mat4\").add(\"view\",\"mat4\").add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\"),_.include(t),_.varyings.add(\"vpos\",\"vec3\"),_.include(C,P),_.include(i,P),_.include(g,P),0!==P.output&&7!==P.output||(_.include(l,P),_.include(a,{linearDepth:!1}),0===P.normalType&&P.offsetBackfaces&&_.include(r),_.include(p,P),_.include(c,P),P.instancedColor&&_.attributes.add(\"instanceColor\",\"vec4\"),_.varyings.add(\"localvpos\",\"vec3\"),_.include(d,P),_.include(e,P),_.include(n,P),_.include(s,P),_.vertex.uniforms.add(\"externalColor\",\"vec4\"),_.varyings.add(\"vcolorExt\",\"vec4\"),P.multipassTerrainEnabled&&_.varyings.add(\"depth\",\"float\"),S.add(E`\n void main(void) {\n forwardNormalizedVertexColor();\n vcolorExt = externalColor;\n ${P.instancedColor?\"vcolorExt *= instanceColor;\":\"\"}\n vcolorExt *= vvColor();\n vcolorExt *= getSymbolColor();\n forwardColorMixMode();\n\n if (vcolorExt.a < ${E.float(L)}) {\n gl_Position = vec4(1e38, 1e38, 1e38, 1.0);\n }\n else {\n vpos = calculateVPos();\n localvpos = vpos - view[3].xyz;\n vpos = subtractOrigin(vpos);\n ${0===P.normalType?E`\n vNormalWorld = dpNormal(vvLocalNormal(normalModel()));`:\"\"}\n vpos = addVerticalOffset(vpos, localOrigin);\n ${P.vertexTangents?\"vTangent = dpTransformVertexTangent(tangent);\":\"\"}\n gl_Position = transformPosition(proj, view, vpos);\n ${0===P.normalType&&P.offsetBackfaces?\"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, camPos);\":\"\"}\n }\n\n ${P.multipassTerrainEnabled?\"depth = (view * vec4(vpos, 1.0)).z;\":\"\"}\n forwardLinearDepth();\n forwardTextureCoordinates();\n }\n `)),7===P.output&&(_.include(o,P),_.include(j,P),P.multipassTerrainEnabled&&(_.fragment.include(v),_.include(h,P)),_.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),P.hasColorTexture&&_.fragment.uniforms.add(\"tex\",\"sampler2D\"),_.fragment.include(T),$.add(E`\n void main() {\n discardBySlice(vpos);\n ${P.multipassTerrainEnabled?\"terrainDepthTest(gl_FragCoord, depth);\":\"\"}\n ${P.hasColorTexture?E`\n vec4 texColor = texture2D(tex, vuv0);\n ${P.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:E`vec4 texColor = vec4(1.0);`}\n ${P.attributeColor?E`\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:E`\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n gl_FragColor = vec4(opacity_);\n }\n `)),0===P.output&&(_.include(o,P),_.include(b,P),_.include(u,P),_.include(j,P),P.receiveShadows&&_.include(y,P),P.multipassTerrainEnabled&&(_.fragment.include(v),_.include(h,P)),_.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"ambient\",\"vec3\").add(\"diffuse\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),P.hasColorTexture&&_.fragment.uniforms.add(\"tex\",\"sampler2D\"),_.include(w,P),_.include(x,P),_.fragment.include(T),_.include(f,P),$.add(E`\n void main() {\n discardBySlice(vpos);\n ${P.multipassTerrainEnabled?\"terrainDepthTest(gl_FragCoord, depth);\":\"\"}\n ${P.hasColorTexture?E`\n vec4 texColor = texture2D(tex, vuv0);\n ${P.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:E`vec4 texColor = vec4(1.0);`}\n shadingParams.viewDirection = normalize(vpos - camPos);\n ${3===P.normalType?E`\n vec3 normal = screenDerivativeNormal(localvpos);`:E`\n shadingParams.normalView = vNormalWorld;\n vec3 normal = shadingNormal(shadingParams);`}\n ${1===P.pbrMode?\"applyPBRFactors();\":\"\"}\n float ssao = evaluateAmbientOcclusionInverse();\n ssao *= getBakedOcclusion();\n\n float additionalAmbientScale = additionalDirectedAmbientLight(vpos + localOrigin);\n vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;\n ${P.receiveShadows?\"float shadow = readShadowMap(vpos, linearDepth);\":1===P.viewingMode?\"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);\":\"float shadow = 0.0;\"}\n vec3 matColor = max(ambient, diffuse);\n ${P.attributeColor?E`\n vec3 albedo_ = mixExternalColor(vColor.rgb * matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:E`\n vec3 albedo_ = mixExternalColor(matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n ${P.hasNormalTexture?E`\n mat3 tangentSpace = ${P.vertexTangents?\"computeTangentSpace(normal);\":\"computeTangentSpace(normal, vpos, vuv0);\"}\n vec3 shadedNormal = computeTextureNormal(tangentSpace, vuv0);`:\"vec3 shadedNormal = normal;\"}\n ${1===P.pbrMode||2===P.pbrMode?1===P.viewingMode?E`vec3 normalGround = normalize(vpos + localOrigin);`:E`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:E``}\n ${1===P.pbrMode||2===P.pbrMode?E`\n float additionalAmbientIrradiance = additionalAmbientIrradianceFactor * lightingMainIntensity[2];\n vec3 shadedColor = evaluateSceneLightingPBR(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight, shadingParams.viewDirection, normalGround, mrr, emission, additionalAmbientIrradiance);`:\"vec3 shadedColor = evaluateSceneLighting(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight);\"}\n gl_FragColor = highlightSlice(vec4(shadedColor, opacity_), vpos);\n ${P.OITEnabled?\"gl_FragColor = premultiplyAlpha(gl_FragColor);\":\"\"}\n }\n `)),_.include(m,P),_}var _=Object.freeze({__proto__:null,build:P});export{_ as D,P as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{c as t}from\"./mat3f64.js\";import{a as s}from\"./quatf64.js\";import{c as a,f as n}from\"./vec3f64.js\";import{E as o,R as r}from\"./common.js\";import{d as c,c as e,u,n as i}from\"./vec3.js\";import{c as h,s as M,a as f,b as l,d as m,l as p,e as q,f as d,n as j,g,h as v}from\"./vec4.js\";function x(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t}function A(t,s,a){a*=.5;const n=Math.sin(a);return t[0]=n*s[0],t[1]=n*s[1],t[2]=n*s[2],t[3]=Math.cos(a),t}function I(t,s){const a=2*Math.acos(s[3]),n=Math.sin(a/2);return n>o?(t[0]=s[0]/n,t[1]=s[1]/n,t[2]=s[2]/n):(t[0]=1,t[1]=0,t[2]=0),a}function P(t,s,a){const n=s[0],o=s[1],r=s[2],c=s[3],e=a[0],u=a[1],i=a[2],h=a[3];return t[0]=n*h+c*e+o*i-r*u,t[1]=o*h+c*u+r*e-n*i,t[2]=r*h+c*i+n*u-o*e,t[3]=c*h-n*e-o*u-r*i,t}function b(t,s,a){a*=.5;const n=s[0],o=s[1],r=s[2],c=s[3],e=Math.sin(a),u=Math.cos(a);return t[0]=n*u+c*e,t[1]=o*u+r*e,t[2]=r*u-o*e,t[3]=c*u-n*e,t}function y(t,s,a){a*=.5;const n=s[0],o=s[1],r=s[2],c=s[3],e=Math.sin(a),u=Math.cos(a);return t[0]=n*u-r*e,t[1]=o*u+c*e,t[2]=r*u+n*e,t[3]=c*u-o*e,t}function E(t,s,a){a*=.5;const n=s[0],o=s[1],r=s[2],c=s[3],e=Math.sin(a),u=Math.cos(a);return t[0]=n*u+o*e,t[1]=o*u-n*e,t[2]=r*u+c*e,t[3]=c*u-r*e,t}function _(t,s){const a=s[0],n=s[1],o=s[2];return t[0]=a,t[1]=n,t[2]=o,t[3]=Math.sqrt(Math.abs(1-a*a-n*n-o*o)),t}function z(t,s,a,n){const r=s[0],c=s[1],e=s[2],u=s[3];let i,h,M,f,l,m=a[0],p=a[1],q=a[2],d=a[3];return h=r*m+c*p+e*q+u*d,h<0&&(h=-h,m=-m,p=-p,q=-q,d=-d),1-h>o?(i=Math.acos(h),M=Math.sin(i),f=Math.sin((1-n)*i)/M,l=Math.sin(n*i)/M):(f=1-n,l=n),t[0]=f*r+l*m,t[1]=f*c+l*p,t[2]=f*e+l*q,t[3]=f*u+l*d,t}function L(t){const s=r(),a=r(),n=r(),o=Math.sqrt(1-s),c=Math.sqrt(s);return t[0]=o*Math.sin(2*Math.PI*a),t[1]=o*Math.cos(2*Math.PI*a),t[2]=c*Math.sin(2*Math.PI*n),t[3]=c*Math.cos(2*Math.PI*n),t}function k(t,s){const a=s[0],n=s[1],o=s[2],r=s[3],c=a*a+n*n+o*o+r*r,e=c?1/c:0;return t[0]=-a*e,t[1]=-n*e,t[2]=-o*e,t[3]=r*e,t}function w(t,s){return t[0]=-s[0],t[1]=-s[1],t[2]=-s[2],t[3]=s[3],t}function B(t,s){const a=s[0]+s[4]+s[8];let n;if(a>0)n=Math.sqrt(a+1),t[3]=.5*n,n=.5/n,t[0]=(s[5]-s[7])*n,t[1]=(s[6]-s[2])*n,t[2]=(s[1]-s[3])*n;else{let a=0;s[4]>s[0]&&(a=1),s[8]>s[3*a+a]&&(a=2);const o=(a+1)%3,r=(a+2)%3;n=Math.sqrt(s[3*a+a]-s[3*o+o]-s[3*r+r]+1),t[a]=.5*n,n=.5/n,t[3]=(s[3*o+r]-s[3*r+o])*n,t[o]=(s[3*o+a]+s[3*a+o])*n,t[r]=(s[3*r+a]+s[3*a+r])*n}return t}function C(t,s,a,n){const o=.5*Math.PI/180;s*=o,a*=o,n*=o;const r=Math.sin(s),c=Math.cos(s),e=Math.sin(a),u=Math.cos(a),i=Math.sin(n),h=Math.cos(n);return t[0]=r*u*h-c*e*i,t[1]=c*e*h+r*u*i,t[2]=c*u*i-r*e*h,t[3]=c*u*h+r*e*i,t}function D(t){return\"quat(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"}const F=h,G=M,O=f,R=P,T=l,W=m,X=p,Y=q,Z=Y,H=d,J=H,K=j,N=g,Q=v;function S(t,s,a){const n=c(s,a);return n<-.999999?(e(U,V,s),u(U)<1e-6&&e(U,$,s),i(U,U),A(t,U,Math.PI),t):n>.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(e(U,s,a),t[0]=U[0],t[1]=U[1],t[2]=U[2],t[3]=1+n,K(t,t))}const U=a(),V=n(1,0,0),$=n(0,1,0);function tt(t,s,a,n,o,r){return z(st,s,o,r),z(at,a,n,r),z(t,st,at,2*r*(1-r)),t}const st=s(),at=s();function nt(t,s,a,n){const o=ot;return o[0]=a[0],o[3]=a[1],o[6]=a[2],o[1]=n[0],o[4]=n[1],o[7]=n[2],o[2]=-s[0],o[5]=-s[1],o[8]=-s[2],K(t,B(t,o))}const ot=t();var rt=Object.freeze({__proto__:null,identity:x,setAxisAngle:A,getAxisAngle:I,multiply:P,rotateX:b,rotateY:y,rotateZ:E,calculateW:_,slerp:z,random:L,invert:k,conjugate:w,fromMat3:B,fromEuler:C,str:D,copy:F,set:G,add:O,mul:R,scale:T,dot:W,lerp:X,length:Y,len:Z,squaredLength:H,sqrLen:J,normalize:K,exactEquals:N,equals:Q,rotationTo:S,sqlerp:tt,setAxes:nt});export{X as A,Z as B,J as C,K as D,Q as E,tt as F,nt as G,F as a,b,w as c,y as d,E as e,W as f,I as g,H as h,k as i,N as j,C as k,Y as l,P as m,x as n,_ as o,z as p,rt as q,S as r,A as s,L as t,B as u,D as v,G as w,O as x,R as y,T as z};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{VertexTextureCoordinates as e}from\"../attributes/VertexTextureCoordinates.glsl.js\";import{glsl as t}from\"../../shaderModules/interfaces.js\";function n(n,a){const r=n.fragment;a.vertexTangents?(n.attributes.add(\"tangent\",\"vec4\"),n.varyings.add(\"vTangent\",\"vec4\"),2===a.doubleSidedMode?r.code.add(t`mat3 computeTangentSpace(vec3 normal) {\nfloat tangentHeadedness = gl_FrontFacing ? vTangent.w : -vTangent.w;\nvec3 tangent = normalize(gl_FrontFacing ? vTangent.xyz : -vTangent.xyz);\nvec3 bitangent = cross(normal, tangent) * tangentHeadedness;\nreturn mat3(tangent, bitangent, normal);\n}`):r.code.add(t`mat3 computeTangentSpace(vec3 normal) {\nfloat tangentHeadedness = vTangent.w;\nvec3 tangent = normalize(vTangent.xyz);\nvec3 bitangent = cross(normal, tangent) * tangentHeadedness;\nreturn mat3(tangent, bitangent, normal);\n}`)):(n.extensions.add(\"GL_OES_standard_derivatives\"),r.code.add(t`mat3 computeTangentSpace(vec3 normal, vec3 pos, vec2 st) {\nvec3 Q1 = dFdx(pos);\nvec3 Q2 = dFdy(pos);\nvec2 stx = dFdx(st);\nvec2 sty = dFdy(st);\nfloat det = stx.t * sty.s - sty.t * stx.s;\nvec3 T = stx.t * Q2 - sty.t * Q1;\nT = T - normal * dot(normal, T);\nT *= inversesqrt(max(dot(T,T), 1.e-10));\nvec3 B = sign(det) * cross(normal, T);\nreturn mat3(T, B, normal);\n}`)),0!==a.attributeTextureCoordinates&&(n.include(e,a),r.uniforms.add(\"normalTexture\",\"sampler2D\"),r.uniforms.add(\"normalTextureSize\",\"vec2\"),r.code.add(t`\n vec3 computeTextureNormal(mat3 tangentSpace, vec2 uv) {\n vtc.uv = uv;\n ${a.supportsTextureAtlas?\"vtc.size = normalTextureSize;\":\"\"}\n vec3 rawNormal = textureLookup(normalTexture, vtc).rgb * 2.0 - 1.0;\n return tangentSpace * rawNormal;\n }\n `))}export{n as ComputeNormalTexture};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{bindScreenSizePerspective as a}from\"../../../materials/internal/MaterialUtil.js\";function r(a){a.vertex.code.add(e`float screenSizePerspectiveMinSize(float size, vec4 factor) {\nfloat nonZeroSize = 1.0 - step(size, 0.0);\nreturn (\nfactor.z * (\n1.0 +\nnonZeroSize *\n2.0 * factor.w / (\nsize + (1.0 - nonZeroSize)\n)\n)\n);\n}`),a.vertex.code.add(e`float screenSizePerspectiveViewAngleDependentFactor(float absCosAngle) {\nreturn absCosAngle * absCosAngle * absCosAngle;\n}`),a.vertex.code.add(e`vec4 screenSizePerspectiveScaleFactor(float absCosAngle, float distanceToCamera, vec4 params) {\nreturn vec4(\nmin(params.x / (distanceToCamera - params.y), 1.0),\nscreenSizePerspectiveViewAngleDependentFactor(absCosAngle),\nparams.z,\nparams.w\n);\n}`),a.vertex.code.add(e`float applyScreenSizePerspectiveScaleFactorFloat(float size, vec4 factor) {\nreturn max(mix(size * factor.x, size, factor.y), screenSizePerspectiveMinSize(size, factor));\n}`),a.vertex.code.add(e`float screenSizePerspectiveScaleFloat(float size, float absCosAngle, float distanceToCamera, vec4 params) {\nreturn applyScreenSizePerspectiveScaleFactorFloat(\nsize,\nscreenSizePerspectiveScaleFactor(absCosAngle, distanceToCamera, params)\n);\n}`),a.vertex.code.add(e`vec2 applyScreenSizePerspectiveScaleFactorVec2(vec2 size, vec4 factor) {\nreturn mix(size * clamp(factor.x, screenSizePerspectiveMinSize(size.y, factor) / size.y, 1.0), size, factor.y);\n}`),a.vertex.code.add(e`vec2 screenSizePerspectiveScaleVec2(vec2 size, float absCosAngle, float distanceToCamera, vec4 params) {\nreturn applyScreenSizePerspectiveScaleFactorVec2(size, screenSizePerspectiveScaleFactor(absCosAngle, distanceToCamera, params));\n}`)}function c(e,r){if(r.screenSizePerspective){a(r.screenSizePerspective,e,\"screenSizePerspective\");const c=r.screenSizePerspectiveAlignment||r.screenSizePerspective;a(c,e,\"screenSizePerspectiveAlignment\")}}export{r as ScreenSizePerspective,c as bindScreenSizePerspectiveUniforms};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{ScreenSizePerspective as e}from\"../util/ScreenSizePerspective.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";function t(t,l){const c=t.vertex.code;l.verticalOffsetEnabled?(t.vertex.uniforms.add(\"verticalOffset\",\"vec4\"),l.screenSizePerspectiveEnabled&&(t.include(e),t.vertex.uniforms.add(\"screenSizePerspectiveAlignment\",\"vec4\")),c.add(r`\n vec3 calculateVerticalOffset(vec3 worldPos, vec3 localOrigin) {\n float viewDistance = length((view * vec4(worldPos, 1.0)).xyz);\n ${1===l.viewingMode?r`vec3 worldNormal = normalize(worldPos + localOrigin);`:r`vec3 worldNormal = vec3(0.0, 0.0, 1.0);`}\n ${l.screenSizePerspectiveEnabled?r`\n float cosAngle = dot(worldNormal, normalize(worldPos - camPos));\n float verticalOffsetScreenHeight = screenSizePerspectiveScaleFloat(verticalOffset.x, abs(cosAngle), viewDistance, screenSizePerspectiveAlignment);`:r`\n float verticalOffsetScreenHeight = verticalOffset.x;`}\n // Screen sized offset in world space, used for example for line callouts\n float worldOffset = clamp(verticalOffsetScreenHeight * verticalOffset.y * viewDistance, verticalOffset.z, verticalOffset.w);\n return worldNormal * worldOffset;\n }\n\n vec3 addVerticalOffset(vec3 worldPos, vec3 localOrigin) {\n return worldPos + calculateVerticalOffset(worldPos, localOrigin);\n }\n `)):c.add(r`vec3 addVerticalOffset(vec3 worldPos, vec3 localOrigin) { return worldPos; }`)}function l(e,r,t){if(!r.verticalOffset)return;const l=c(r.verticalOffset,t.camera.fovY,t.camera.fullViewport[3]),i=t.camera.pixelRatio||1;e.setUniform4f(\"verticalOffset\",l.screenLength*i,l.perDistance,l.minWorldLength,l.maxWorldLength)}function c(e,r,t,l=i){return l.screenLength=e.screenLength,l.perDistance=Math.tan(.5*r)/(.5*t),l.minWorldLength=e.minWorldLength,l.maxWorldLength=e.maxWorldLength,l}const i={screenLength:0,perDistance:0,minWorldLength:0,maxWorldLength:0};export{t as VerticalOffset,l as bindVerticalOffsetUniforms,c as calculateVerticalOffsetFactors};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../shaderModules/interfaces.js\";function e(e){e.vertex.code.add(o`vec4 offsetBackfacingClipPosition(vec4 posClip, vec3 posWorld, vec3 normalWorld, vec3 camPosWorld) {\nvec3 camToVert = posWorld - camPosWorld;\nbool isBackface = dot(camToVert, normalWorld) > 0.0;\nif (isBackface) {\nposClip.z += 0.0000003 * posClip.w;\n}\nreturn posClip;\n}`)}export{e as Offset};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../request.js\";async function t(t,r){const{data:a}=await e(t,{responseType:\"image\",...r});return a}export{t as requestImage};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as c}from\"../../shaderModules/interfaces.js\";function e(e){e.code.add(c`vec4 premultiplyAlpha(vec4 v) {\nreturn vec4(v.rgb * v.a, v.a);\n}\nvec3 rgb2hsv(vec3 c) {\nvec4 K = vec4(0.0, -1.0 / 3.0, 2.0 / 3.0, -1.0);\nvec4 p = c.g < c.b ? vec4(c.bg, K.wz) : vec4(c.gb, K.xy);\nvec4 q = c.r < p.x ? vec4(p.xyw, c.r) : vec4(c.r, p.yzx);\nfloat d = q.x - min(q.w, q.y);\nfloat e = 1.0e-10;\nreturn vec3(abs(q.z + (q.w - q.y) / (6.0 * d + e)), min(d / (q.x + e), 1.0), q.x);\n}\nvec3 hsv2rgb(vec3 c) {\nvec4 K = vec4(1.0, 2.0 / 3.0, 1.0 / 3.0, 3.0);\nvec3 p = abs(fract(c.xxx + K.xyz) * 6.0 - K.www);\nreturn c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);\n}\nfloat rgb2v(vec3 c) {\nreturn max(c.x, max(c.y, c.z));\n}`)}export{e as ColorConversion};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{ColorConversion as e}from\"./ColorConversion.glsl.js\";import{glsl as t}from\"../../shaderModules/interfaces.js\";function i(i){i.include(e),i.code.add(t`\n vec3 mixExternalColor(vec3 internalColor, vec3 textureColor, vec3 externalColor, int mode) {\n // workaround for artifacts in OSX using Intel Iris Pro\n // see: https://devtopia.esri.com/WebGIS/arcgis-js-api/issues/10475\n vec3 internalMixed = internalColor * textureColor;\n vec3 allMixed = internalMixed * externalColor;\n\n if (mode == ${t.int(1)}) {\n return allMixed;\n }\n else if (mode == ${t.int(2)}) {\n return internalMixed;\n }\n else if (mode == ${t.int(3)}) {\n return externalColor;\n }\n else {\n // tint (or something invalid)\n float vIn = rgb2v(internalMixed);\n vec3 hsvTint = rgb2hsv(externalColor);\n vec3 hsvOut = vec3(hsvTint.x, hsvTint.y, vIn * hsvTint.z);\n return hsv2rgb(hsvOut);\n }\n }\n\n float mixExternalOpacity(float internalOpacity, float textureOpacity, float externalOpacity, int mode) {\n // workaround for artifacts in OSX using Intel Iris Pro\n // see: https://devtopia.esri.com/WebGIS/arcgis-js-api/issues/10475\n float internalMixed = internalOpacity * textureOpacity;\n float allMixed = internalMixed * externalOpacity;\n\n if (mode == ${t.int(2)}) {\n return internalMixed;\n }\n else if (mode == ${t.int(3)}) {\n return externalOpacity;\n }\n else {\n // multiply or tint (or something invalid)\n return allMixed;\n }\n }\n `)}export{i as MixExternalColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"./BufferObject.js\";import t from\"./FramebufferObject.js\";import{Program as r}from\"./Program.js\";import i from\"./Texture.js\";import o from\"./VertexArrayObject.js\";async function n(n){const a=new Image;if(a.src=\"data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg width='5' height='5' version='1.1' viewBox='0 0 5 5' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='5' height='5' fill='%23f00' fill-opacity='.5'/%3E%3C/svg%3E%0A\",a.width=5,a.height=5,await a.decode(),!n.gl)return!0;const s=new t(n,{colorTarget:0,depthStencilTarget:0},{target:3553,wrapMode:33071,pixelFormat:6408,dataType:5121,samplingMode:9728,width:1,height:1}),p=e.createVertex(n,35044,new Uint16Array([0,0,1,0,0,1,1,1])),m=new o(n,new Map([[\"a_pos\",0]]),{geometry:[{name:\"a_pos\",count:2,type:5123,offset:0,stride:4,normalized:!1}]},{geometry:p}),d=new r(n,\"\\n precision highp float;\\n\\n attribute vec2 a_pos;\\n varying vec2 v_uv;\\n\\n void main() {\\n v_uv = a_pos;\\n gl_Position = vec4(a_pos * 2.0 - 1.0, 0.0, 1.0);\\n }\\n \",\"\\n precision highp float;\\n\\n varying vec2 v_uv;\\n uniform sampler2D u_texture;\\n\\n void main() {\\n gl_FragColor = texture2D(u_texture, v_uv);\\n }\\n \",new Map([[\"a_pos\",0]]));n.useProgram(d);const g=new i(n,{dataType:5121,pixelFormat:6408,preMultiplyAlpha:!1,wrapMode:33071,samplingMode:9729},a);n.bindTexture(g,0),d.setUniform1i(\"u_texture\",0);const c=n.getBoundFramebufferObject(),{x:u,y:f,width:w,height:l}=n.getViewport();n.bindFramebuffer(s),n.setViewport(0,0,1,1),n.bindVAO(m),n.drawArrays(5,0,4);const v=new Uint8Array(4);return s.readPixels(0,0,1,1,6408,5121,v),d.dispose(),m.dispose(!1),p.dispose(),s.dispose(),g.dispose(),n.setViewport(u,f,w,l),n.bindFramebuffer(c),a.src=\"\",255===v[0]}export{n as testSVGPremultipliedAlpha};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction t(t,...n){let o=\"\";for(let r=0;r0){const e=1/i;r[t]=e*f,r[t+1]=e*s,r[t+2]=e*c}}}function n(t,e,f){const r=Math.min(t.count,e.count),o=t.typedBuffer,n=t.typedBufferStride,u=e.typedBuffer,d=e.typedBufferStride;for(let s=0;s>f,o[t+1]=u[e+1]>>f,o[t+2]=u[e+2]>>f}}var u=Object.freeze({__proto__:null,transformMat4:e,transformMat3:f,scale:r,normalize:o,shiftRight:n});export{f as a,n as b,o as n,r as s,e as t,u as v};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../core/Logger.js\";const t=e.getLogger(\"esri.views.3d.webgl-engine.core.shaderModules.shaderBuilder\");class r{constructor(){this.includedModules=new Map}include(e,r){this.includedModules.has(e)?this.includedModules.get(e)!==r&&t.error(\"Trying to include shader module multiple times with different sets of options.\"):(this.includedModules.set(e,r),e(this.builder,r))}}class n extends r{constructor(){super(...arguments),this.vertex=new o,this.fragment=new o,this.attributes=new a,this.varyings=new c,this.extensions=new u,this.constants=new h}get fragmentUniforms(){return this.fragment.uniforms}get builder(){return this}generateSource(e){const t=this.extensions.generateSource(e),r=this.attributes.generateSource(e),n=this.varyings.generateSource(),s=\"vertex\"===e?this.vertex:this.fragment,i=s.uniforms.generateSource(),o=s.code.generateSource(),a=\"vertex\"===e?l:m,c=this.constants.generateSource().concat(s.constants.generateSource());return`\\n${t.join(\"\\n\")}\\n\\n${a}\\n\\n${c.join(\"\\n\")}\\n\\n${i.join(\"\\n\")}\\n\\n${r.join(\"\\n\")}\\n\\n${n.join(\"\\n\")}\\n\\n${o.join(\"\\n\")}`}}class s{constructor(){this._entries=new Map}add(e,t,r){const n=`${e}_${t}_${r}`;return this._entries.set(n,{name:e,type:t,arraySize:r}),this}generateSource(){const e=e=>e?`[${e}]`:\"\";return Array.from(this._entries.values()).map((t=>`uniform ${t.type} ${t.name}${e(t.arraySize)};`))}get entries(){return Array.from(this._entries.values())}}class i{constructor(){this._entries=new Array}add(e){this._entries.push(e)}generateSource(){return this._entries}}class o extends r{constructor(){super(...arguments),this.uniforms=new s,this.code=new i,this.constants=new h}get builder(){return this}}class a{constructor(){this._entries=new Array}add(e,t){this._entries.push([e,t])}generateSource(e){return\"fragment\"===e?[]:this._entries.map((e=>`attribute ${e[1]} ${e[0]};`))}}class c{constructor(){this._entries=new Array}add(e,t){this._entries.push([e,t])}generateSource(){return this._entries.map((e=>`varying ${e[1]} ${e[0]};`))}}class u{constructor(){this._entries=new Set}add(e){this._entries.add(e)}generateSource(e){const t=\"vertex\"===e?u.ALLOWLIST_VERTEX:u.ALLOWLIST_FRAGMENT;return Array.from(this._entries).filter((e=>t.includes(e))).map((e=>`#extension ${e} : enable`))}}u.ALLOWLIST_FRAGMENT=[\"GL_EXT_shader_texture_lod\",\"GL_OES_standard_derivatives\"],u.ALLOWLIST_VERTEX=[];class h{constructor(){this._entries=[]}add(e,t,r){let n=\"ERROR_CONSTRUCTOR_STRING\";switch(t){case\"float\":n=h.numberToFloatStr(r);break;case\"int\":n=h.numberToIntStr(r);break;case\"bool\":n=r.toString();break;case\"vec2\":n=`vec2(${h.numberToFloatStr(r[0])}, ${h.numberToFloatStr(r[1])})`;break;case\"vec3\":n=`vec3(${h.numberToFloatStr(r[0])}, ${h.numberToFloatStr(r[1])}, ${h.numberToFloatStr(r[2])})`;break;case\"vec4\":n=`vec4(${h.numberToFloatStr(r[0])}, ${h.numberToFloatStr(r[1])}, ${h.numberToFloatStr(r[2])}, ${h.numberToFloatStr(r[3])})`;break;case\"ivec2\":n=`ivec2(${h.numberToIntStr(r[0])}, ${h.numberToIntStr(r[1])})`;break;case\"ivec3\":n=`ivec3(${h.numberToIntStr(r[0])}, ${h.numberToIntStr(r[1])}, ${h.numberToIntStr(r[2])})`;break;case\"ivec4\":n=`ivec4(${h.numberToIntStr(r[0])}, ${h.numberToIntStr(r[1])}, ${h.numberToIntStr(r[2])}, ${h.numberToIntStr(r[3])})`;break;case\"mat2\":case\"mat3\":case\"mat4\":n=`${t}(${Array.prototype.map.call(r,(e=>h.numberToFloatStr(e))).join(\", \")})`}return this._entries.push(`const ${t} ${e} = ${n};`),this}static numberToIntStr(e){return e.toFixed(0)}static numberToFloatStr(e){return Number.isInteger(e)?e.toFixed(1):e.toString()}generateSource(){return Array.from(this._entries)}}const m=\"#ifdef GL_FRAGMENT_PRECISION_HIGH\\n precision highp float;\\n precision highp sampler2D;\\n#else\\n precision mediump float;\\n precision mediump sampler2D;\\n#endif\",l=\"precision highp float;\\nprecision highp sampler2D;\";export{i as Code,r as Includes,n as ShaderBuilder,o as Stage};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{f as e}from\"../../../../../../chunks/vec4f64.js\";import{glsl as i}from\"../../shaderModules/interfaces.js\";const t=e(1,1,0,1),o=e(1,0,1,1);function r(e){e.fragment.uniforms.add(\"depthTex\",\"sampler2D\"),e.fragment.uniforms.add(\"highlightViewportPixelSz\",\"vec4\"),e.fragment.constants.add(\"occludedHighlightFlag\",\"vec4\",t).add(\"unoccludedHighlightFlag\",\"vec4\",o),e.fragment.code.add(i`void outputHighlight() {\nvec4 fragCoord = gl_FragCoord;\nfloat sceneDepth = texture2D(depthTex, (fragCoord.xy - highlightViewportPixelSz.xy) * highlightViewportPixelSz.zw).r;\nif (fragCoord.z > sceneDepth + 5e-7) {\ngl_FragColor = occludedHighlightFlag;\n}\nelse {\ngl_FragColor = unoccludedHighlightFlag;\n}\n}`)}function g(e,i){e.bindTexture(i.highlightDepthTexture,\"depthTex\"),e.setUniform4f(\"highlightViewportPixelSz\",0,0,i.inverseViewport[0],i.inverseViewport[1])}export{r as OutputHighlight,g as bindOutputHighlight,t as occludedHighlightFlag,o as unoccludedHighlightFlag};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as e,isSome as n}from\"../../../../core/maybe.js\";import{f as t}from\"../../../../chunks/vec3f64.js\";import o from\"../../../webgl/BufferObject.js\";import i from\"../../../webgl/FramebufferObject.js\";import{Program as r}from\"../../../webgl/Program.js\";import\"../../../webgl/enums.js\";import\"../../../webgl/RenderingContext.js\";import\"../../../webgl/Texture.js\";import s from\"../../../webgl/VertexArrayObject.js\";import{encodeDoubleArray as c}from\"./doublePrecisionUtils.js\";import{unpackFloatRGBA as a}from\"./Util.js\";import{testSVGPremultipliedAlpha as l}from\"../../../webgl/testSVGPremultipliedAlpha.js\";class u{constructor(e){this.context=e,this.svgAlwaysPremultipliesAlpha=!1,this._doublePrecisionRequiresObfuscation=null,l(e).then((e=>this.svgAlwaysPremultipliesAlpha=!e))}get doublePrecisionRequiresObfuscation(){if(e(this._doublePrecisionRequiresObfuscation)){const e=h(this.context,!1),n=h(this.context,!0);this._doublePrecisionRequiresObfuscation=0!==e&&(0===n||e/n>5)}return this._doublePrecisionRequiresObfuscation}}let p=null;function f(n){return(e(p)||p.context!==n)&&(p=new u(n)),p}function v(e){n(p)&&p.context===e&&(p=null)}function h(e,n){const l=new i(e,{colorTarget:0,depthStencilTarget:0},{target:3553,wrapMode:33071,pixelFormat:6408,dataType:5121,samplingMode:9728,width:1,height:1});function u(t,o){const i=new r(e,`\\n\\n precision highp float;\\n\\n attribute vec2 position;\\n\\n uniform vec3 u_highA;\\n uniform vec3 u_lowA;\\n uniform vec3 u_highB;\\n uniform vec3 u_lowB;\\n\\n varying vec4 v_color;\\n\\n ${n?\"#define DOUBLE_PRECISION_REQUIRES_OBFUSCATION\":\"\"}\\n\\n #ifdef DOUBLE_PRECISION_REQUIRES_OBFUSCATION\\n\\n vec3 dpPlusFrc(vec3 a, vec3 b) {\\n return mix(a, a + b, vec3(notEqual(b, vec3(0))));\\n }\\n\\n vec3 dpMinusFrc(vec3 a, vec3 b) {\\n return mix(vec3(0), a - b, vec3(notEqual(a, b)));\\n }\\n\\n vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\\n vec3 t1 = dpPlusFrc(hiA, hiB);\\n vec3 e = dpMinusFrc(t1, hiA);\\n vec3 t2 = dpMinusFrc(hiB, e) + dpMinusFrc(hiA, dpMinusFrc(t1, e)) + loA + loB;\\n return t1 + t2;\\n }\\n\\n #else\\n\\n vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\\n vec3 t1 = hiA + hiB;\\n vec3 e = t1 - hiA;\\n vec3 t2 = ((hiB - e) + (hiA - (t1 - e))) + loA + loB;\\n return t1 + t2;\\n }\\n\\n #endif\\n\\n const float MAX_RGBA_FLOAT =\\n 255.0 / 256.0 +\\n 255.0 / 256.0 / 256.0 +\\n 255.0 / 256.0 / 256.0 / 256.0 +\\n 255.0 / 256.0 / 256.0 / 256.0 / 256.0;\\n\\n const vec4 FIXED_POINT_FACTORS = vec4(1.0, 256.0, 256.0 * 256.0, 256.0 * 256.0 * 256.0);\\n\\n vec4 float2rgba(const float value) {\\n // Make sure value is in the domain we can represent\\n float valueInValidDomain = clamp(value, 0.0, MAX_RGBA_FLOAT);\\n\\n // Decompose value in 32bit fixed point parts represented as\\n // uint8 rgba components. Decomposition uses the fractional part after multiplying\\n // by a power of 256 (this removes the bits that are represented in the previous\\n // component) and then converts the fractional part to 8bits.\\n vec4 fixedPointU8 = floor(fract(valueInValidDomain * FIXED_POINT_FACTORS) * 256.0);\\n\\n // Convert uint8 values (from 0 to 255) to floating point representation for\\n // the shader\\n const float toU8AsFloat = 1.0 / 255.0;\\n\\n return fixedPointU8 * toU8AsFloat;\\n }\\n\\n void main() {\\n vec3 val = dpAdd(u_highA, u_lowA, -u_highB, -u_lowB);\\n\\n v_color = float2rgba(val.z / 25.0);\\n\\n gl_Position = vec4(position * 2.0 - 1.0, 0.0, 1.0);\\n }\\n `,\"\\n precision highp float;\\n\\n varying vec4 v_color;\\n\\n void main() {\\n gl_FragColor = v_color;\\n }\\n \",new Map([[\"position\",0]])),s=new Float32Array(6);c(t,s,3);const a=new Float32Array(6);return c(o,a,3),e.useProgram(i),i.setUniform3f(\"u_highA\",s[0],s[2],s[4]),i.setUniform3f(\"u_lowA\",s[1],s[3],s[5]),i.setUniform3f(\"u_highB\",a[0],a[2],a[4]),i.setUniform3f(\"u_lowB\",a[1],a[3],a[5]),i}const p=o.createVertex(e,35044,new Uint16Array([0,0,1,0,0,1,1,1])),f=new s(e,new Map([[\"position\",0]]),{geometry:[{name:\"position\",count:2,type:5123,offset:0,stride:4,normalized:!1}]},{geometry:p}),v=t(5633261.287538229,2626832.878767164,1434988.0495278358),h=t(5633271.46742708,2626873.6381334523,1434963.231608387),m=u(v,h),d=e.getBoundFramebufferObject(),{x:b,y:A,width:g,height:_}=e.getViewport();e.bindFramebuffer(l),e.setViewport(0,0,1,1),e.bindVAO(f),e.drawArrays(5,0,4);const w=new Uint8Array(4);l.readPixels(0,0,1,1,6408,5121,w),m.dispose(),f.dispose(!1),p.dispose(),l.dispose(),e.setViewport(b,A,g,_),e.bindFramebuffer(d);const F=(v[2]-h[2])/25,B=a(w);return Math.abs(F-B)}export{v as clearTestWebGLDriver,f as testWebGLDriver};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../../core/has.js\";import{glsl as c}from\"../../shaderModules/interfaces.js\";import{testWebGLDriver as i}from\"../../../lib/WebGLDriverTest.js\";function r({code:e},i){i.doublePrecisionRequiresObfuscation?e.add(c`vec3 dpPlusFrc(vec3 a, vec3 b) {\nreturn mix(a, a + b, vec3(notEqual(b, vec3(0))));\n}\nvec3 dpMinusFrc(vec3 a, vec3 b) {\nreturn mix(vec3(0), a - b, vec3(notEqual(a, b)));\n}\nvec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\nvec3 t1 = dpPlusFrc(hiA, hiB);\nvec3 e = dpMinusFrc(t1, hiA);\nvec3 t2 = dpMinusFrc(hiB, e) + dpMinusFrc(hiA, dpMinusFrc(t1, e)) + loA + loB;\nreturn t1 + t2;\n}`):e.add(c`vec3 dpAdd(vec3 hiA, vec3 loA, vec3 hiB, vec3 loB) {\nvec3 t1 = hiA + hiB;\nvec3 e = t1 - hiA;\nvec3 t2 = ((hiB - e) + (hiA - (t1 - e))) + loA + loB;\nreturn t1 + t2;\n}`)}function o(c){return!!e(\"force-double-precision-obfuscation\")||i(c).doublePrecisionRequiresObfuscation}export{r as DoublePrecision,o as doublePrecisionRequiresObfuscation};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../../../core/shaderModules/interfaces.js\";function l(l){l.vertex.code.add(o`\n vec4 decodeSymbolColor(vec4 symbolColor, out int colorMixMode) {\n float symbolAlpha = 0.0;\n\n const float maxTint = 85.0;\n const float maxReplace = 170.0;\n const float scaleAlpha = 3.0;\n\n if (symbolColor.a > maxReplace) {\n colorMixMode = ${o.int(1)};\n symbolAlpha = scaleAlpha * (symbolColor.a - maxReplace);\n } else if (symbolColor.a > maxTint) {\n colorMixMode = ${o.int(3)};\n symbolAlpha = scaleAlpha * (symbolColor.a - maxTint);\n } else if (symbolColor.a > 0.0) {\n colorMixMode = ${o.int(4)};\n symbolAlpha = scaleAlpha * symbolColor.a;\n } else {\n colorMixMode = ${o.int(1)};\n symbolAlpha = 0.0;\n }\n\n return vec4(symbolColor.r, symbolColor.g, symbolColor.b, symbolAlpha);\n }\n `)}export{l as DecodeSymbolColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{DecodeSymbolColor as o}from\"../../../collections/Component/Material/shader/DecodeSymbolColor.glsl.js\";import{glsl as e}from\"../../shaderModules/interfaces.js\";function r(r,l){l.symbolColor?(r.include(o),r.attributes.add(\"symbolColor\",\"vec4\"),r.varyings.add(\"colorMixMode\",\"mediump float\")):r.fragment.uniforms.add(\"colorMixMode\",\"int\"),l.symbolColor?r.vertex.code.add(e`int symbolColorMixMode;\nvec4 getSymbolColor() {\nreturn decodeSymbolColor(symbolColor, symbolColorMixMode) * 0.003921568627451;\n}\nvoid forwardColorMixMode() {\ncolorMixMode = float(symbolColorMixMode) + 0.5;\n}`):r.vertex.code.add(e`vec4 getSymbolColor() { return vec4(1.0); }\nvoid forwardColorMixMode() {}`)}export{r as SymbolColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";function r(r,e){e.attributeColor?(r.attributes.add(\"color\",\"vec4\"),r.varyings.add(\"vColor\",\"vec4\"),r.vertex.code.add(o`void forwardVertexColor() { vColor = color; }`),r.vertex.code.add(o`void forwardNormalizedVertexColor() { vColor = color * 0.003921568627451; }`)):r.vertex.code.add(o`void forwardVertexColor() {}\nvoid forwardNormalizedVertexColor() {}`)}export{r as VertexColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function o(o,t){const r=o.fragment;t.receiveAmbientOcclusion?(r.uniforms.add(\"ssaoTex\",\"sampler2D\"),r.uniforms.add(\"viewportPixelSz\",\"vec4\"),r.code.add(e`float evaluateAmbientOcclusion() {\nreturn 1.0 - texture2D(ssaoTex, (gl_FragCoord.xy - viewportPixelSz.xy) * viewportPixelSz.zw).a;\n}\nfloat evaluateAmbientOcclusionInverse() {\nfloat ssao = texture2D(ssaoTex, (gl_FragCoord.xy - viewportPixelSz.xy) * viewportPixelSz.zw).a;\nreturn viewportPixelSz.z < 0.0 ? 1.0 : ssao;\n}`)):r.code.add(e`float evaluateAmbientOcclusion() { return 0.0; }\nfloat evaluateAmbientOcclusionInverse() { return 1.0; }`)}export{o as EvaluateAmbientOcclusion};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{lerp as e,deg2rad as t,clamp as a}from\"../../../../core/mathUtils.js\";function i(e,t){return new p(e,h,t)}function r(e,t){const{curvatureDependent:a,scaleStart:i,scaleFallOffRange:r}=h;return new p(e,{curvatureDependent:{min:{curvature:a.min.curvature,tiltAngle:a.min.tiltAngle,scaleFallOffFactor:v.curvatureDependent.min.scaleFallOffFactor},max:{curvature:a.max.curvature,tiltAngle:a.max.tiltAngle,scaleFallOffFactor:v.curvatureDependent.max.scaleFallOffFactor}},scaleStart:i,scaleFallOffRange:r,minPixelSize:v.minPixelSize},t)}function n(e){return Math.abs(e*e*e)}function l(e,t,a){const i=a.parameters,r=a.paddingPixelsOverride;return x.scale=Math.min(i.divisor/(t-i.offset),1),x.factor=n(e),x.minPixelSize=i.minPixelSize,x.paddingPixels=r,x}function s(e,t){return 0===e?t.minPixelSize:t.minPixelSize*(1+2*t.paddingPixels/e)}function c(t,a){return Math.max(e(t*a.scale,t,a.factor),s(t,a))}function o(t,a,i=[0,0]){const r=Math.min(Math.max(a.scale,s(t[1],a)/t[1]),1);return i[0]=e(t[0]*r,t[0],a.factor),i[1]=e(t[1]*r,t[1],a.factor),i}function u(e,t,a){const i=l(e,t,a);return i.minPixelSize=0,i.paddingPixels=0,c(1,i)}function d(e,t,a,i){i.scale=u(e,t,a),i.factor=0,i.minPixelSize=a.parameters.minPixelSize,i.paddingPixels=a.paddingPixelsOverride}function f(e,t,a=[0,0]){const i=Math.min(Math.max(t.scale,s(e[1],t)/e[1]),1);return a[0]=e[0]*i,a[1]=e[1]*i,a}function m(e,t,a,i){return c(e,l(t,a,i))}class p{constructor(e,t,a,i=g(),r){this.viewingMode=e,this.description=t,this.ellipsoidRadius=a,this.parameters=i,this._paddingPixelsOverride=r,2===this.viewingMode?(this.coverageCompensation=this.surfaceCoverageCompensationLocal,this.calculateCurvatureDependentParameters=this.calculateCurvatureDependentParametersLocal):(this.coverageCompensation=this.surfaceCoverageCompensationGlobal,this.calculateCurvatureDependentParameters=this.calculateCurvatureDependentParametersGlobal)}get paddingPixelsOverride(){return this._paddingPixelsOverride||this.parameters.paddingPixels}update(e){return(!this.parameters||this.parameters.camera.fovY!==e.fovY||this.parameters.camera.distance!==e.distance)&&(this.calculateParameters(e,this.ellipsoidRadius,this.parameters),!0)}overridePadding(e){return e!==this.paddingPixelsOverride?new p(this.viewingMode,this.description,this.ellipsoidRadius,this.parameters,e):this}calculateParameters(e,t,a){const{scaleStart:i,scaleFallOffRange:r,minPixelSize:n}=this.description,{fovY:l,distance:s}=e,c=this.calculateCurvatureDependentParameters(e,t),o=this.coverageCompensation(e,t,c),{tiltAngle:u,scaleFallOffFactor:d}=c,f=Math.sin(u)*s,m=.5*Math.PI-u-l*(.5-i*o),p=f/Math.cos(m),h=m+l*r*o,v=(p-d*(f/Math.cos(h)))/(1-d);return a.camera.fovY=e.fovY,a.camera.distance=e.distance,a.offset=v,a.divisor=p-v,a.minPixelSize=n,a}calculateCurvatureDependentParametersLocal(e,t,a=P){return a.tiltAngle=this.description.curvatureDependent.min.tiltAngle,a.scaleFallOffFactor=this.description.curvatureDependent.min.scaleFallOffFactor,a}calculateCurvatureDependentParametersGlobal(t,i,r=P){const n=this.description.curvatureDependent,l=1+t.distance/i,s=Math.sqrt(l*l-1),[c,o]=[n.min.curvature,n.max.curvature],u=a((s-c)/(o-c),0,1),[d,f]=[n.min,n.max];return r.tiltAngle=e(d.tiltAngle,f.tiltAngle,u),r.scaleFallOffFactor=e(d.scaleFallOffFactor,f.scaleFallOffFactor,u),r}surfaceCoverageCompensationLocal(e,t,a){return(e.fovY-a.tiltAngle)/e.fovY}surfaceCoverageCompensationGlobal(e,t,a){const i=t*t,r=a.tiltAngle+.5*Math.PI,{fovY:n,distance:l}=e,s=l*l+i-2*Math.cos(r)*l*t,c=Math.sqrt(s),o=Math.sqrt(s-i);return(Math.acos(o/c)-Math.asin(t/(c/Math.sin(r)))+.5*n)/n}}const h={curvatureDependent:{min:{curvature:t(10),tiltAngle:t(12),scaleFallOffFactor:.5},max:{curvature:t(70),tiltAngle:t(40),scaleFallOffFactor:.8}},scaleStart:.3,scaleFallOffRange:.65,minPixelSize:0},v={curvatureDependent:{min:{scaleFallOffFactor:.7},max:{scaleFallOffFactor:.95}},minPixelSize:14};function g(){return{camera:{distance:0,fovY:0},divisor:0,offset:0,minPixelSize:0,paddingPixels:0}}const x={scale:0,factor:0,minPixelSize:0,paddingPixels:0},P={tiltAngle:0,scaleFallOffFactor:0};export{f as applyPrecomputedScaleFactor,c as applyScaleFactor,o as applyScaleFactorVec2,r as getLabelSettings,i as getSettings,d as precomputeScaleFactor,m as scale};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as e,isSome as t}from\"../../../../../core/maybe.js\";import{m as r,d as s,a as n,e as i}from\"../../../../../chunks/mat4.js\";import{c as a}from\"../../../../../chunks/mat4f64.js\";import{encodeDoubleArray as o}from\"../../lib/doublePrecisionUtils.js\";import{setMatrixTranslation3 as c}from\"../../lib/Util.js\";function u(t,r){return e(t)&&(t=[]),t.push(r),t}function l(t,r){if(e(t))return t;const s=t.filter((e=>e!==r));return 0===s.length?null:s}function f(e){return!!t(e)&&!e.visible}function m(e,t){const r=new Map;return r.set(0,t.acquire(e,0)),r.set(1,t.acquire(e,7)),r.set(4,t.acquire(e,3)),r.set(3,t.acquire(e,2)),r.set(2,t.acquire(e,1)),r.set(5,t.acquire(e,4)),r.set(7,t.acquire(e,3)),r.set(6,t.acquire(e,3)),r}function p(e,t){t.release(e,0),t.release(e,7),t.release(e,3),t.release(e,2),t.release(e,1),t.release(e,4)}function q(e,a,o){const u=e.origin.vec3;c(h,-u[0],-u[1],-u[2]),t(e.transformation)?r(a,h,e.transformation):s(a,h),o&&(n(o,a),i(o,o))}function b(e,t,r,s,n){g[0]=e.get(t,0),g[1]=e.get(t,1),g[2]=e.get(t,2),o(g,j,3),r.set(n,0,j[0]),s.set(n,0,j[1]),r.set(n,1,j[2]),s.set(n,1,j[3]),r.set(n,2,j[4]),s.set(n,2,j[5])}const g=new Float64Array(3),j=new Float32Array(6),h=a();export{m as acquireMaterials,u as addObject3DStateID,q as calculateTransformRelativeToOrigin,b as encodeDoubleVec3,f as isInstanceHidden,p as releaseMaterials,l as removeObject3DStateID};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{clamp as t}from\"../../../../../core/mathUtils.js\";import{isNone as n,isSome as e}from\"../../../../../core/maybe.js\";import{s as i,c as o,n as r}from\"../../../../../chunks/vec3.js\";import{c as s}from\"../../../../../chunks/vec3f64.js\";import{create as c,setMin as f,setMax as a}from\"../../../../../geometry/support/aaBoundingBox.js\";import{scale as l}from\"../../lib/screenSizePerspectiveUtils.js\";import{assert as u}from\"../../lib/Util.js\";import{isInstanceHidden as m}from\"../renderers/utils.js\";const p=c();function h(t,n,e,i,o,r,s){if(!m(n))if(t.boundingInfo){u(0===t.primitiveType);const n=e.tolerance;g(t.boundingInfo,i,o,n,r,s)}else{const n=t.indices.get(\"position\"),e=t.vertexAttributes.get(\"position\");M(i,o,0,n.length/3,n,e,void 0,r,s)}}const d=s();function g(t,i,o,r,s,c){if(n(t))return;const l=j(i,o,d);if(f(p,t.getBBMin()),a(p,t.getBBMax()),e(s)&&s.applyToAabb(p),A(p,i,l,r)){const{primitiveIndices:n,indices:e,position:f}=t,a=n?n.length:e.length/3;if(a>U){const n=t.getChildren();if(void 0!==n){for(let t=0;t<8;++t)void 0!==n[t]&&g(n[t],i,o,r,s,c);return}}M(i,o,0,a,e,f,n,s,c)}}const x=s();function M(t,n,i,o,r,s,c,f,a){if(c)return b(t,n,i,o,r,s,c,f,a);const l=s.data,u=s.stride||s.size,m=t[0],p=t[1],h=t[2],d=n[0]-m,g=n[1]-p,M=n[2]-h;for(let b=i,v=3*i;b0){if(C<0||C>W)continue}else if(C>0||C0){if(_<0||C+_>W)continue}else if(_>0||C+_=0){a(q,T(V,B,z,E,I,N,x),b)}}}function b(t,n,i,o,r,s,c,f,a){const l=s.data,u=s.stride||s.size,m=t[0],p=t[1],h=t[2],d=n[0]-m,g=n[1]-p,M=n[2]-h;for(let b=i;b0){if(X<0||X>k)continue}else if(X>0||X0){if(w<0||X+w>k)continue}else if(w>0||X+w=0){a(D,T(z,E,I,N,P,U,x),t)}}}const v=s(),y=s();function T(t,n,e,s,c,f,a){return i(v,t,n,e),i(y,s,c,f),o(a,v,y),r(a,a),a}function j(t,n,e){return i(e,1/(n[0]-t[0]),1/(n[1]-t[1]),1/(n[2]-t[2]))}function A(t,n,e,i){return L(t,n,e,i,1/0)}function L(t,n,e,i,o){const r=(t[0]-i-n[0])*e[0],s=(t[3]+i-n[0])*e[0];let c=Math.min(r,s),f=Math.max(r,s);const a=(t[1]-i-n[1])*e[1],l=(t[4]+i-n[1])*e[1];if(f=Math.min(f,Math.max(a,l)),f<0)return!1;if(c=Math.max(c,Math.min(a,l)),c>f)return!1;const u=(t[2]-i-n[2])*e[2],m=(t[5]+i-n[2])*e[2];return f=Math.min(f,Math.max(u,m)),!(f<0)&&(c=Math.max(c,Math.min(u,m)),!(c>f)&&cn.push(t))),n}const P={multiply:1,ignore:2,replace:3,tint:4},U=1e3;export{B as bindScreenSizePerspective,P as colorMixModes,j as computeInvDir,T as computeNormal,z as copyParameters,A as intersectAabbInvDir,L as intersectAabbInvDirBefore,I as intersectDrapedRenderLineGeometry,h as intersectTriangleGeometry,M as intersectTriangles,E as updateParameters,V as verticalOffsetAtDistance};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function t(t){t.extensions.add(\"GL_EXT_shader_texture_lod\"),t.extensions.add(\"GL_OES_standard_derivatives\"),t.fragment.code.add(e`#ifndef GL_EXT_shader_texture_lod\nfloat calcMipMapLevel(const vec2 ddx, const vec2 ddy) {\nfloat deltaMaxSqr = max(dot(ddx, ddx), dot(ddy, ddy));\nreturn max(0.0, 0.5 * log2(deltaMaxSqr));\n}\n#endif\nvec4 textureAtlasLookup(sampler2D texture, vec2 textureSize, vec2 textureCoordinates, vec4 atlasRegion) {\nvec2 atlasScale = atlasRegion.zw - atlasRegion.xy;\nvec2 uvAtlas = fract(textureCoordinates) * atlasScale + atlasRegion.xy;\nfloat maxdUV = 0.125;\nvec2 dUVdx = clamp(dFdx(textureCoordinates), -maxdUV, maxdUV) * atlasScale;\nvec2 dUVdy = clamp(dFdy(textureCoordinates), -maxdUV, maxdUV) * atlasScale;\n#ifdef GL_EXT_shader_texture_lod\nreturn texture2DGradEXT(texture, uvAtlas, dUVdx, dUVdy);\n#else\nvec2 dUVdxAuto = dFdx(uvAtlas);\nvec2 dUVdyAuto = dFdy(uvAtlas);\nfloat mipMapLevel = calcMipMapLevel(dUVdx * textureSize, dUVdy * textureSize);\nfloat autoMipMapLevel = calcMipMapLevel(dUVdxAuto * textureSize, dUVdyAuto * textureSize);\nreturn texture2D(texture, uvAtlas, mipMapLevel - autoMipMapLevel);\n#endif\n}`)}export{t as TextureAtlasLookup};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{TextureCoordinateAttribute as e}from\"./TextureCoordinateAttribute.glsl.js\";import{TextureAtlasLookup as t}from\"../util/TextureAtlasLookup.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";function u(u,a){u.include(e,a),u.fragment.code.add(r`\n struct TextureLookupParameter {\n vec2 uv;\n ${a.supportsTextureAtlas?\"vec2 size;\":\"\"}\n } vtc;\n `),1===a.attributeTextureCoordinates&&u.fragment.code.add(r`vec4 textureLookup(sampler2D tex, TextureLookupParameter params) {\nreturn texture2D(tex, params.uv);\n}`),2===a.attributeTextureCoordinates&&(u.include(t),u.fragment.code.add(r`vec4 textureLookup(sampler2D tex, TextureLookupParameter params) {\nreturn textureAtlasLookup(tex, params.size, params.uv, vuvRegion);\n}`))}export{u as VertexTextureCoordinates};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{c as o}from\"../../../../../../chunks/mat3f64.js\";import{c as r}from\"../../../../../../chunks/mat4f64.js\";import{c as e}from\"../../../../../../chunks/vec3f64.js\";import{PositionAttribute as i}from\"./PositionAttribute.glsl.js\";import{DoublePrecision as m}from\"../util/DoublePrecision.glsl.js\";import{glsl as a}from\"../../shaderModules/interfaces.js\";function d(o,r){o.include(i),o.vertex.include(m,r),o.varyings.add(\"vPositionWorldCameraRelative\",\"vec3\"),o.varyings.add(\"vPosition_view\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromModel_RS\",\"mat3\"),o.vertex.uniforms.add(\"uTransform_WorldFromModel_TH\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromModel_TL\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromView_TH\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_WorldFromView_TL\",\"vec3\"),o.vertex.uniforms.add(\"uTransform_ViewFromCameraRelative_RS\",\"mat3\"),o.vertex.uniforms.add(\"uTransform_ProjFromView\",\"mat4\"),o.vertex.code.add(a`vec3 positionWorldCameraRelative() {\nvec3 rotatedModelPosition = uTransform_WorldFromModel_RS * positionModel();\nvec3 transform_CameraRelativeFromModel = dpAdd(\nuTransform_WorldFromModel_TL,\nuTransform_WorldFromModel_TH,\n-uTransform_WorldFromView_TL,\n-uTransform_WorldFromView_TH\n);\nreturn transform_CameraRelativeFromModel + rotatedModelPosition;\n}\nvec3 position_view() {\nreturn uTransform_ViewFromCameraRelative_RS * positionWorldCameraRelative();\n}\nvoid forwardPosition() {\nvPositionWorldCameraRelative = positionWorldCameraRelative();\nvPosition_view = position_view();\ngl_Position = uTransform_ProjFromView * vec4(vPosition_view, 1.0);\n}\nvec3 positionWorld() {\nreturn uTransform_WorldFromView_TL + vPositionWorldCameraRelative;\n}`),o.fragment.uniforms.add(\"uTransform_WorldFromView_TL\",\"vec3\"),o.fragment.code.add(a`vec3 positionWorld() {\nreturn uTransform_WorldFromView_TL + vPositionWorldCameraRelative;\n}`)}!function(i){class m{constructor(){this.worldFromModel_RS=o(),this.worldFromModel_TH=e(),this.worldFromModel_TL=e()}}i.ModelTransform=m;class a{constructor(){this.worldFromView_TH=e(),this.worldFromView_TL=e(),this.viewFromCameraRelative_RS=o(),this.projFromView=r()}}function d(o,r){o.setUniformMatrix3fv(\"uTransform_WorldFromModel_RS\",r.worldFromModel_RS),o.setUniform3fv(\"uTransform_WorldFromModel_TH\",r.worldFromModel_TH),o.setUniform3fv(\"uTransform_WorldFromModel_TL\",r.worldFromModel_TL)}function s(o,r){o.setUniform3fv(\"uTransform_WorldFromView_TH\",r.worldFromView_TH),o.setUniform3fv(\"uTransform_WorldFromView_TL\",r.worldFromView_TL),o.setUniformMatrix4fv(\"uTransform_ProjFromView\",r.projFromView),o.setUniformMatrix3fv(\"uTransform_ViewFromCameraRelative_RS\",r.viewFromCameraRelative_RS)}i.ViewProjectionTransform=a,i.bindModelTransform=d,i.bindViewProjTransform=s}(d||(d={}));export{d as VertexPosition};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{NormalAttribute as o}from\"./NormalAttribute.glsl.js\";import{VertexPosition as r}from\"./VertexPosition.glsl.js\";import{glsl as a}from\"../../shaderModules/interfaces.js\";function l(l,e){0===e.normalType||1===e.normalType?(l.include(o,e),l.varyings.add(\"vNormalWorld\",\"vec3\"),l.varyings.add(\"vNormalView\",\"vec3\"),l.vertex.uniforms.add(\"uTransformNormal_GlobalFromModel\",\"mat3\"),l.vertex.uniforms.add(\"uTransformNormal_ViewFromGlobal\",\"mat3\"),l.vertex.code.add(a`void forwardNormal() {\nvNormalWorld = uTransformNormal_GlobalFromModel * normalModel();\nvNormalView = uTransformNormal_ViewFromGlobal * vNormalWorld;\n}`)):2===e.normalType?(l.include(r,e),l.varyings.add(\"vNormalWorld\",\"vec3\"),l.vertex.code.add(a`\n void forwardNormal() {\n vNormalWorld = ${1===e.viewingMode?a`normalize(vPositionWorldCameraRelative);`:a`vec3(0.0, 0.0, 1.0);`}\n }\n `)):l.vertex.code.add(a`void forwardNormal() {}`)}!function(o){function r(o,r){o.setUniformMatrix4fv(\"viewNormal\",r)}o.bindUniforms=r}(l||(l={}));export{l as VertexNormal};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{RgbaFloatEncoding as t}from\"../util/RgbaFloatEncoding.glsl.js\";import{glsl as a}from\"../../shaderModules/interfaces.js\";function e(e,o){e.fragment.include(t),3===o.output?(e.extensions.add(\"GL_OES_standard_derivatives\"),e.fragment.code.add(a`float _calculateFragDepth(const in float depth) {\nconst float SLOPE_SCALE = 2.0;\nconst float BIAS = 2.0 * .000015259;\nfloat m = max(abs(dFdx(depth)), abs(dFdy(depth)));\nfloat result = depth + SLOPE_SCALE * m + BIAS;\nreturn clamp(result, .0, .999999);\n}\nvoid outputDepth(float _linearDepth) {\ngl_FragColor = float2rgba(_calculateFragDepth(_linearDepth));\n}`)):1===o.output&&e.fragment.code.add(a`void outputDepth(float _linearDepth) {\ngl_FragColor = float2rgba(_linearDepth);\n}`)}export{e as OutputDepth};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{Slice as o}from\"../Slice.glsl.js\";import{Transform as r}from\"../Transform.glsl.js\";import{NormalAttribute as e}from\"../attributes/NormalAttribute.glsl.js\";import{TextureCoordinateAttribute as t}from\"../attributes/TextureCoordinateAttribute.glsl.js\";import{VertexNormal as i}from\"../attributes/VertexNormal.glsl.js\";import{OutputDepth as a}from\"../output/OutputDepth.glsl.js\";import{OutputHighlight as l}from\"../output/OutputHighlight.glsl.js\";import{VisualVariables as s}from\"../shading/VisualVariables.glsl.js\";import{DiscardOrAdjustAlpha as d}from\"../util/AlphaDiscard.glsl.js\";import{glsl as n}from\"../../shaderModules/interfaces.js\";function u(u,c){const p=u.vertex.code,v=u.fragment.code;1!==c.output&&3!==c.output||(u.include(r,{linearDepth:!0}),u.include(t,c),u.include(s,c),u.include(a,c),u.include(o,c),u.vertex.uniforms.add(\"cameraNearFar\",\"vec2\"),u.varyings.add(\"depth\",\"float\"),c.hasColorTexture&&u.fragment.uniforms.add(\"tex\",\"sampler2D\"),p.add(n`void main(void) {\nvpos = calculateVPos();\nvpos = subtractOrigin(vpos);\nvpos = addVerticalOffset(vpos, localOrigin);\ngl_Position = transformPositionWithDepth(proj, view, vpos, cameraNearFar, depth);\nforwardTextureCoordinates();\n}`),u.include(d,c),v.add(n`\n void main(void) {\n discardBySlice(vpos);\n ${c.hasColorTexture?n`\n vec4 texColor = texture2D(tex, vuv0);\n discardOrAdjustAlpha(texColor);`:\"\"}\n outputDepth(depth);\n }\n `)),2===c.output&&(u.include(r,{linearDepth:!1}),u.include(e,c),u.include(i,c),u.include(t,c),u.include(s,c),c.hasColorTexture&&u.fragment.uniforms.add(\"tex\",\"sampler2D\"),u.vertex.uniforms.add(\"viewNormal\",\"mat4\"),u.varyings.add(\"vPositionView\",\"vec3\"),p.add(n`\n void main(void) {\n vpos = calculateVPos();\n vpos = subtractOrigin(vpos);\n ${0===c.normalType?n`\n vNormalWorld = dpNormalView(vvLocalNormal(normalModel()));`:\"\"}\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPosition(proj, view, vpos);\n forwardTextureCoordinates();\n }\n `),u.include(o,c),u.include(d,c),v.add(n`\n void main() {\n discardBySlice(vpos);\n ${c.hasColorTexture?n`\n vec4 texColor = texture2D(tex, vuv0);\n discardOrAdjustAlpha(texColor);`:\"\"}\n\n ${3===c.normalType?n`\n vec3 normal = screenDerivativeNormal(vPositionView);`:n`\n vec3 normal = normalize(vNormalWorld);\n if (gl_FrontFacing == false) normal = -normal;`}\n gl_FragColor = vec4(vec3(0.5) + 0.5 * normal, 1.0);\n }\n `)),4===c.output&&(u.include(r,{linearDepth:!1}),u.include(t,c),u.include(s,c),c.hasColorTexture&&u.fragment.uniforms.add(\"tex\",\"sampler2D\"),p.add(n`void main(void) {\nvpos = calculateVPos();\nvpos = subtractOrigin(vpos);\nvpos = addVerticalOffset(vpos, localOrigin);\ngl_Position = transformPosition(proj, view, vpos);\nforwardTextureCoordinates();\n}`),u.include(o,c),u.include(d,c),u.include(l),v.add(n`\n void main() {\n discardBySlice(vpos);\n ${c.hasColorTexture?n`\n vec4 texColor = texture2D(tex, vuv0);\n discardOrAdjustAlpha(texColor);`:\"\"}\n outputHighlight();\n }\n `))}export{u as DefaultMaterialAuxiliaryPasses};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nclass t{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=9;const i=this.TypedArrayConstructor;void 0===f&&(f=9*i.BYTES_PER_ELEMENT);const d=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,d):new i(e,d,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const f=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,f,this.stride,f+r*this.stride)}getMat(t,e){let r=t*this.typedBufferStride;for(let f=0;f<9;f++)e[f]=this.typedBuffer[r++];return e}setMat(t,e){let r=t*this.typedBufferStride;for(let f=0;f<9;f++)this.typedBuffer[r++]=e[f]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,d=r*e.typedBufferStride;for(let u=0;u<9;++u)f[i++]=s[d++]}get buffer(){return this.typedBuffer.buffer}}t.ElementCount=9;export{t as BufferViewMat3Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nclass t{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=16;const i=this.TypedArrayConstructor;void 0===f&&(f=16*i.BYTES_PER_ELEMENT);const d=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,d):new i(e,d,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const f=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,f,this.stride,f+r*this.stride)}getMat(t,e){let r=t*this.typedBufferStride;for(let f=0;f<16;f++)e[f]=this.typedBuffer[r++];return e}setMat(t,e){let r=t*this.typedBufferStride;for(let f=0;f<16;f++)this.typedBuffer[r++]=e[f]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,d=r*e.typedBufferStride;for(let u=0;u<16;++u)f[i++]=s[d++]}get buffer(){return this.typedBuffer.buffer}}t.ElementCount=16;export{t as BufferViewMat4Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nclass t{constructor(t,e,r=0,s,i){this.TypedArrayConstructor=t,this.elementCount=1;const f=this.TypedArrayConstructor;void 0===s&&(s=f.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==i?new f(e,u):new f(e,u,(i-r)/f.BYTES_PER_ELEMENT),this.typedBufferStride=s/f.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const s=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,s,this.stride,s+r*this.stride)}get(t){return this.typedBuffer[t*this.typedBufferStride]}set(t,e){this.typedBuffer[t*this.typedBufferStride]=e}get buffer(){return this.typedBuffer.buffer}}t.ElementCount=1;export{t as BufferViewScalarImpl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{s as t}from\"../../../../chunks/vec2.js\";class e{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=2;const i=this.TypedArrayConstructor;void 0===f&&(f=2*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const f=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,f,this.stride,f+r*this.stride)}getVec(e,r){return e*=this.typedBufferStride,t(r,this.typedBuffer[e],this.typedBuffer[e+1])}setVec(t,e){t*=this.typedBufferStride,this.typedBuffer[t++]=e[0],this.typedBuffer[t]=e[1]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r){t*=this.typedBufferStride,this.typedBuffer[t++]=e,this.typedBuffer[t]=r}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;f[i++]=s[u++],f[i]=s[u]}get buffer(){return this.typedBuffer.buffer}}e.ElementCount=2;export{e as BufferViewVec2Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{s as t}from\"../../../../chunks/vec3.js\";class e{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=3;const i=this.TypedArrayConstructor;void 0===f&&(f=3*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const f=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,f,this.stride,f+r*this.stride)}getVec(e,r){return e*=this.typedBufferStride,t(r,this.typedBuffer[e],this.typedBuffer[e+1],this.typedBuffer[e+2])}setVec(t,e){t*=this.typedBufferStride,this.typedBuffer[t++]=e[0],this.typedBuffer[t++]=e[1],this.typedBuffer[t]=e[2]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r,f){t*=this.typedBufferStride,this.typedBuffer[t++]=e,this.typedBuffer[t++]=r,this.typedBuffer[t]=f}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;f[i++]=s[u++],f[i++]=s[u++],f[i]=s[u]}get buffer(){return this.typedBuffer.buffer}}e.ElementCount=3;export{e as BufferViewVec3Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{s as t}from\"../../../../chunks/vec4.js\";class e{constructor(t,e,r=0,f,s){this.TypedArrayConstructor=t,this.elementCount=4;const i=this.TypedArrayConstructor;void 0===f&&(f=4*i.BYTES_PER_ELEMENT);const u=0===e.byteLength?0:r;this.typedBuffer=null==s?new i(e,u):new i(e,u,(s-r)/i.BYTES_PER_ELEMENT),this.typedBufferStride=f/i.BYTES_PER_ELEMENT,this.count=Math.ceil(this.typedBuffer.length/this.typedBufferStride),this.stride=this.typedBufferStride*this.TypedArrayConstructor.BYTES_PER_ELEMENT}sliceBuffer(t,e,r=this.count-e){const f=this.typedBuffer.byteOffset+e*this.stride;return new t(this.buffer,f,this.stride,f+r*this.stride)}getVec(e,r){return e*=this.typedBufferStride,t(r,this.typedBuffer[e++],this.typedBuffer[e++],this.typedBuffer[e++],this.typedBuffer[e])}setVec(t,e){t*=this.typedBufferStride,this.typedBuffer[t++]=e[0],this.typedBuffer[t++]=e[1],this.typedBuffer[t++]=e[2],this.typedBuffer[t]=e[3]}get(t,e){return this.typedBuffer[t*this.typedBufferStride+e]}set(t,e,r){this.typedBuffer[t*this.typedBufferStride+e]=r}setValues(t,e,r,f,s){t*=this.typedBufferStride,this.typedBuffer[t++]=e,this.typedBuffer[t++]=r,this.typedBuffer[t++]=f,this.typedBuffer[t]=s}copyFrom(t,e,r){const f=this.typedBuffer,s=e.typedBuffer;let i=t*this.typedBufferStride,u=r*e.typedBufferStride;f[i++]=s[u++],f[i++]=s[u++],f[i++]=s[u++],f[i]=s[u]}get buffer(){return this.typedBuffer.buffer}}e.ElementCount=4;export{e as BufferViewVec4Impl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{BufferViewMat3Impl as e}from\"./internals/Mat3.js\";import{BufferViewMat4Impl as t}from\"./internals/Mat4.js\";import{BufferViewScalarImpl as r}from\"./internals/Scalar.js\";import{BufferViewVec2Impl as s}from\"./internals/Vec2.js\";import{BufferViewVec3Impl as f}from\"./internals/Vec3.js\";import{BufferViewVec4Impl as n}from\"./internals/Vec4.js\";class y extends r{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}static fromTypedArray(e,t){return new y(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}y.ElementType=\"f32\";class u extends s{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}slice(e,t){return this.sliceBuffer(u,e,t)}static fromTypedArray(e,t){return new u(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}u.ElementType=\"f32\";class i extends f{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}slice(e,t){return this.sliceBuffer(i,e,t)}static fromTypedArray(e,t){return new i(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}i.ElementType=\"f32\";class c extends n{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}slice(e,t){return this.sliceBuffer(c,e,t)}static fromTypedArray(e,t){return new c(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}c.ElementType=\"f32\";class l extends e{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}slice(e,t){return this.sliceBuffer(l,e,t)}static fromTypedArray(e,t){return new l(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}l.ElementType=\"f32\";class a extends e{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}slice(e,t){return this.sliceBuffer(a,e,t)}static fromTypedArray(e,t){return new a(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}a.ElementType=\"f64\";class p extends t{constructor(e,t=0,r,s){super(Float32Array,e,t,r,s),this.elementType=\"f32\"}slice(e,t){return this.sliceBuffer(p,e,t)}static fromTypedArray(e,t){return new p(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}p.ElementType=\"f32\";class b extends t{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}slice(e,t){return this.sliceBuffer(b,e,t)}static fromTypedArray(e,t){return new b(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}b.ElementType=\"f64\";class o extends r{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}slice(e,t){return this.sliceBuffer(o,e,t)}static fromTypedArray(e,t){return new o(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}o.ElementType=\"f64\";class m extends s{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}slice(e,t){return this.sliceBuffer(m,e,t)}static fromTypedArray(e,t){return new m(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}m.ElementType=\"f64\";class T extends f{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}slice(e,t){return this.sliceBuffer(T,e,t)}static fromTypedArray(e,t){return new T(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}T.ElementType=\"f64\";class h extends n{constructor(e,t=0,r,s){super(Float64Array,e,t,r,s),this.elementType=\"f64\"}slice(e,t){return this.sliceBuffer(h,e,t)}static fromTypedArray(e,t){return new h(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}h.ElementType=\"f64\";class d extends r{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}slice(e,t){return this.sliceBuffer(d,e,t)}static fromTypedArray(e,t){return new d(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}d.ElementType=\"u8\";class A extends s{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}slice(e,t){return this.sliceBuffer(A,e,t)}static fromTypedArray(e,t){return new A(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}A.ElementType=\"u8\";class O extends f{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}slice(e,t){return this.sliceBuffer(O,e,t)}static fromTypedArray(e,t){return new O(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}O.ElementType=\"u8\";class x extends n{constructor(e,t=0,r,s){super(Uint8Array,e,t,r,s),this.elementType=\"u8\"}slice(e,t){return this.sliceBuffer(x,e,t)}static fromTypedArray(e,t){return new x(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}x.ElementType=\"u8\";class g extends r{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}slice(e,t){return this.sliceBuffer(g,e,t)}static fromTypedArray(e,t){return new g(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}g.ElementType=\"u16\";class w extends s{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}slice(e,t){return this.sliceBuffer(w,e,t)}static fromTypedArray(e,t){return new w(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}w.ElementType=\"u16\";class E extends f{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}slice(e,t){return this.sliceBuffer(E,e,t)}static fromTypedArray(e,t){return new E(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}E.ElementType=\"u16\";class L extends n{constructor(e,t=0,r,s){super(Uint16Array,e,t,r,s),this.elementType=\"u16\"}slice(e,t){return this.sliceBuffer(L,e,t)}static fromTypedArray(e,t){return new L(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}L.ElementType=\"u16\";class B extends r{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}slice(e,t){return this.sliceBuffer(B,e,t)}static fromTypedArray(e,t){return new B(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}B.ElementType=\"u32\";class F extends s{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}slice(e,t){return this.sliceBuffer(F,e,t)}static fromTypedArray(e,t){return new F(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}F.ElementType=\"u32\";class I extends f{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}slice(e,t){return this.sliceBuffer(I,e,t)}static fromTypedArray(e,t){return new I(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}I.ElementType=\"u32\";class U extends n{constructor(e,t=0,r,s){super(Uint32Array,e,t,r,s),this.elementType=\"u32\"}slice(e,t){return this.sliceBuffer(U,e,t)}static fromTypedArray(e,t){return new U(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}U.ElementType=\"u32\";class j extends r{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}slice(e,t){return this.sliceBuffer(j,e,t)}static fromTypedArray(e,t){return new j(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}j.ElementType=\"i8\";class V extends s{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}slice(e,t){return this.sliceBuffer(V,e,t)}static fromTypedArray(e,t){return new V(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}V.ElementType=\"i8\";class M extends f{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}slice(e,t){return this.sliceBuffer(M,e,t)}static fromTypedArray(e,t){return new M(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}M.ElementType=\"i8\";class S extends n{constructor(e,t=0,r,s){super(Int8Array,e,t,r,s),this.elementType=\"i8\"}slice(e,t){return this.sliceBuffer(S,e,t)}static fromTypedArray(e,t){return new S(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}S.ElementType=\"i8\";class k extends r{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}slice(e,t){return this.sliceBuffer(k,e,t)}static fromTypedArray(e,t){return new k(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}k.ElementType=\"i16\";class q extends s{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}slice(e,t){return this.sliceBuffer(q,e,t)}static fromTypedArray(e,t){return new q(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}q.ElementType=\"i16\";class v extends f{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}slice(e,t){return this.sliceBuffer(v,e,t)}static fromTypedArray(e,t){return new v(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}v.ElementType=\"i16\";class z extends n{constructor(e,t=0,r,s){super(Int16Array,e,t,r,s),this.elementType=\"i16\"}slice(e,t){return this.sliceBuffer(z,e,t)}static fromTypedArray(e,t){return new z(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}z.ElementType=\"i16\";class C extends r{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}slice(e,t){return this.sliceBuffer(C,e,t)}static fromTypedArray(e,t){return new C(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}C.ElementType=\"i32\";class D extends s{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}slice(e,t){return this.sliceBuffer(D,e,t)}static fromTypedArray(e,t){return new D(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}D.ElementType=\"i32\";class G extends f{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}slice(e,t){return this.sliceBuffer(G,e,t)}static fromTypedArray(e,t){return new G(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}G.ElementType=\"i32\";class H extends n{constructor(e,t=0,r,s){super(Int32Array,e,t,r,s),this.elementType=\"i32\"}slice(e,t){return this.sliceBuffer(H,e,t)}static fromTypedArray(e,t){return new H(e.buffer,e.byteOffset,t,e.byteOffset+e.byteLength)}}H.ElementType=\"i32\";export{y as BufferViewFloat,o as BufferViewFloat64,k as BufferViewInt16,C as BufferViewInt32,j as BufferViewInt8,l as BufferViewMat3f,a as BufferViewMat3f64,p as BufferViewMat4f,b as BufferViewMat4f64,g as BufferViewUint16,B as BufferViewUint32,d as BufferViewUint8,u as BufferViewVec2f,m as BufferViewVec2f64,q as BufferViewVec2i16,D as BufferViewVec2i32,V as BufferViewVec2i8,w as BufferViewVec2u16,F as BufferViewVec2u32,A as BufferViewVec2u8,i as BufferViewVec3f,T as BufferViewVec3f64,v as BufferViewVec3i16,G as BufferViewVec3i32,M as BufferViewVec3i8,E as BufferViewVec3u16,I as BufferViewVec3u32,O as BufferViewVec3u8,c as BufferViewVec4f,h as BufferViewVec4f64,z as BufferViewVec4i16,H as BufferViewVec4i32,S as BufferViewVec4i8,L as BufferViewVec4u16,U as BufferViewVec4u32,x as BufferViewVec4u8};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nvar e=[\"layout\",\"centroid\",\"smooth\",\"case\",\"mat2x2\",\"mat2x3\",\"mat2x4\",\"mat3x2\",\"mat3x3\",\"mat3x4\",\"mat4x2\",\"mat4x3\",\"mat4x4\",\"uint\",\"uvec2\",\"uvec3\",\"uvec4\",\"samplerCubeShadow\",\"sampler2DArray\",\"sampler2DArrayShadow\",\"isampler2D\",\"isampler3D\",\"isamplerCube\",\"isampler2DArray\",\"usampler2D\",\"usampler3D\",\"usamplerCube\",\"usampler2DArray\",\"coherent\",\"restrict\",\"readonly\",\"writeonly\",\"resource\",\"atomic_uint\",\"noperspective\",\"patch\",\"sample\",\"subroutine\",\"common\",\"partition\",\"active\",\"filter\",\"image1D\",\"image2D\",\"image3D\",\"imageCube\",\"iimage1D\",\"iimage2D\",\"iimage3D\",\"iimageCube\",\"uimage1D\",\"uimage2D\",\"uimage3D\",\"uimageCube\",\"image1DArray\",\"image2DArray\",\"iimage1DArray\",\"iimage2DArray\",\"uimage1DArray\",\"uimage2DArray\",\"image1DShadow\",\"image2DShadow\",\"image1DArrayShadow\",\"image2DArrayShadow\",\"imageBuffer\",\"iimageBuffer\",\"uimageBuffer\",\"sampler1DArray\",\"sampler1DArrayShadow\",\"isampler1D\",\"isampler1DArray\",\"usampler1D\",\"usampler1DArray\",\"isampler2DRect\",\"usampler2DRect\",\"samplerBuffer\",\"isamplerBuffer\",\"usamplerBuffer\",\"sampler2DMS\",\"isampler2DMS\",\"usampler2DMS\",\"sampler2DMSArray\",\"isampler2DMSArray\",\"usampler2DMSArray\",\"trunc\",\"round\",\"roundEven\",\"isnan\",\"isinf\",\"floatBitsToInt\",\"floatBitsToUint\",\"intBitsToFloat\",\"uintBitsToFloat\",\"packSnorm2x16\",\"unpackSnorm2x16\",\"packUnorm2x16\",\"unpackUnorm2x16\",\"packHalf2x16\",\"unpackHalf2x16\",\"outerProduct\",\"transpose\",\"determinant\",\"inverse\",\"texture\",\"textureSize\",\"textureProj\",\"textureLod\",\"textureOffset\",\"texelFetch\",\"texelFetchOffset\",\"textureProjOffset\",\"textureLodOffset\",\"textureProjLod\",\"textureProjLodOffset\",\"textureGrad\",\"textureGradOffset\",\"textureProjGrad\",\"textureProjGradOffset\"];export default e;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport t from\"./reservedWordsGLSL3.js\";import{o as e,l as a,b as r}from\"../../chunks/builtins.js\";var n=999,o=9999,i=0,s=1,c=2,d=3,p=4,f=5,u=6,l=7,h=8,y=9,w=10,g=11,k=[\"block-comment\",\"line-comment\",\"preprocessor\",\"operator\",\"integer\",\"float\",\"ident\",\"builtin\",\"keyword\",\"whitespace\",\"eof\",\"integer\"];function m(){var t,m,b,_=0,v=0,x=n,j=[],E=[],O=1,L=0,D=0,G=!1,T=!1,X=\"\";return function(t){return E=[],null!==t?P(t.replace?t.replace(/\\r\\n/g,\"\\n\"):t):C()};function F(t){t.length&&E.push({type:k[x],data:t,position:D,line:O,column:L})}function P(e){var a;for(_=0,b=(X+=e).length;t=X[_],_0)continue;r=t.slice(0,1).join(\"\")}return F(r),D+=r.length,(j=j.slice(r.length)).length}}function W(){return/[^a-fA-F0-9]/.test(t)?(F(j.join(\"\")),x=n,_):(j.push(t),m=t,_+1)}function Z(){return\".\"===t||/[eE]/.test(t)?(j.push(t),x=f,m=t,_+1):\"x\"===t&&1===j.length&&\"0\"===j[0]?(x=g,j.push(t),m=t,_+1):/[^\\d]/.test(t)?(F(j.join(\"\")),x=n,_):(j.push(t),m=t,_+1)}function q(){return\"f\"===t&&(j.push(t),m=t,_+=1),/[eE]/.test(t)||\"-\"===t&&/[eE]/.test(m)?(j.push(t),m=t,_+1):/[^\\d]/.test(t)?(F(j.join(\"\")),x=n,_):(j.push(t),m=t,_+1)}function B(){if(/[^\\d\\w_]/.test(t)){var e=j.join(\"\");return x=a.indexOf(e)>-1?h:r.indexOf(e)>-1?l:u,F(j.join(\"\")),x=n,_}return j.push(t),m=t,_+1}}function b(t){var e=m(),a=[];return a=(a=a.concat(e(t))).concat(e(null))}function _(t){return b(t)}function v(t){return t.map((t=>\"eof\"!==t.type?t.data:\"\")).join(\"\")}const x=[\"GL_OES_standard_derivatives\",\"GL_EXT_frag_depth\",\"GL_EXT_draw_buffers\",\"GL_EXT_shader_texture_lod\"];function j(t,e=\"100\",a=\"300 es\"){const r=/^\\s*\\#version\\s+([0-9]+(\\s+[a-zA-Z]+)?)\\s*/;for(const n of t)if(\"preprocessor\"===n.type){const t=r.exec(n.data);if(t){const r=t[1].replace(/\\s\\s+/g,\" \");if(r===a)return r;if(r===e)return n.data=\"#version \"+a,e;throw new Error(\"unknown glsl version: \"+r)}}return t.splice(0,0,{type:\"preprocessor\",data:\"#version \"+a},{type:\"whitespace\",data:\"\\n\"}),null}function E(t,e){for(let a=e-1;a>=0;a--){const e=t[a];if(\"whitespace\"!==e.type&&\"block-comment\"!==e.type){if(\"keyword\"!==e.type)break;if(\"attribute\"===e.data||\"in\"===e.data)return!0}}return!1}function O(t,e,a,r){r=r||a;for(const n of t)if(\"ident\"===n.type&&n.data===a){r in e?e[r]++:e[r]=0;return O(t,e,r+\"_\"+e[r],r)}return a}function L(t,e,a=\"afterVersion\"){function r(t,e){for(let a=e;ae=0){if(35633===a&&E(r,c))throw new Error(\"attribute in vertex shader uses a name that is a reserved word in glsl 300 es\");e.data in s||(s[e.data]=O(r,i,e.data)),e.data=s[e.data]}}}for(let t=r.length-1;t>=0;--t){const e=r[t];if(\"preprocessor\"===e.type){const a=e.data.match(/\\#extension\\s+(.*)\\:/);if(a&&a[1]&&x.indexOf(a[1].trim())>=0){const e=r[t+1];r.splice(t,e&&\"whitespace\"===e.type?2:1)}const n=e.data.match(/\\#ifdef\\s+(.*)/);n&&n[1]&&x.indexOf(n[1].trim())>=0&&(e.data=\"#if 1\");const o=e.data.match(/\\#ifndef\\s+(.*)/);o&&o[1]&&x.indexOf(o[1].trim())>=0&&(e.data=\"#if 0\")}}return v(r)}export{X as transpileShader};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport\"../../core/has.js\";import{isNone as t}from\"../../core/maybe.js\";import{ResourceType as o}from\"./enums.js\";import{webglValidateShadersEnabled as i}from\"./RenderingContext.js\";import{transpileShader as r}from\"./ShaderTranspiler.js\";class n{constructor(t,r,n,e){this._context=t,this._locations=e,this._vShader=null,this._fShader=null,this._nameToUniformLocation={},this._nameToUniform1={},this._nameToUniform1v={},this._nameToUniform2={},this._nameToUniform3={},this._nameToUniform4={},this._nameToUniformMatrix3={},this._nameToUniformMatrix4={},t||console.error(\"RenderingContext isn't initialized!\"),0===r.length&&console.error(\"Shaders source should not be empty!\"),this._vShader=s(this._context,35633,r),this._fShader=s(this._context,35632,n),this._vShader&&this._fShader||console.error(\"Error loading shaders!\");const m=this._context.gl,a=m.createProgram();m.attachShader(a,this._vShader),m.attachShader(a,this._fShader),e.forEach(((t,o)=>m.bindAttribLocation(a,t,o))),m.linkProgram(a),i()&&!m.getProgramParameter(a,m.LINK_STATUS)&&console.error(\"Could not initialize shader\\nVALIDATE_STATUS: \"+m.getProgramParameter(a,m.VALIDATE_STATUS)+\", gl error [\"+m.getError()+\"]infoLog: \"+m.getProgramInfoLog(a)),this._glName=a,this._context.instanceCounter.increment(o.Program,this)}get glName(){return this._glName}dispose(){const t=this._context.gl;if(this._vShader){const o=this._vShader;t.deleteShader(o),this._vShader=null}if(this._fShader){const o=this._fShader;t.deleteShader(o),this._fShader=null}this._glName&&(t.deleteProgram(this._glName),this._glName=null,this._context.instanceCounter.decrement(o.Program,this))}_getUniformLocation(t){return void 0===this._nameToUniformLocation[t]&&(this._nameToUniformLocation[t]=this._context.gl.getUniformLocation(this._glName,t)),this._nameToUniformLocation[t]}hasUniform(t){return null!==this._getUniformLocation(t)}setUniform1i(t,o){const i=this._nameToUniform1[t];if(void 0===i||o!==i){this._context.useProgram(this);this._context.gl.uniform1i(this._getUniformLocation(t),o),this._nameToUniform1[t]=o}}setUniform1iv(t,o){const i=this._nameToUniform1v[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform1iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform1v[t]=Array.from(o):h(o,i)}}setUniform2iv(t,o){const i=this._nameToUniform2[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform2iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform2[t]=Array.from(o):h(o,i)}}setUniform3iv(t,o){const i=this._nameToUniform3[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform3iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform3[t]=Array.from(o):h(o,i)}}setUniform4iv(t,o){const i=this._nameToUniform4[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform4iv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform4[t]=Array.from(o):h(o,i)}}setUniform1f(t,o){const i=this._nameToUniform1[t];if(void 0===i||o!==i){this._context.useProgram(this);this._context.gl.uniform1f(this._getUniformLocation(t),o),this._nameToUniform1[t]=o}}setUniform1fv(t,o){const i=this._nameToUniform1v[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform1fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform1v[t]=Array.from(o):h(o,i)}}setUniform2f(t,o,i){const r=this._nameToUniform2[t];if(void 0===r||o!==r[0]||i!==r[1]){this._context.useProgram(this);this._context.gl.uniform2f(this._getUniformLocation(t),o,i),void 0===r?this._nameToUniform2[t]=[o,i]:(r[0]=o,r[1]=i)}}setUniform2fv(t,o){const i=this._nameToUniform2[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform2fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform2[t]=Array.from(o):h(o,i)}}setUniform3f(t,o,i,r){const n=this._nameToUniform3[t];if(void 0===n||o!==n[0]||i!==n[1]||r!==n[2]){this._context.useProgram(this);this._context.gl.uniform3f(this._getUniformLocation(t),o,i,r),void 0===n?this._nameToUniform3[t]=[o,i,r]:(n[0]=o,n[1]=i,n[2]=r)}}setUniform3fv(t,o){const i=this._nameToUniform3[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform3fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform3[t]=Array.from(o):h(o,i)}}setUniform4f(t,o,i,r,n){const e=this._nameToUniform4[t];if(void 0===e||o!==e[0]||i!==e[1]||r!==e[2]||n!==e[3]){this._context.useProgram(this);this._context.gl.uniform4f(this._getUniformLocation(t),o,i,r,n),void 0===e?this._nameToUniform4[t]=[o,i,r,n]:(e[0]=o,e[1]=i,e[2]=r,e[3]=n)}}setUniform4fv(t,o){const i=this._nameToUniform4[t];if(e(i,o)){this._context.useProgram(this);this._context.gl.uniform4fv(this._getUniformLocation(t),o),void 0===i?this._nameToUniform4[t]=Array.from(o):h(o,i)}}setUniformMatrix3fv(t,o,i=!1){const r=this._nameToUniformMatrix3[t];if(f(r,o)){this._context.useProgram(this);this._context.gl.uniformMatrix3fv(this._getUniformLocation(t),i,o),void 0===r?this._nameToUniformMatrix3[t]=Array.from(o):h(o,r)}}setUniformMatrix4fv(t,o,i=!1){const r=this._nameToUniformMatrix4[t];if(c(r,o)){this._context.useProgram(this);this._context.gl.uniformMatrix4fv(this._getUniformLocation(t),i,o),void 0===r?this._nameToUniformMatrix4[t]=Array.from(o):h(o,r)}}assertCompatibleVertexAttributeLocations(t){t.locations!==this._locations&&console.error(\"VertexAttributeLocations are incompatible\")}stop(){}}function e(o,i){if(t(o)||o.length!==i.length)return!0;for(let t=0;t\"\\n\"+a(o++)+\":\"))}function a(t){return t>=1e3?t.toString():(\" \"+t).slice(-3)}function h(t,o){for(let i=0;i=1),h(a.length%this._numIndexPerPrimitive==0),h(a.length>=i.length*this._numIndexPerPrimitive),h(3===c.size||4===c.size);const{data:o,size:M}=c,d=i.length;let l=M*a[this._numIndexPerPrimitive*i[0]];b.clear(),b.push(l),this.bbMin=n(o[l],o[l+1],o[l+2]),this.bbMax=r(this.bbMin);for(let t=0;t1){const i=t(e(),this.bbMin,this.bbMax,.5),s=this.primitiveIndices.length,n=new Uint8Array(s),r=new Array(8);for(let t=0;t<8;++t)r[t]=0;const{data:h,size:b}=this.position;for(let t=0;t0&&++c;if(c<2)return;const o=new Array(8);for(let t=0;t<8;++t)o[t]=r[t]>0?new Uint32Array(r[t]):void 0;for(let t=0;t<8;++t)r[t]=0;for(let t=0;t=65536)return t;return new Uint16Array(t)}export{u as Geometry};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{getAssetUrl as e}from\"../../assets.js\";import{isNone as t}from\"../../core/maybe.js\";function s(){if(t(i)){const t=t=>e(`esri/libs/basisu/${t}`);i=import(\"../../chunks/basis_transcoder.js\").then((function(e){return e.b})).then((({default:e})=>e({locateFile:t}).then((e=>(e.initializeBasis(),delete e.then,e)))))}return i}let i;export{s as getBasisTranscoder};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isNone as e}from\"../../../../core/maybe.js\";import{getBasisTranscoder as t}from\"../../../../libs/basisu/BasisU.js\";import n from\"../../../webgl/Texture.js\";import{getBytesPerElementFormat as r}from\"../../../webgl/Util.js\";let s=null,i=null;async function a(){return e(i)&&(i=t(),s=await i),i}function o(t,n){if(e(s))return t.byteLength;const r=new s.BasisFile(new Uint8Array(t)),i=c(r)?l(r.getNumLevels(0),r.getHasAlpha(),r.getImageWidth(0,0),r.getImageHeight(0,0),n):0;return r.close(),r.delete(),i}function g(t,n){if(e(s))return t.byteLength;const r=new s.KTX2File(new Uint8Array(t)),i=u(r)?l(r.getLevels(),r.getHasAlpha(),r.getWidth(),r.getHeight(),n):0;return r.close(),r.delete(),i}function l(e,t,n,s,i){const a=r(t?37496:37492),o=i&&e>1?(4**e-1)/(3*4**(e-1)):1;return Math.ceil(n*s*a*o)}function c(e){return e.getNumImages()>=1&&!e.isUASTC()}function u(e){return e.getFaces()>=1&&e.isETC1S()}async function m(t,n,r){e(s)&&(s=await a());const i=new s.BasisFile(new Uint8Array(r));if(!c(i))return null;i.startTranscoding();const o=d(t,n,i.getNumLevels(0),i.getHasAlpha(),i.getImageWidth(0,0),i.getImageHeight(0,0),((e,t)=>i.getImageTranscodedSizeInBytes(0,e,t)),((e,t,n)=>i.transcodeImage(n,0,e,t,0,0)));return i.close(),i.delete(),o}async function h(t,n,r){e(s)&&(s=await a());const i=new s.KTX2File(new Uint8Array(r));if(!u(i))return null;i.startTranscoding();const o=d(t,n,i.getLevels(),i.getHasAlpha(),i.getWidth(),i.getHeight(),((e,t)=>i.getImageTranscodedSizeInBytes(e,0,0,t)),((e,t,n)=>i.transcodeImage(n,e,0,0,t,0,-1,-1)));return i.close(),i.delete(),o}function d(e,t,r,s,i,a,o,g){const{compressedTextureETC:l,compressedTextureS3TC:c}=e.capabilities,[u,m]=l?s?[1,37496]:[0,37492]:c?s?[3,33779]:[2,33776]:[13,6408],h=t.hasMipmap?r:Math.min(1,r),d=[];for(let n=0;n1,f=p?9987:9729,w={...t,samplingMode:f,hasMipmap:p,internalFormat:m,width:i,height:a};return new n(e,w,{type:\"compressed\",levels:d})}export{m as createTextureBasis,h as createTextureKTX2,o as estimateMemoryBasis,g as estimateMemoryKTX2,a as loadBasis};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../../../../core/Logger.js\";import{isPowerOfTwo as t}from\"../../../../core/mathUtils.js\";import r from\"../../../webgl/Texture.js\";const n=e.getLogger(\"esri.views.3d.webgl-engine.lib.DDSUtil\"),o=542327876,a=131072,i=4;function s(e){return e.charCodeAt(0)+(e.charCodeAt(1)<<8)+(e.charCodeAt(2)<<16)+(e.charCodeAt(3)<<24)}function l(e){return String.fromCharCode(255&e,e>>8&255,e>>16&255,e>>24&255)}const u=s(\"DXT1\"),c=s(\"DXT3\"),m=s(\"DXT5\"),h=31,p=0,d=1,g=2,f=3,w=4,C=7,x=20,D=21;function b(e,t,n){const{textureData:o,internalFormat:a,width:i,height:s}=A(n,t.hasMipmap);return t.samplingMode=o.levels.length>1?9987:9729,t.hasMipmap=o.levels.length>1,t.internalFormat=a,t.width=i,t.height=s,new r(e,t,o)}function A(e,r){const s=new Int32Array(e,0,h);if(s[p]!==o)return n.error(\"Invalid magic number in DDS header\"),null;if(!(s[x]&i))return n.error(\"Unsupported format, must contain a FourCC code\"),null;const b=s[D];let A,M;switch(b){case u:A=8,M=33776;break;case c:A=16,M=33778;break;case m:A=16,M=33779;break;default:return n.error(\"Unsupported FourCC code:\",l(b)),null}let v=1,F=s[w],U=s[f];0==(3&F)&&0==(3&U)||(n.warn(\"Rounding up compressed texture size to nearest multiple of 4.\"),F=F+3&-4,U=U+3&-4);const T=F,j=U;let k,y;s[g]&a&&!1!==r&&(v=Math.max(1,s[C])),1===v||t(F)&&t(U)||(n.warn(\"Ignoring mipmaps of non power of two sized compressed texture.\"),v=1);let I=s[d]+4;const S=[];for(let t=0;t>2)*(U+3>>2)*A,k=new Uint8Array(e,I,y),S.push(k),I+=y,F=Math.max(1,F>>1),U=Math.max(1,U>>1);return{textureData:{type:\"compressed\",levels:S},internalFormat:M,width:T,height:j}}export{b as createDDSTexture,A as createDDSTextureData};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nconst o=new Map([[\"position\",0],[\"normal\",1],[\"uv0\",2],[\"color\",3],[\"size\",4],[\"tangent\",4],[\"auxpos1\",5],[\"symbolColor\",5],[\"auxpos2\",6],[\"featureAttribute\",6],[\"instanceFeatureAttribute\",6],[\"instanceColor\",7],[\"model\",8],[\"modelNormal\",12],[\"modelOriginHi\",11],[\"modelOriginLo\",15]]);export{o as Default3D};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nconst e=[{name:\"position\",count:3,type:5126,offset:0,stride:12,normalized:!1}],t=[{name:\"position\",count:3,type:5126,offset:0,stride:20,normalized:!1},{name:\"uv0\",count:2,type:5126,offset:12,stride:20,normalized:!1}],o=[{name:\"position\",count:3,type:5126,offset:0,stride:32,normalized:!1},{name:\"normal\",count:3,type:5126,offset:12,stride:32,normalized:!1},{name:\"uv0\",count:2,type:5126,offset:24,stride:32,normalized:!1}],n=[{name:\"position\",count:3,type:5126,offset:0,stride:16,normalized:!1},{name:\"color\",count:4,type:5121,offset:12,stride:16,normalized:!1}],i=[{name:\"position\",count:2,type:5126,offset:0,stride:8,normalized:!1}],s=[{name:\"position\",count:2,type:5126,offset:0,stride:16,normalized:!1},{name:\"uv0\",count:2,type:5126,offset:8,stride:16,normalized:!1}];export{i as Pos2,s as Pos2Tex,e as Pos3,n as Pos3Col,o as Pos3NormalTex,t as Pos3Tex};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{Default3D as e}from\"./DefaultVertexAttributeLocations.js\";import{Pos2 as t,Pos2Tex as r}from\"./DefaultVertexBufferLayouts.js\";import n from\"../../../webgl/BufferObject.js\";import o from\"../../../webgl/Texture.js\";import a from\"../../../webgl/VertexArrayObject.js\";function i(o,i=t,l=e,m=-1,u=1){let f=null;switch(i){case r:f=new Float32Array([m,m,0,0,u,m,1,0,m,u,0,1,u,u,1,1]);break;case t:default:f=new Float32Array([m,m,u,m,m,u,u,u])}return new a(o,l,{geometry:i},{geometry:n.createVertex(o,35044,f)})}function l(r,o=t,i=e){const l=new Float32Array([-1,-1,3,-1,-1,3]);return new a(r,i,{geometry:o},{geometry:n.createVertex(r,35044,l)})}const m=4;function u(e,t=m){return new o(e,{target:3553,pixelFormat:6408,dataType:5121,samplingMode:9728,width:t,height:t})}function f(e,t,r=m){const n=new Uint8Array(r*r*4);for(let o=0;oT(t,this.createDescriptor(t),e).then((t=>(this.glTexture=t,t)))))}loadFromBasis(t,e){return this.loadAsync((()=>x(t,this.createDescriptor(t),e).then((t=>(this.glTexture=t,t)))))}loadFromPixelData(t,e){y(this.params.width>0&&this.params.height>0);const r=this.createDescriptor(t);return r.pixelFormat=1===this.params.components?6409:3===this.params.components?6407:6408,r.width=this.params.width,r.height=this.params.height,this.glTexture=new E(t,r,e),this.glTexture}loadAsync(t){const e=n();this.loadingController=e;const r=t(e.signal);this.loadingPromise=r;const i=()=>{this.loadingController===e&&(this.loadingController=null),this.loadingPromise===r&&(this.loadingPromise=null)};return r.then(i,i),r}loadFromURL(t,e,r){return this.loadAsync((async i=>{const s=await u(r,{signal:i});return this.loadFromImage(t,s,e)}))}loadFromImageElement(t,e,r){return r.complete?this.loadFromImage(t,r,e):this.loadAsync((async i=>{const s=await g(r,r.src,!1,i);return this.loadFromImage(t,s,e)}))}loadFromVideoElement(t,e,r){return r.readyState>=2?this.loadFromImage(t,r,e):this.loadFromVideoElementAsync(t,e,r)}loadFromVideoElementAsync(t,r,i){return this.loadAsync((s=>new Promise(((a,n)=>{const l=()=>{i.removeEventListener(\"loadeddata\",p),i.removeEventListener(\"error\",d),o(c)&&c.remove()},p=()=>{i.readyState>=2&&(l(),a(this.loadFromImage(t,i,r)))},d=t=>{l(),n(t||new e(\"Failed to load video\"))};i.addEventListener(\"loadeddata\",p),i.addEventListener(\"error\",d);const c=m(s,(()=>d(h())))}))))}loadFromImage(t,e,r){const s=S.getDataDimensions(e);this.params.width=s.width,this.params.height=s.height;const a=this.createDescriptor(t);return a.pixelFormat=3===this.params.components?6407:6408,!this.requiresPowerOfTwo(t,a)||i(s.width)&&i(s.height)?(a.width=s.width,a.height=s.height,this.glTexture=new E(t,a,e),this.glTexture):(this.glTexture=this.makePowerOfTwoTexture(t,e,s,a,r),this.glTexture)}requiresPowerOfTwo(t,e){const r=33071,i=\"number\"==typeof e.wrapMode?e.wrapMode===r:e.wrapMode.s===r&&e.wrapMode.t===r;return!b(t.gl)&&(e.hasMipmap||!i)}makePowerOfTwoTexture(e,r,i,a,o){const{width:n,height:m}=i,h=s(n),l=s(m);let p;switch(a.width=h,a.height=l,this.params.powerOfTwoResizeMode){case 2:a.textureCoordinateScaleFactor=[n/h,m/l],p=new E(e,a),p.updateData(0,0,0,n,m,r);break;case 1:case null:case void 0:p=this.stretchToPowerOfTwo(e,r,a,o);break;default:t(this.params.powerOfTwoResizeMode)}return a.hasMipmap&&p.generateMipmap(),p}stretchToPowerOfTwo(t,e,r,i){const s=new E(t,r),a=new I(t,{colorTarget:0,depthStencilTarget:0},s),o=new E(t,{target:3553,pixelFormat:r.pixelFormat,dataType:5121,wrapMode:33071,samplingMode:9729,flipped:!!r.flipped,maxAnisotropy:8,preMultiplyAlpha:r.preMultiplyAlpha},e),n=M(t);return this.drawStretchedTexture(t,i,a,n,o,s),this.requiresFrameUpdates?this.powerOfTwoStretchInfo={vao:n,sourceTexture:o,framebuffer:a}:(n.dispose(!0),o.dispose(),a.detachColorTexture(),t.bindFramebuffer(null),a.dispose()),s}drawStretchedTexture(t,e,r,i,s,a){t.bindFramebuffer(r);const o=t.getViewport();t.setViewport(0,0,a.descriptor.width,a.descriptor.height);const n=e.program;t.useProgram(n),n.setUniform4f(\"color\",1,1,1,1),n.bindTexture(s,\"tex\"),t.bindVAO(i),t.setPipelineState(e.pipeline),t.drawArrays(5,0,O(i,\"geometry\")),t.bindFramebuffer(null),t.setViewport(o.x,o.y,o.width,o.height)}unload(){if(o(this.powerOfTwoStretchInfo)){const{framebuffer:t,vao:e,sourceTexture:r}=this.powerOfTwoStretchInfo;e.dispose(!0),r.dispose(),t.dispose(),this.glTexture=null,this.powerOfTwoStretchInfo=null}if(o(this.glTexture)&&(this.glTexture.dispose(),this.glTexture=null),o(this.loadingController)){const t=this.loadingController;this.loadingController=null,this.loadingPromise=null,t.abort()}this.events.emit(\"unloaded\")}}S.DDS_ENCODING=\"image/vnd-ms.dds\",S.KTX2_ENCODING=\"image/ktx2\",S.BASIS_ENCODING=\"image/x.basis\";export{S as Texture};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nconst s=s=>{class e extends s{constructor(){super(...arguments),this._isDisposed=!1}dispose(){for(const e of null!=(s=this._managedDisposables)?s:[]){var s;const i=this[e];this[e]=null,i&&\"function\"==typeof i.dispose&&i.dispose()}this._isDisposed=!0}get isDisposed(){return this._isDisposed}}return e};class e extends(s(class{})){}function i(){return(s,e)=>{var i,o;s.hasOwnProperty(\"_managedDisposables\")||(s._managedDisposables=null!=(i=null==(o=s._managedDisposables)?void 0:o.slice())?i:[]);s._managedDisposables.unshift(e)}}export{e as AutoDisposable,s as AutoDisposableMixin,i as autoDispose};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{AutoDisposable as e}from\"./AutoDisposable.js\";class t extends e{constructor(e){super(),this._material=e.material,this._techniqueRep=e.techniqueRep,this._output=e.output}get technique(){return this._technique}getPipelineState(e,t){return this.technique.pipeline}ensureResources(e){return 2}ensureParameters(e){}}export default t;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../../core/maybe.js\";import r from\"./GLMaterial.js\";class i extends r{constructor(e){super(e),this._textureIDs=new Set,this._textureRepository=e.textureRep,this._textureId=e.textureId,this._initTransparent=!!e.initTextureTransparent,this._texture=this._acquire(this._textureId),this._textureNormal=this._acquire(e.normalTextureId),this._textureEmissive=this._acquire(e.emissiveTextureId),this._textureOcclusion=this._acquire(e.occlusionTextureId),this._textureMetallicRoughness=this._acquire(e.metallicRoughnessTextureId)}dispose(){this._textureIDs.forEach((e=>this._textureRepository.release(e))),this._textureIDs.clear()}updateTexture(e){e!==this._textureId&&(this._release(this._textureId),this._textureId=e,this._texture=this._acquire(this._textureId))}bindTextures(t){e(this._texture)&&t.bindTexture(this._texture.glTexture,\"tex\"),e(this._textureNormal)&&t.bindTexture(this._textureNormal.glTexture,\"normalTexture\"),e(this._textureEmissive)&&t.bindTexture(this._textureEmissive.glTexture,\"texEmission\"),e(this._textureOcclusion)&&t.bindTexture(this._textureOcclusion.glTexture,\"texOcclusion\"),e(this._textureMetallicRoughness)&&t.bindTexture(this._textureMetallicRoughness.glTexture,\"texMetallicRoughness\")}bindTextureScale(t){const r=e(this._texture)&&this._texture.glTexture;r&&r.descriptor.textureCoordinateScaleFactor?t.setUniform2fv(\"textureCoordinateScaleFactor\",r.descriptor.textureCoordinateScaleFactor):t.setUniform2f(\"textureCoordinateScaleFactor\",1,1)}_acquire(e){if(!t(e))return this._textureIDs.add(e),this._textureRepository.acquire(e,this._initTransparent)}_release(e){t(e)||(this._textureIDs.delete(e),this._textureRepository.release(e))}}export default i;\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../core/maybe.js\";import{ContentObject as r}from\"./ContentObject.js\";import{Default3D as t}from\"./DefaultVertexAttributeLocations.js\";import{copyParameters as i,updateParameters as s}from\"../materials/internal/MaterialUtil.js\";class a extends r{constructor(e,r){super(),this.type=3,this.supportsEdges=!1,this._visible=!0,this._renderPriority=0,this._insertOrder=0,this._vertexAttributeLocations=t,this._params=i(e,r),this.validateParameterValues(this._params)}dispose(){}get params(){return this._params}update(e){return!1}setParameterValues(e){s(this._params,e)&&(this.validateParameterValues(this._params),this.parametersChanged())}validateParameterValues(e){}get visible(){return this._visible}set visible(e){e!==this._visible&&(this._visible=e,this.parametersChanged())}isVisibleInPass(e){return!0}get renderOccluded(){return this.params.renderOccluded}get renderPriority(){return this._renderPriority}set renderPriority(e){e!==this._renderPriority&&(this._renderPriority=e,this.parametersChanged())}get insertOrder(){return this._insertOrder}set insertOrder(e){e!==this._insertOrder&&(this._insertOrder=e,this.parametersChanged())}get vertexAttributeLocations(){return this._vertexAttributeLocations}isVisible(){return this._visible}parametersChanged(){e(this.materialRepository)&&this.materialRepository.materialChanged(this)}}function n(e,r){return e.isVisible()&&e.isVisibleInPass(r.pass)&&0!=(e.renderOccluded&r.renderOccludedMask)}const d={renderOccluded:1};export{a as Material,d as materialParametersDefaults,n as materialPredicate};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{separateBlendingParams as n,simpleBlendingParams as t,defaultDepthWriteParams as r}from\"../../../webgl/renderState.js\";const u=n(770,1,771,771),e=t(1,1),o=t(0,771);function c(n){return 2===n?null:1===n?o:e}function l(n){return 2===n?r:null}const f=5e5,i={factor:-1,units:-2};function s(n){return n?i:null}function a(n){return 3===n||2===n?513:515}export{c as OITBlending,a as OITDepthTest,l as OITDepthWrite,i as OITPolygonOffset,f as OITPolygonOffsetLimit,o as blendingAlpha,e as blendingColor,u as blendingDefault,s as getOITPolygonOffset};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{ObjectStack as n}from\"../../core/ObjectStack.js\";import{g as i,f as r,c as t,n as o,d as c,b as e,a as u}from\"../../chunks/vec3.js\";import{a as s,c as g}from\"../../chunks/vec3f64.js\";import{sv3d as f}from\"./vectorStacks.js\";function a(n){return n?{origin:s(n.origin),direction:s(n.direction)}:{origin:g(),direction:g()}}function d(n,i){const r=b.get();return r.origin=n,r.direction=i,r}function m(n,i=a()){return p(n.origin,n.direction,i)}function j(n,t,o=a()){return i(o.origin,n),r(o.direction,t,n),o}function p(n,r,t=a()){return i(t.origin,n),i(t.direction,r),t}function k(n,i){const e=t(f.get(),o(f.get(),n.direction),r(f.get(),i,n.origin));return c(e,e)}function l(n,i){return Math.sqrt(k(n,i))}function h(n,i,t){const o=c(n.direction,r(t,i,n.origin));return e(t,n.origin,u(t,n.direction,o)),t}function v(){return{origin:null,direction:null}}const b=new n(v);export{h as closestPoint,m as copy,a as create,l as distance,k as distance2,j as fromPoints,p as fromValues,d as wrap};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{acosClamped as n}from\"../../core/mathUtils.js\";import{d as t,l as o,a as r,n as s,c}from\"../../chunks/vec3.js\";import{c as u}from\"../../chunks/vec3f64.js\";function a(n,o,s){const c=t(n,o)/t(n,n);return r(s,n,c)}function e(n,r){return t(n,r)/o(n)}function f(r,s){const c=t(r,s)/(o(r)*o(s));return-n(c)}function i(o,r,u){s(m,o),s(h,r);const a=t(m,h),e=n(a),f=c(m,m,h);return t(f,u)<0?2*Math.PI-e:e}const m=u(),h=u();export{f as angle,i as angleAroundAxis,a as projectPoint,e as projectPointSignedLength};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport\"../core/has.js\";import t from\"../core/Logger.js\";import{acosClamped as r,cartesianToSpherical as n}from\"../core/mathUtils.js\";import{isNone as e}from\"../core/maybe.js\";import{i as o,c as s}from\"./mat4.js\";import{g as i,f as a,d as c,b as u,a as f,i as m,l as g,c as p,m as l,p as h,n as d,s as j}from\"./vec3.js\";import{c as y}from\"./vec3f64.js\";import{c as M}from\"./vec4.js\";import{c as v,f as A}from\"./vec4f64.js\";import{closestPoint as b}from\"../geometry/support/ray.js\";import{angle as R}from\"../geometry/support/vector.js\";import{sv3d as S,sm4d as x}from\"../geometry/support/vectorStacks.js\";const P=t.getLogger(\"esri.geometry.support.sphere\");function _(){return v()}function q(t,r=_()){return M(r,t)}function w(t,r){return A(t[0],t[1],t[2],r)}function C(t){return t}function k(t){t[0]=t[1]=t[2]=t[3]=0}function E(t){return t}function L(t){return Array.isArray(t)?t[3]:t}function O(t){return Array.isArray(t)?t:X}function T(t,r,n,e){return A(t,r,n,e)}function z(t,r,n){return t!==n&&i(n,t),n[3]=t[3]+r,n}function U(t,r,n){return P.error(\"sphere.setExtent is not yet supported\"),t===n?n:q(t,n)}function V(t,r,n){if(e(r))return!1;const o=a(S.get(),r.origin,O(t)),s=c(r.direction,r.direction),i=2*c(r.direction,o),m=i*i-4*s*(c(o,o)-t[3]*t[3]);if(m<0)return!1;const g=Math.sqrt(m);let p=(-i-g)/(2*s);const l=(-i+g)/(2*s);return(p<0||l0)&&(p=l),!(p<0)&&(n&&u(n,r.origin,f(S.get(),r.direction,p)),!0)}function B(t,r){return V(t,r,null)}function D(t,r,n){if(V(t,r,n))return n;const e=F(t,r,S.get());return u(n,r.origin,f(S.get(),r.direction,m(r.origin,e)/g(r.direction))),n}function F(t,r,n){const e=S.get(),i=x.get();p(e,r.origin,r.direction);const a=L(t);p(n,e,r.origin),f(n,n,1/g(n)*a);const c=J(t,r.origin),u=R(r.origin,n);return o(i),s(i,i,u+c,e),l(n,n,i),n}function G(t,r,n){return V(t,r,n)?n:(b(r,O(t),n),H(t,n,n))}function H(t,r,n){const e=a(S.get(),r,O(t)),o=f(S.get(),e,t[3]/g(e));return u(n,o,O(t))}function I(t,r){const n=a(S.get(),r,O(t)),e=h(n),o=t[3]*t[3];return Math.sqrt(Math.abs(e-o))}function J(t,n){const e=a(S.get(),n,O(t)),o=g(e),s=L(t),i=s+Math.abs(s-o);return r(s/i)}const K=y();function N(t,r,e,o){const s=a(K,r,O(t));switch(e){case 0:{const t=n(s,K)[2];return j(o,-Math.sin(t),Math.cos(t),0)}case 1:{const t=n(s,K),r=t[1],e=t[2],i=Math.sin(r);return j(o,-i*Math.cos(e),-i*Math.sin(e),Math.cos(r))}case 2:return d(o,s);default:return}}function Q(t,r){const n=a(Y,r,O(t));return g(n)-t[3]}function W(t,r,n,e){const o=Q(t,r),s=N(t,r,2,Y),i=f(Y,s,n-o);return u(e,r,i)}const X=y(),Y=y();var Z=Object.freeze({__proto__:null,create:_,copy:q,fromCenterAndRadius:w,wrap:C,clear:k,fromRadius:E,getRadius:L,getCenter:O,fromValues:T,elevate:z,setExtent:U,intersectRay:V,intersectsRay:B,intersectRayClosestSilhouette:D,closestPointOnSilhouette:F,closestPoint:G,projectPoint:H,distanceToSilhouette:I,angleToSilhouette:J,axisAt:N,altitudeAt:Q,setAltitudeAt:W});export{k as a,F as b,_ as c,I as d,E as e,T as f,O as g,q as h,V as i,B as j,w as k,L as l,z as m,U as n,D as o,G as p,H as q,J as r,Z as s,N as t,Q as u,W as v,C as w};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isSome as t}from\"../../../../core/maybe.js\";import{n as s}from\"../../../../chunks/mat3.js\";import{c as i}from\"../../../../chunks/mat3f64.js\";import{a as r,e,d as o,m as n}from\"../../../../chunks/mat4.js\";import{c as h}from\"../../../../chunks/mat4f64.js\";import{c as a}from\"../../../../chunks/quat.js\";import{a as f}from\"../../../../chunks/quatf64.js\";import{q as l,b as m,f as c}from\"../../../../chunks/vec3.js\";import{c as b}from\"../../../../chunks/vec3f32.js\";import{c as p}from\"../../../../chunks/vec3f64.js\";import{c as u}from\"../../../../chunks/vec4f64.js\";import{c as v}from\"../../../../chunks/sphere.js\";class z{constructor(){this._transform=h(),this._transformInverse=new g({value:this._transform},r,h),this._transformInverseTranspose=new g(this._transformInverse,e,h),this._transformTranspose=new g({value:this._transform},e,h),this._transformInverseRotation=new g({value:this._transform},s,i)}invalidateLazyTransforms(){this._transformInverse.invalidate(),this._transformInverseTranspose.invalidate(),this._transformTranspose.invalidate(),this._transformInverseRotation.invalidate()}get transform(){return this._transform}get inverse(){return this._transformInverse.value}get inverseTranspose(){return this._transformInverseTranspose.value}get inverseRotation(){return this._transformInverseRotation.value}get transpose(){return this._transformTranspose.value}setTransformMatrix(t){o(this._transform,t)}multiplyTransform(t){n(this._transform,this._transform,t)}set(t){o(this._transform,t),this.invalidateLazyTransforms()}setAndInvalidateLazyTransforms(t,s){this.setTransformMatrix(t),this.multiplyTransform(s),this.invalidateLazyTransforms()}}class g{constructor(t,s,i){this.original=t,this.update=s,this.dirty=!0,this.transform=i()}invalidate(){this.dirty=!0}get value(){return this.dirty&&(this.update(this.transform,this.original.value),this.dirty=!1),this.transform}}class S{constructor(t=0){this.offset=t,this.tmpVertex=p()}applyToVertex(t,s,i){const r=t+this.localOrigin[0],e=s+this.localOrigin[1],o=i+this.localOrigin[2],n=this.offset/Math.sqrt(r*r+e*e+o*o);return this.tmpVertex[0]=t+r*n,this.tmpVertex[1]=s+e*n,this.tmpVertex[2]=i+o*n,this.tmpVertex}applyToAabb(t){const s=t[0]+this.localOrigin[0],i=t[1]+this.localOrigin[1],r=t[2]+this.localOrigin[2],e=t[3]+this.localOrigin[0],o=t[4]+this.localOrigin[1],n=t[5]+this.localOrigin[2],h=this.offset/Math.sqrt(s*s+i*i+r*r);t[0]+=s*h,t[1]+=i*h,t[2]+=r*h;const a=this.offset/Math.sqrt(e*e+o*o+n*n);return t[3]+=e*a,t[4]+=o*a,t[5]+=n*a,t}}class T{constructor(t=0){this.offset=t,this.componentLocalOriginLength=0,this.tmpVertex=p(),this.mbs=u(),this.obb={center:p(),halfSize:b(),quaternion:null}}set localOrigin(t){this.componentLocalOriginLength=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2])}applyToVertex(t,s,i){const r=t,e=s,o=i+this.componentLocalOriginLength,n=this.offset/Math.sqrt(r*r+e*e+o*o);return this.tmpVertex[0]=t+r*n,this.tmpVertex[1]=s+e*n,this.tmpVertex[2]=i+o*n,this.tmpVertex}applyToAabb(t){const s=t[0],i=t[1],r=t[2]+this.componentLocalOriginLength,e=t[3],o=t[4],n=t[5]+this.componentLocalOriginLength,h=this.offset/Math.sqrt(s*s+i*i+r*r);t[0]+=s*h,t[1]+=i*h,t[2]+=r*h;const a=this.offset/Math.sqrt(e*e+o*o+n*n);return t[3]+=e*a,t[4]+=o*a,t[5]+=n*a,t}applyToMbs(t){const s=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]),i=this.offset/s;return this.mbs[0]=t[0]+t[0]*i,this.mbs[1]=t[1]+t[1]*i,this.mbs[2]=t[2]+t[2]*i,this.mbs[3]=t[3]+t[3]*this.offset/s,this.mbs}applyToObb(t){const s=t.center,i=this.offset/Math.sqrt(s[0]*s[0]+s[1]*s[1]+s[2]*s[2]);this.obb.center[0]=s[0]+s[0]*i,this.obb.center[1]=s[1]+s[1]*i,this.obb.center[2]=s[2]+s[2]*i,l(this.obb.halfSize,t.halfSize,t.quaternion),m(this.obb.halfSize,this.obb.halfSize,t.center);const r=this.offset/Math.sqrt(this.obb.halfSize[0]*this.obb.halfSize[0]+this.obb.halfSize[1]*this.obb.halfSize[1]+this.obb.halfSize[2]*this.obb.halfSize[2]);return this.obb.halfSize[0]+=this.obb.halfSize[0]*r,this.obb.halfSize[1]+=this.obb.halfSize[1]*r,this.obb.halfSize[2]+=this.obb.halfSize[2]*r,c(this.obb.halfSize,this.obb.halfSize,t.center),a(j,t.quaternion),l(this.obb.halfSize,this.obb.halfSize,j),this.obb.halfSize[0]*=this.obb.halfSize[0]<0?-1:1,this.obb.halfSize[1]*=this.obb.halfSize[1]<0?-1:1,this.obb.halfSize[2]*=this.obb.halfSize[2]<0?-1:1,this.obb.quaternion=t.quaternion,this.obb}}class q{constructor(t=0){this.offset=t,this.sphere=v(),this.tmpVertex=p()}applyToVertex(t,s,i){const r=this.objectTransform.transform;let e=r[0]*t+r[4]*s+r[8]*i+r[12],o=r[1]*t+r[5]*s+r[9]*i+r[13],n=r[2]*t+r[6]*s+r[10]*i+r[14];const h=this.offset/Math.sqrt(e*e+o*o+n*n);e+=e*h,o+=o*h,n+=n*h;const a=this.objectTransform.inverse;return this.tmpVertex[0]=a[0]*e+a[4]*o+a[8]*n+a[12],this.tmpVertex[1]=a[1]*e+a[5]*o+a[9]*n+a[13],this.tmpVertex[2]=a[2]*e+a[6]*o+a[10]*n+a[14],this.tmpVertex}applyToMinMax(t,s){const i=this.offset/Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]+=t[0]*i,t[1]+=t[1]*i,t[2]+=t[2]*i;const r=this.offset/Math.sqrt(s[0]*s[0]+s[1]*s[1]+s[2]*s[2]);s[0]+=s[0]*r,s[1]+=s[1]*r,s[2]+=s[2]*r}applyToAabb(t){const s=this.offset/Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]+=t[0]*s,t[1]+=t[1]*s,t[2]+=t[2]*s;const i=this.offset/Math.sqrt(t[3]*t[3]+t[4]*t[4]+t[5]*t[5]);return t[3]+=t[3]*i,t[4]+=t[4]*i,t[5]+=t[5]*i,t}applyToBoundingSphere(t){const s=Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]),i=this.offset/s;return this.sphere[0]=t[0]+t[0]*i,this.sphere[1]=t[1]+t[1]*i,this.sphere[2]=t[2]+t[2]*i,this.sphere[3]=t[3]+t[3]*this.offset/s,this.sphere}}const x=new q;function _(s){return t(s)?(x.offset=s,x):null}const y=new T;function M(s){return t(s)?(y.offset=s,y):null}const d=new S;function V(s){return t(s)?(d.offset=s,d):null}const O=\"terrain\",j=f();export{T as I3SVerticalOffsetGlobalViewingMode,z as IntersectorTransform,q as Object3DVerticalOffsetGlobalViewingMode,O as TERRAIN_ID,S as TerrainVerticalOffsetGlobalViewingMode,M as getVerticalOffsetI3S,_ as getVerticalOffsetObject3D,V as getVerticalOffsetTerrain};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{p as t}from\"../../../../../chunks/mat4.js\";import{BufferViewVec4f as e,BufferViewVec4u8 as f,BufferViewVec2f as o,BufferViewVec3f as r}from\"../../../../../geometry/support/buffer/BufferView.js\";import{assert as s}from\"../../lib/Util.js\";function n(t,e,f,o){const r=f.typedBuffer,s=f.typedBufferStride,n=t.length;o*=s;for(let i=0;ik){const e=1/Math.sqrt(t);c*=e,u*=e,v*=e}}l[s+0]=c,l[s+1]=u,l[s+2]=v,s+=d}else for(let t=0;tk){const e=1/Math.sqrt(t);u*=e,v*=e,q*=e}}for(let t=0;tk){const e=1/Math.sqrt(t);u*=e,v*=e,q*=e}}l[s+0]=u,l[s+1]=v,l[s+2]=q,l[s+3]=c,s+=d}else for(let t=0;tk){const e=1/Math.sqrt(t);v*=e,q*=e,M*=e}}for(let t=0;tthis.dispose())){this.release=e,t&&(this._config=t.snapshot()),this._program=this.initializeProgram(i),this._pipeline=this.initializePipeline(i)}dispose(){this._program=i(this._program),this._pipeline=this._config=null}reload(t){i(this._program),this._program=this.initializeProgram(t)}get program(){return this._program}get pipeline(){return this._pipeline}get key(){return this._config.key}get configuration(){return this._config}bindPass(i,t){}bindMaterial(i,t){}bindDraw(i,t,e){}bindPipelineState(i){i.setPipelineState(this.pipeline)}ensureAttributeLocations(i){this.program.assertCompatibleVertexAttributeLocations(i)}get primitiveType(){return 4}}export{t as ShaderTechnique};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{log2 as t}from\"../../../../../core/mathUtils.js\";class e{constructor(){this._key=\"\",this._keyDirty=!1,this._parameterBits=this._parameterBits.map((()=>0))}get key(){return this._keyDirty&&(this._keyDirty=!1,this._key=String.fromCharCode.apply(String,this._parameterBits)),this._key}snapshot(){const t=this._parameterNames,e={key:this.key};for(const r of t)e[r]=this[r];return e}}function r(e={}){return(r,s)=>{var a,i;r._parameterNames=null!=(a=r._parameterNames)?a:[],r._parameterNames.push(s);const o=r._parameterNames.length-1,h=e.count||2,n=Math.ceil(t(h)),m=null!=(i=r._parameterBits)?i:[0];let p=0;for(;m[p]+n>16;)p++,p>=m.length&&m.push(0);r._parameterBits=m;const y=m[p],_=(1<{this._context.bindTexture(e.texture,e.unit),this.setUniform1i(t,e.unit)})),t(this._fragmentUniforms)&&this._fragmentUniforms.forEach((e=>{if((\"sampler2D\"===e.type||\"samplerCube\"===e.type)&&!this._textures.has(e.name))throw new Error(`Texture sampler ${e.name} has no bound texture`)}))}_allocTextureUnit(e){return{texture:e,unit:0===this._freeTextureUnits.length?this._textures.size:this._freeTextureUnits.pop()}}_freeTextureUnit(e){this._freeTextureUnits.push(e.unit)}}export{n as Program};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nconst a={func:513},n={func:519},f={mask:255},i={mask:0},s=a=>({function:{func:517,ref:a,mask:a},operation:{fail:7680,zFail:7680,zPass:7680}}),o=a=>({function:{func:519,ref:a,mask:a},operation:{fail:7680,zFail:7680,zPass:7681}}),c={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:0}},t={function:{func:519,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7681}},u={function:{func:514,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7680}},e={function:{func:517,ref:2,mask:2},operation:{fail:7680,zFail:7680,zPass:7680}};export{n as depthCompareAlways,a as depthCompareLess,s as renderWhenBitIsNotSet,o as replaceBitWhenDepthTestPasses,c as stencilBaseAllZerosParams,t as stencilToolMaskBaseParams,u as stencilToolMaskOccluderParams,e as stencilToolTransparentOccluderParams,i as stencilWriteMaskOff,f as stencilWriteMaskOn};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import{f as t}from\"../../../../chunks/vec3f64.js\";import{bindSliceUniforms as i}from\"../core/shaderLibrary/Slice.glsl.js\";import{InstancedDoublePrecision as r}from\"../core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{bindVerticalOffsetUniforms as o}from\"../core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{bindOutputHighlight as s}from\"../core/shaderLibrary/output/OutputHighlight.glsl.js\";import{bindMultipassTerrainTexture as a}from\"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{bindPBRUniforms as n}from\"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{bindReadShadowMapViewCustomOrigin as l}from\"../core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{bindVisualVariablesUniformsForSymbols as p}from\"../core/shaderLibrary/shading/VisualVariables.glsl.js\";import{doublePrecisionRequiresObfuscation as c}from\"../core/shaderLibrary/util/DoublePrecision.glsl.js\";import{bindProjectionMatrix as u,bindViewCustomOrigin as h,bindCameraPosition as d}from\"../core/shaderLibrary/util/View.glsl.js\";import{ReloadableShaderModule as m}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{ShaderTechnique as f}from\"../core/shaderTechnique/ShaderTechnique.js\";import{ShaderTechniqueConfiguration as v,parameter as g}from\"../core/shaderTechnique/ShaderTechniqueConfiguration.js\";import{Default3D as b}from\"../lib/DefaultVertexAttributeLocations.js\";import{blendingDefault as y,OITBlending as x,OITDepthTest as T,getOITPolygonOffset as P}from\"../lib/OrderIndependentTransparency.js\";import{Program as M}from\"../lib/Program.js\";import{stencilWriteMaskOn as S,stencilToolMaskBaseParams as C,stencilBaseAllZerosParams as O}from\"../lib/StencilUtils.js\";import{colorMixModes as D,bindScreenSizePerspective as w}from\"../materials/internal/MaterialUtil.js\";import{D as j}from\"../../../../chunks/DefaultMaterial.glsl.js\";import{makePipelineState as A,cullingParams as E,defaultDepthWriteParams as U,defaultColorWriteParams as z}from\"../../../webgl/renderState.js\";class R extends f{initializeProgram(e){const t=R.shader.get(),i=this.configuration,r=t.build({OITEnabled:0===i.transparencyPassType,output:i.output,viewingMode:e.viewingMode,receiveShadows:i.receiveShadows,slicePlaneEnabled:i.slicePlaneEnabled,sliceHighlightDisabled:i.sliceHighlightDisabled,sliceEnabledForVertexPrograms:!1,symbolColor:i.symbolColors,vvSize:i.vvSize,vvColor:i.vvColor,vvInstancingEnabled:!0,instanced:i.instanced,instancedColor:i.instancedColor,instancedDoublePrecision:i.instancedDoublePrecision,pbrMode:i.usePBR?i.isSchematic?2:1:0,hasMetalnessAndRoughnessTexture:i.hasMetalnessAndRoughnessTexture,hasEmissionTexture:i.hasEmissionTexture,hasOcclusionTexture:i.hasOcclusionTexture,hasNormalTexture:i.hasNormalTexture,hasColorTexture:i.hasColorTexture,receiveAmbientOcclusion:i.receiveAmbientOcclusion,useCustomDTRExponentForWater:!1,normalType:i.normalsTypeDerivate?3:0,doubleSidedMode:i.doubleSidedMode,vertexTangents:i.vertexTangents,attributeTextureCoordinates:i.hasMetalnessAndRoughnessTexture||i.hasEmissionTexture||i.hasOcclusionTexture||i.hasNormalTexture||i.hasColorTexture?1:0,textureAlphaPremultiplied:i.textureAlphaPremultiplied,attributeColor:i.vertexColors,screenSizePerspectiveEnabled:i.screenSizePerspective,verticalOffsetEnabled:i.verticalOffset,offsetBackfaces:i.offsetBackfaces,doublePrecisionRequiresObfuscation:c(e.rctx),alphaDiscardMode:i.alphaDiscardMode,supportsTextureAtlas:!1,multipassTerrainEnabled:i.multipassTerrainEnabled,cullAboveGround:i.cullAboveGround});return new M(e.rctx,r,b)}bindPass(e,t){var i,r;u(this.program,t.camera.projectionMatrix);const l=this.configuration.output;(1===this.configuration.output||t.multipassTerrainEnabled||3===l)&&this.program.setUniform2fv(\"cameraNearFar\",t.camera.nearFar),t.multipassTerrainEnabled&&(this.program.setUniform2fv(\"inverseViewport\",t.inverseViewport),a(this.program,t)),7===l&&(this.program.setUniform1f(\"opacity\",e.opacity),this.program.setUniform1f(\"layerOpacity\",e.layerOpacity),this.program.setUniform4fv(\"externalColor\",e.externalColor),this.program.setUniform1i(\"colorMixMode\",D[e.colorMixMode])),0===l?(t.lighting.setUniforms(this.program,!1),this.program.setUniform3fv(\"ambient\",e.ambient),this.program.setUniform3fv(\"diffuse\",e.diffuse),this.program.setUniform4fv(\"externalColor\",e.externalColor),this.program.setUniform1i(\"colorMixMode\",D[e.colorMixMode]),this.program.setUniform1f(\"opacity\",e.opacity),this.program.setUniform1f(\"layerOpacity\",e.layerOpacity),this.configuration.usePBR&&n(this.program,e,this.configuration.isSchematic)):4===l&&s(this.program,t),p(this.program,e),o(this.program,e,t),w(e.screenSizePerspective,this.program,\"screenSizePerspectiveAlignment\"),2!==e.textureAlphaMode&&3!==e.textureAlphaMode||this.program.setUniform1f(\"textureAlphaCutoff\",e.textureAlphaCutoff),null==(i=t.shadowMap)||i.bind(this.program),null==(r=t.ssaoHelper)||r.bind(this.program)}bindDraw(e){const o=this.configuration.instancedDoublePrecision?t(e.camera.viewInverseTransposeMatrix[3],e.camera.viewInverseTransposeMatrix[7],e.camera.viewInverseTransposeMatrix[11]):e.origin;h(this.program,o,e.camera.viewMatrix),this.program.rebindTextures(),(0===this.configuration.output||7===this.configuration.output||1===this.configuration.output&&this.configuration.screenSizePerspective||2===this.configuration.output&&this.configuration.screenSizePerspective||4===this.configuration.output&&this.configuration.screenSizePerspective)&&d(this.program,o,e.camera.viewInverseTransposeMatrix),2===this.configuration.output&&this.program.setUniformMatrix4fv(\"viewNormal\",e.camera.viewInverseTransposeMatrix),this.configuration.instancedDoublePrecision&&r.bindCustomOrigin(this.program,o),i(this.program,this.configuration,e.slicePlane,o),0===this.configuration.output&&l(this.program,e,o)}setPipeline(e,t){const i=this.configuration,r=3===e,o=2===e;return A({blending:0!==i.output&&7!==i.output||!i.transparent?null:r?y:x(e),culling:L(i)&&E(i.cullFace),depthTest:{func:T(e)},depthWrite:r||o?i.writeDepth&&U:null,colorWrite:z,stencilWrite:i.sceneHasOcludees?S:null,stencilTest:i.sceneHasOcludees?t?C:O:null,polygonOffset:r||o?null:P(i.enableOffset)})}initializePipeline(){return this._occludeePipelineState=this.setPipeline(this.configuration.transparencyPassType,!0),this.setPipeline(this.configuration.transparencyPassType,!1)}getPipelineState(e){return e?this._occludeePipelineState:this.pipeline}}function L(e){return e.cullFace?0!==e.cullFace:!e.slicePlaneEnabled&&(!e.transparent&&!e.doubleSidedMode)}R.shader=new m(j,(()=>import(\"./DefaultMaterial.glsl.js\")));class H extends v{constructor(){super(...arguments),this.output=0,this.alphaDiscardMode=1,this.doubleSidedMode=0,this.isSchematic=!1,this.vertexColors=!1,this.offsetBackfaces=!1,this.symbolColors=!1,this.vvSize=!1,this.vvColor=!1,this.verticalOffset=!1,this.receiveShadows=!1,this.slicePlaneEnabled=!1,this.sliceHighlightDisabled=!1,this.receiveAmbientOcclusion=!1,this.screenSizePerspective=!1,this.textureAlphaPremultiplied=!1,this.hasColorTexture=!1,this.usePBR=!1,this.hasMetalnessAndRoughnessTexture=!1,this.hasEmissionTexture=!1,this.hasOcclusionTexture=!1,this.hasNormalTexture=!1,this.instanced=!1,this.instancedColor=!1,this.instancedDoublePrecision=!1,this.vertexTangents=!1,this.normalsTypeDerivate=!1,this.writeDepth=!0,this.sceneHasOcludees=!1,this.transparent=!1,this.enableOffset=!0,this.cullFace=0,this.transparencyPassType=3,this.multipassTerrainEnabled=!1,this.cullAboveGround=!1}}e([g({count:8})],H.prototype,\"output\",void 0),e([g({count:4})],H.prototype,\"alphaDiscardMode\",void 0),e([g({count:3})],H.prototype,\"doubleSidedMode\",void 0),e([g()],H.prototype,\"isSchematic\",void 0),e([g()],H.prototype,\"vertexColors\",void 0),e([g()],H.prototype,\"offsetBackfaces\",void 0),e([g()],H.prototype,\"symbolColors\",void 0),e([g()],H.prototype,\"vvSize\",void 0),e([g()],H.prototype,\"vvColor\",void 0),e([g()],H.prototype,\"verticalOffset\",void 0),e([g()],H.prototype,\"receiveShadows\",void 0),e([g()],H.prototype,\"slicePlaneEnabled\",void 0),e([g()],H.prototype,\"sliceHighlightDisabled\",void 0),e([g()],H.prototype,\"receiveAmbientOcclusion\",void 0),e([g()],H.prototype,\"screenSizePerspective\",void 0),e([g()],H.prototype,\"textureAlphaPremultiplied\",void 0),e([g()],H.prototype,\"hasColorTexture\",void 0),e([g()],H.prototype,\"usePBR\",void 0),e([g()],H.prototype,\"hasMetalnessAndRoughnessTexture\",void 0),e([g()],H.prototype,\"hasEmissionTexture\",void 0),e([g()],H.prototype,\"hasOcclusionTexture\",void 0),e([g()],H.prototype,\"hasNormalTexture\",void 0),e([g()],H.prototype,\"instanced\",void 0),e([g()],H.prototype,\"instancedColor\",void 0),e([g()],H.prototype,\"instancedDoublePrecision\",void 0),e([g()],H.prototype,\"vertexTangents\",void 0),e([g()],H.prototype,\"normalsTypeDerivate\",void 0),e([g()],H.prototype,\"writeDepth\",void 0),e([g()],H.prototype,\"sceneHasOcludees\",void 0),e([g()],H.prototype,\"transparent\",void 0),e([g()],H.prototype,\"enableOffset\",void 0),e([g({count:3})],H.prototype,\"cullFace\",void 0),e([g({count:4})],H.prototype,\"transparencyPassType\",void 0),e([g()],H.prototype,\"multipassTerrainEnabled\",void 0),e([g()],H.prototype,\"cullAboveGround\",void 0);export{R as DefaultMaterialTechnique,H as DefaultMaterialTechniqueConfiguration};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{R as e}from\"../../../../chunks/RealisticTree.glsl.js\";import{doublePrecisionRequiresObfuscation as r}from\"../core/shaderLibrary/util/DoublePrecision.glsl.js\";import{ReloadableShaderModule as s}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{Default3D as i}from\"../lib/DefaultVertexAttributeLocations.js\";import{Program as o}from\"../lib/Program.js\";import{DefaultMaterialTechnique as t}from\"./DefaultMaterialTechnique.js\";class a extends t{initializeProgram(e){const s=a.shader.get(),t=this.configuration,l=s.build({OITEnabled:0===t.transparencyPassType,output:t.output,viewingMode:e.viewingMode,receiveShadows:t.receiveShadows,slicePlaneEnabled:t.slicePlaneEnabled,sliceHighlightDisabled:t.sliceHighlightDisabled,sliceEnabledForVertexPrograms:!1,symbolColor:t.symbolColors,vvSize:t.vvSize,vvColor:t.vvColor,vvInstancingEnabled:!0,instanced:t.instanced,instancedColor:t.instancedColor,instancedDoublePrecision:t.instancedDoublePrecision,pbrMode:t.usePBR?1:0,hasMetalnessAndRoughnessTexture:!1,hasEmissionTexture:!1,hasOcclusionTexture:!1,hasNormalTexture:!1,hasColorTexture:t.hasColorTexture,receiveAmbientOcclusion:t.receiveAmbientOcclusion,useCustomDTRExponentForWater:!1,normalType:0,doubleSidedMode:2,vertexTangents:!1,attributeTextureCoordinates:t.hasColorTexture?1:0,textureAlphaPremultiplied:t.textureAlphaPremultiplied,attributeColor:t.vertexColors,screenSizePerspectiveEnabled:t.screenSizePerspective,verticalOffsetEnabled:t.verticalOffset,offsetBackfaces:t.offsetBackfaces,doublePrecisionRequiresObfuscation:r(e.rctx),alphaDiscardMode:t.alphaDiscardMode,supportsTextureAtlas:!1,multipassTerrainEnabled:t.multipassTerrainEnabled,cullAboveGround:t.cullAboveGround});return new o(e.rctx,l,i)}}a.shader=new s(e,(()=>import(\"../core/shaderLibrary/default/RealisticTree.glsl.js\")));export{a as RealisticTreeTechnique};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{c as e}from\"../../../../chunks/mat3f64.js\";import{s as t,g as i,n as s,f as a,l as r,a as n,d as o,t as l}from\"../../../../chunks/vec3.js\";import{c as u,f as c}from\"../../../../chunks/vec3f64.js\";import{newLayout as h}from\"../../support/buffer/InterleavedLayout.js\";import{defaultMaskAlphaCutoff as d}from\"../core/shaderLibrary/util/AlphaDiscard.glsl.js\";import p from\"../lib/GLMaterialTexture.js\";import{Material as m,materialParametersDefaults as f}from\"../lib/Material.js\";import{OITPolygonOffsetLimit as v}from\"../lib/OrderIndependentTransparency.js\";import{getVerticalOffsetObject3D as g}from\"../lib/verticalOffsetUtils.js\";import{writeDefaultAttributes as C}from\"./internal/bufferWriterUtils.js\";import{verticalOffsetAtDistance as b,intersectTriangleGeometry as x}from\"./internal/MaterialUtil.js\";import{DefaultMaterialTechniqueConfiguration as q,DefaultMaterialTechnique as S}from\"../shaders/DefaultMaterialTechnique.js\";import{RealisticTreeTechnique as T}from\"../shaders/RealisticTreeTechnique.js\";class y extends m{constructor(e){super(e,O),this.supportsEdges=!0,this.techniqueConfig=new q,this.vertexBufferLayout=y.getVertexBufferLayout(this.params),this.instanceBufferLayout=e.instanced?y.getInstanceBufferLayout(this.params):null}isVisibleInPass(e){return 4!==e&&6!==e&&7!==e||this.params.castShadows}isVisible(){const e=this.params;if(!super.isVisible()||0===e.layerOpacity)return!1;const t=e.instanced,i=e.vertexColors,s=e.symbolColors,a=!!t&&t.indexOf(\"color\")>-1,r=e.vvColorEnabled,n=\"replace\"===e.colorMixMode,o=e.opacity>0,l=e.externalColor&&e.externalColor[3]>0;return i&&(a||r||s)?!!n||o:i?n?l:o:a||r||s?!!n||o:n?l:o}getTechniqueConfig(e,t){return this.techniqueConfig.output=e,this.techniqueConfig.hasNormalTexture=!!this.params.normalTextureId,this.techniqueConfig.hasColorTexture=!!this.params.textureId,this.techniqueConfig.vertexTangents=this.params.vertexTangents,this.techniqueConfig.instanced=!!this.params.instanced,this.techniqueConfig.instancedDoublePrecision=this.params.instancedDoublePrecision,this.techniqueConfig.vvSize=this.params.vvSizeEnabled,this.techniqueConfig.verticalOffset=null!==this.params.verticalOffset,this.techniqueConfig.screenSizePerspective=null!==this.params.screenSizePerspective,this.techniqueConfig.slicePlaneEnabled=this.params.slicePlaneEnabled,this.techniqueConfig.sliceHighlightDisabled=this.params.sliceHighlightDisabled,this.techniqueConfig.alphaDiscardMode=this.params.textureAlphaMode,this.techniqueConfig.normalsTypeDerivate=\"screenDerivative\"===this.params.normals,this.techniqueConfig.transparent=this.params.transparent,this.techniqueConfig.writeDepth=this.params.writeDepth,this.techniqueConfig.sceneHasOcludees=this.params.sceneHasOcludees,this.techniqueConfig.cullFace=this.params.slicePlaneEnabled?0:this.params.cullFace,this.techniqueConfig.multipassTerrainEnabled=!!t&&t.multipassTerrainEnabled,this.techniqueConfig.cullAboveGround=!!t&&t.cullAboveGround,0!==e&&7!==e||(this.techniqueConfig.vertexColors=this.params.vertexColors,this.techniqueConfig.symbolColors=this.params.symbolColors,this.params.treeRendering?this.techniqueConfig.doubleSidedMode=2:this.techniqueConfig.doubleSidedMode=this.params.doubleSided&&\"normal\"===this.params.doubleSidedType?1:this.params.doubleSided&&\"winding-order\"===this.params.doubleSidedType?2:0,this.techniqueConfig.instancedColor=!!this.params.instanced&&this.params.instanced.indexOf(\"color\")>-1,this.techniqueConfig.receiveShadows=this.params.receiveShadows&&this.params.shadowMappingEnabled,this.techniqueConfig.receiveAmbientOcclusion=!(!t||!t.ssaoEnabled)&&this.params.receiveSSAO,this.techniqueConfig.vvColor=this.params.vvColorEnabled,this.techniqueConfig.textureAlphaPremultiplied=!!this.params.textureAlphaPremultiplied,this.techniqueConfig.usePBR=this.params.usePBR,this.techniqueConfig.hasMetalnessAndRoughnessTexture=!!this.params.metallicRoughnessTextureId,this.techniqueConfig.hasEmissionTexture=!!this.params.emissiveTextureId,this.techniqueConfig.hasOcclusionTexture=!!this.params.occlusionTextureId,this.techniqueConfig.offsetBackfaces=!(!this.params.transparent||!this.params.offsetTransparentBackfaces),this.techniqueConfig.isSchematic=this.params.usePBR&&this.params.isSchematic,this.techniqueConfig.transparencyPassType=t?t.transparencyPassType:3,this.techniqueConfig.enableOffset=!t||t.camera.relativeElevation-1&&(t=t.vec4f(\"instanceColor\")),e.instanced&&e.instanced.indexOf(\"featureAttribute\")>-1&&(t=t.vec4f(\"instanceFeatureAttribute\")),t}}class P extends p{constructor(e){const t=e.material;super({...e,...t.params}),this.updateParameters()}updateParameters(e){const t=this._material.params;this.updateTexture(t.textureId),this._technique=this._techniqueRep.releaseAndAcquire(t.treeRendering?T:S,this._material.getTechniqueConfig(this._output,e),this._technique)}selectPipelines(){}_updateShadowState(e){e.shadowMappingEnabled!==this._material.params.shadowMappingEnabled&&this._material.setParameterValues({shadowMappingEnabled:e.shadowMappingEnabled})}_updateOccludeeState(e){e.hasOccludees!==this._material.params.sceneHasOcludees&&this._material.setParameterValues({sceneHasOcludees:e.hasOccludees})}ensureParameters(e){0!==this._output&&7!==this._output||(this._updateShadowState(e),this._updateOccludeeState(e)),this.updateParameters(e)}bind(e){this._technique.bindPass(this._material.params,e),this.bindTextures(this._technique.program)}beginSlot(e){return e===(this._material.params.transparent?this._material.params.writeDepth?5:8:3)}getPipelineState(e,t){return this._technique.getPipelineState(t)}}const O={textureId:void 0,initTextureTransparent:!1,isSchematic:!1,usePBR:!1,normalTextureId:void 0,vertexTangents:!1,occlusionTextureId:void 0,emissiveTextureId:void 0,metallicRoughnessTextureId:void 0,emissiveFactor:[0,0,0],mrrFactors:[0,1,.5],ambient:[.2,.2,.2],diffuse:[.8,.8,.8],externalColor:[1,1,1,1],colorMixMode:\"multiply\",opacity:1,layerOpacity:1,vertexColors:!1,symbolColors:!1,doubleSided:!1,doubleSidedType:\"normal\",cullFace:2,instanced:void 0,instancedDoublePrecision:!1,normals:\"default\",receiveSSAO:!0,receiveShadows:!0,castShadows:!0,shadowMappingEnabled:!1,verticalOffset:null,screenSizePerspective:null,slicePlaneEnabled:!1,sliceHighlightDisabled:!1,offsetTransparentBackfaces:!1,vvSizeEnabled:!1,vvSizeMinSize:[1,1,1],vvSizeMaxSize:[100,100,100],vvSizeOffset:[0,0,0],vvSizeFactor:[1,1,1],vvSizeValue:[1,1,1],vvColorEnabled:!1,vvColorValues:[0,0,0,0,0,0,0,0],vvColorColors:[1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0,0],vvSymbolAnchor:[0,0,0],vvSymbolRotationMatrix:e(),transparent:!1,writeDepth:!0,textureAlphaMode:0,textureAlphaCutoff:d,textureAlphaPremultiplied:!1,sceneHasOcludees:!1,...f};class M{constructor(e,t){this.vertexBufferLayout=e,this.instanceBufferLayout=t}allocate(e){return this.vertexBufferLayout.createBuffer(e)}elementCount(e){return e.indices.get(\"position\").length}write(e,t,i,s){C(t,this.vertexBufferLayout,e.transformation,e.invTranspTransformation,i,s)}}const w=u(),_=u(),B=c(0,0,1),E=u(),I=u(),A=u(),L=u();export{y as DefaultMaterial};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport e from\"../../../../request.js\";import{result as t}from\"../../../../core/asyncUtils.js\";import r from\"../../../../core/Error.js\";import n from\"../../../../core/Logger.js\";import{isSome as a,unwrap as s}from\"../../../../core/maybe.js\";import{throwIfAbortError as o}from\"../../../../core/promiseUtils.js\";import{Version as i}from\"../../../../core/Version.js\";import{d as u}from\"../../../../chunks/vec3f64.js\";import{empty as l,expandWithVec3 as c}from\"../../../../geometry/support/aaBoundingBox.js\";import{requestImage as p}from\"../../../../support/requestImageUtils.js\";import{Geometry as m}from\"../../webgl-engine/lib/Geometry.js\";import{Texture as f}from\"../../webgl-engine/lib/Texture.js\";import{DefaultMaterial as d}from\"../../webgl-engine/materials/DefaultMaterial.js\";const y=n.getLogger(\"esri.views.3d.layers.graphics.objectResourceUtils\");async function x(e,t){const r=await g(e,t);return{resource:r,textures:await A(r.textureDefinitions,t)}}async function g(r,n){const i=a(n)&&n.streamDataRequester;if(i)return h(r,i,n);const u=await t(e(r,s(n)));if(!0===u.ok)return u.value.data;o(u.error),w(u.error)}async function h(e,r,n){const a=await t(r.request(e,\"json\",n));if(!0===a.ok)return a.value;o(a.error),w(a.error.details.url)}function w(e){throw new r(\"\",`Request for object resource failed: ${e}`)}function v(e){const t=e.params,r=t.topology;let n=!0;switch(t.vertexAttributes||(y.warn(\"Geometry must specify vertex attributes\"),n=!1),t.topology){case\"PerAttributeArray\":break;case\"Indexed\":case null:case void 0:{const e=t.faces;if(e){if(t.vertexAttributes)for(const r in t.vertexAttributes){const t=e[r];t&&t.values?(null!=t.valueType&&\"UInt32\"!==t.valueType&&(y.warn(`Unsupported indexed geometry indices type '${t.valueType}', only UInt32 is currently supported`),n=!1),null!=t.valuesPerElement&&1!==t.valuesPerElement&&(y.warn(`Unsupported indexed geometry values per element '${t.valuesPerElement}', only 1 is currently supported`),n=!1)):(y.warn(`Indexed geometry does not specify face indices for '${r}' attribute`),n=!1)}}else y.warn(\"Indexed geometries must specify faces\"),n=!1;break}default:y.warn(`Unsupported topology '${r}'`),n=!1}e.params.material||(y.warn(\"Geometry requires material\"),n=!1);const a=e.params.vertexAttributes;for(const s in a){a[s].values||(y.warn(\"Geometries with externally defined attributes are not yet supported\"),n=!1)}return n}function b(e,t){const r=[],n=[],s=[],o=[],l=e.resource,c=i.parse(l.version||\"1.0\",\"wosr\");I.validate(c);const p=l.model.name,y=l.model.geometries,x=l.materialDefinitions,g=e.textures;let h=0;const w=new Map;for(let i=0;i0||\"transparency\"===r||\"maskAndTransparency\"===r,o={ambient:u(e.diffuse),diffuse:u(e.diffuse),opacity:1-(e.transparency||0),transparent:n,textureAlphaMode:j?U(j.alphaChannelUsage):void 0,textureAlphaCutoff:.33,textureId:I,initTextureTransparent:!0,doubleSided:!0,cullFace:0,colorMixMode:e.externalColorMixMode||\"tint\",textureAlphaPremultiplied:!0};a(t)&&t.materialParamsMixin&&Object.assign(o,t.materialParamsMixin),P=new d(o),s[l.material]||(s[l.material]={}),s[l.material][l.texture]=P}n.push(P);const T=new m(p,b);h+=b.position?b.position.length:0,r.push(T)}return{name:p,stageResources:{textures:o,materials:n,geometries:r},pivotOffset:l.model.pivotOffset,boundingBox:j(r),numberOfVertices:h,lodThreshold:null}}function j(e){const t=l();return e.forEach((e=>{const r=e.boundingInfo;a(r)&&(c(t,r.getBBMin()),c(t,r.getBBMax()))})),t}async function A(e,t){const r=[];for(const o in e){const n=e[o],s=n.images[0].data;if(!s){y.warn(\"Externally referenced texture data is not yet supported\");continue}const i=n.encoding+\";base64,\"+s,u=\"/textureDefinitions/\"+o,l={noUnpackFlip:!0,wrap:{s:10497,t:10497},preMultiplyAlpha:!0},c=a(t)&&t.disableTextures?Promise.resolve(null):p(i,t);r.push(c.then((e=>({refId:u,image:e,params:l,alphaChannelUsage:\"rgba\"===n.channels?n.alphaChannelUsage||\"transparency\":\"none\"}))))}const n=await Promise.all(r),s={};for(const a of n)s[a.refId]=a;return s}function U(e){switch(e){case\"mask\":return 2;case\"maskAndTransparency\":return 3;case\"none\":return 1;case\"transparency\":default:return 0}}function M(e){const t=e.params;return{id:1,material:t.material,texture:t.texture,region:t.texture}}const I=new i(1,2,\"wosr\");export{A as createTextureResources,x as load,b as processLoadResult};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{adjustStaticAGOUrl as e}from\"../../../../core/devEnvironmentUtils.js\";import{get as t,isSome as r,isNone as s}from\"../../../../core/maybe.js\";import{a as o}from\"../../../../chunks/mat3.js\";import{c as i}from\"../../../../chunks/mat3f64.js\";import{a}from\"../../../../chunks/mat4.js\";import{c as u}from\"../../../../chunks/mat4f64.js\";import{m as n,f as l,E as c,l as m,n as d,e as f}from\"../../../../chunks/vec3.js\";import{c as p}from\"../../../../chunks/vec3f64.js\";import{empty as x,expandWithVec3 as g}from\"../../../../geometry/support/aaBoundingBox.js\";import{BufferViewVec3f as h,BufferViewVec4f as b,BufferViewVec2f as v,BufferViewVec4u8 as R,BufferViewVec4u16 as y,BufferViewVec3u8 as M,BufferViewVec3u16 as B}from\"../../../../geometry/support/buffer/BufferView.js\";import{t as w,a as j,s as C}from\"../../../../chunks/vec32.js\";import{t as E,s as T}from\"../../../../chunks/vec42.js\";import{createBuffer as S}from\"../../../../geometry/support/buffer/utils.js\";import{DefaultLoadingContext as A}from\"../../glTF/DefaultLoadingContext.js\";import{load as O}from\"../../glTF/loader.js\";import{triangleFanToTriangles as F,triangleStripToTriangles as I,trianglesToTriangles as k}from\"../../glTF/internal/indexUtils.js\";import{load as L,processLoadResult as N}from\"./wosrLoader.js\";import{Geometry as P}from\"../../webgl-engine/lib/Geometry.js\";import{Texture as D}from\"../../webgl-engine/lib/Texture.js\";import{DefaultMaterial as _}from\"../../webgl-engine/materials/DefaultMaterial.js\";import{COLOR_GAMMA as z}from\"../../webgl-engine/materials/DefaultMaterial_COLOR_GAMMA.js\";import{n as V}from\"../../../../chunks/vec22.js\";import{c as W,f as G}from\"../../../../chunks/vec43.js\";import{c as U}from\"../../../../chunks/vec33.js\";async function $(s,o){const i=q(e(s));if(\"wosr\"===i.fileType){const e=await(o.cache?o.cache.loadWOSR(i.url,o):L(i.url,o)),t=N(e,o);return{lods:[t],referenceBoundingBox:t.boundingBox,isEsriSymbolResource:!1,isWosr:!0,remove:e.remove}}const a=await(o.cache?o.cache.loadGLTF(i.url,o,o.usePBR):O(new A(o.streamDataRequester),i.url,o,o.usePBR)),u=t(a.model.meta,\"ESRI_proxyEllipsoid\");a.meta.isEsriSymbolResource&&r(u)&&-1!==a.meta.uri.indexOf(\"/RealisticTrees/\")&&J(a,u);const n=a.meta.isEsriSymbolResource?{usePBR:o.usePBR,isSchematic:!1,treeRendering:a.customMeta.esriTreeRendering,mrrFactors:[0,1,.2]}:{usePBR:o.usePBR,isSchematic:!1,mrrFactors:[0,1,.5]},l={...o.materialParamsMixin,treeRendering:a.customMeta.esriTreeRendering};if(null!=i.specifiedLodIndex){const e=K(a,n,l,i.specifiedLodIndex);let t=e[0].boundingBox;if(0!==i.specifiedLodIndex){t=K(a,n,l,0)[0].boundingBox}return{lods:e,referenceBoundingBox:t,isEsriSymbolResource:a.meta.isEsriSymbolResource,isWosr:!1,remove:a.remove}}const c=K(a,n,l);return{lods:c,referenceBoundingBox:c[0].boundingBox,isEsriSymbolResource:a.meta.isEsriSymbolResource,isWosr:!1,remove:a.remove}}function q(e){const t=e.match(/(.*\\.(gltf|glb))(\\?lod=([0-9]+))?$/);if(t)return{fileType:\"gltf\",url:t[1],specifiedLodIndex:null!=t[4]?Number(t[4]):null};return e.match(/(.*\\.(json|json\\.gz))$/)?{fileType:\"wosr\",url:e,specifiedLodIndex:null}:{fileType:\"unknown\",url:e,specifiedLodIndex:null}}function K(e,t,s,a){const u=e.model,n=i(),l=new Array,c=new Map,m=new Map;return u.lods.forEach(((e,i)=>{if(void 0!==a&&i!==a)return;const d={name:e.name,stageResources:{textures:new Array,materials:new Array,geometries:new Array},lodThreshold:r(e.lodThreshold)?e.lodThreshold:null,pivotOffset:[0,0,0],numberOfVertices:0,boundingBox:x()};l.push(d),e.parts.forEach((e=>{const i=e.material+(e.attributes.normal?\"_normal\":\"\")+(e.attributes.color?\"_color\":\"\")+(e.attributes.texCoord0?\"_texCoord0\":\"\")+(e.attributes.tangent?\"_tangent\":\"\"),a=u.materials.get(e.material),l=r(e.attributes.texCoord0),f=r(e.attributes.normal);if(!c.has(i)){if(l){if(r(a.textureColor)&&!m.has(a.textureColor)){const e=u.textures.get(a.textureColor),t={...e.parameters,preMultiplyAlpha:!0};m.set(a.textureColor,new D(e.data,t))}if(r(a.textureNormal)&&!m.has(a.textureNormal)){const e=u.textures.get(a.textureNormal),t={...e.parameters,preMultiplyAlpha:!0};m.set(a.textureNormal,new D(e.data,t))}if(r(a.textureOcclusion)&&!m.has(a.textureOcclusion)){const e=u.textures.get(a.textureOcclusion),t={...e.parameters,preMultiplyAlpha:!0};m.set(a.textureOcclusion,new D(e.data,t))}if(r(a.textureEmissive)&&!m.has(a.textureEmissive)){const e=u.textures.get(a.textureEmissive),t={...e.parameters,preMultiplyAlpha:!0};m.set(a.textureEmissive,new D(e.data,t))}if(r(a.textureMetallicRoughness)&&!m.has(a.textureMetallicRoughness)){const e=u.textures.get(a.textureMetallicRoughness),t={...e.parameters,preMultiplyAlpha:!0};m.set(a.textureMetallicRoughness,new D(e.data,t))}}const o=a.color[0]**(1/z),n=a.color[1]**(1/z),d=a.color[2]**(1/z),p=a.emissiveFactor[0]**(1/z),x=a.emissiveFactor[1]**(1/z),g=a.emissiveFactor[2]**(1/z);c.set(i,new _({...t,transparent:\"BLEND\"===a.alphaMode,textureAlphaMode:Q(a.alphaMode),textureAlphaCutoff:a.alphaCutoff,diffuse:[o,n,d],ambient:[o,n,d],opacity:a.opacity,doubleSided:a.doubleSided,doubleSidedType:\"winding-order\",cullFace:a.doubleSided?0:2,vertexColors:!!e.attributes.color,vertexTangents:!!e.attributes.tangent,normals:f?\"default\":\"screenDerivative\",castShadows:!0,receiveSSAO:!0,textureId:r(a.textureColor)&&l?m.get(a.textureColor).id:void 0,colorMixMode:a.colorMixMode,normalTextureId:r(a.textureNormal)&&l?m.get(a.textureNormal).id:void 0,textureAlphaPremultiplied:!0,occlusionTextureId:r(a.textureOcclusion)&&l?m.get(a.textureOcclusion).id:void 0,emissiveTextureId:r(a.textureEmissive)&&l?m.get(a.textureEmissive).id:void 0,metallicRoughnessTextureId:r(a.textureMetallicRoughness)&&l?m.get(a.textureMetallicRoughness).id:void 0,emissiveFactor:[p,x,g],mrrFactors:[a.metallicFactor,a.roughnessFactor,t.mrrFactors[2]],isSchematic:!1,...s}))}const p=H(e.indices||e.attributes.position.count,e.primitiveType),x=e.attributes.position.count,A=S(h,x);w(A,e.attributes.position,e.transform);const O=[[\"position\",{data:A.typedBuffer,size:A.elementCount,exclusive:!0}]],F=[[\"position\",p]];if(r(e.attributes.normal)){const t=S(h,x);o(n,e.transform),j(t,e.attributes.normal,n),O.push([\"normal\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),F.push([\"normal\",p])}if(r(e.attributes.tangent)){const t=S(b,x);o(n,e.transform),E(t,e.attributes.tangent,n),O.push([\"tangent\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),F.push([\"tangent\",p])}if(r(e.attributes.texCoord0)){const t=S(v,x);V(t,e.attributes.texCoord0),O.push([\"uv0\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),F.push([\"uv0\",p])}if(r(e.attributes.color)){const t=S(R,x);if(4===e.attributes.color.elementCount)e.attributes.color instanceof b?T(t,e.attributes.color,255):e.attributes.color instanceof R?W(t,e.attributes.color):e.attributes.color instanceof y&&T(t,e.attributes.color,1/256);else{G(t,255,255,255,255);const r=new M(t.buffer,0,4);e.attributes.color instanceof h?C(r,e.attributes.color,255):e.attributes.color instanceof M?U(r,e.attributes.color):e.attributes.color instanceof B&&C(r,e.attributes.color,1/256)}O.push([\"color\",{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),F.push([\"color\",p])}const I=new P(O,F);d.stageResources.geometries.push(I),d.stageResources.materials.push(c.get(i)),l&&(r(a.textureColor)&&d.stageResources.textures.push(m.get(a.textureColor)),r(a.textureNormal)&&d.stageResources.textures.push(m.get(a.textureNormal)),r(a.textureOcclusion)&&d.stageResources.textures.push(m.get(a.textureOcclusion)),r(a.textureEmissive)&&d.stageResources.textures.push(m.get(a.textureEmissive)),r(a.textureMetallicRoughness)&&d.stageResources.textures.push(m.get(a.textureMetallicRoughness))),d.numberOfVertices+=x;const k=I.boundingInfo;r(k)&&(g(d.boundingBox,k.getBBMin()),g(d.boundingBox,k.getBBMax()))}))})),l}function Q(e){switch(e){case\"BLEND\":return 0;case\"MASK\":return 2;case\"OPAQUE\":return 1;default:return 0}}function H(e,t){switch(t){case 4:return k(e);case 5:return I(e);case 6:return F(e)}}function J(e,t){for(let r=0;r1&&f(y,y,b,a>-1?.2:Math.min(-4*a-3.8,1)),B.setVec(s,y),M.set(s,0,255*p),M.set(s,1,255*p),M.set(s,2,255*p),M.set(s,3,255)}i.attributes.normal=B,i.attributes.color=M}}}export{$ as fetch,K as gltfToEngineResources,q as parseUrl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction r(){const r=new Float32Array(16);return r[0]=1,r[5]=1,r[10]=1,r[15]=1,r}function n(r){const n=new Float32Array(16);return n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=r[3],n[4]=r[4],n[5]=r[5],n[6]=r[6],n[7]=r[7],n[8]=r[8],n[9]=r[9],n[10]=r[10],n[11]=r[11],n[12]=r[12],n[13]=r[13],n[14]=r[14],n[15]=r[15],n}function t(r,n,t,e,a,o,c,s,u,l,f,i,w,y,A,F){const _=new Float32Array(16);return _[0]=r,_[1]=n,_[2]=t,_[3]=e,_[4]=a,_[5]=o,_[6]=c,_[7]=s,_[8]=u,_[9]=l,_[10]=f,_[11]=i,_[12]=w,_[13]=y,_[14]=A,_[15]=F,_}function e(r,n){return new Float32Array(r,n,16)}const a=r();var o=Object.freeze({__proto__:null,create:r,clone:n,fromValues:t,createView:e,IDENTITY:a});export{a as I,n as a,e as b,r as c,t as f,o as m};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction n(n,o){e[0]=n,e[1]=n-e[0],o[0]=e[0],o[1]=e[1]}function o(n,o,t){for(let r=0;r 0.0 ? normalize(-params.normalView) : normalize(params.normalView);\n}`):2===e.doubleSidedMode?m.code.add(a`vec3 shadingNormal(ShadingNormalParameters params) {\nreturn gl_FrontFacing ? normalize(params.normalView) : normalize(-params.normalView);\n}`):m.code.add(a`vec3 shadingNormal(ShadingNormalParameters params) {\nreturn normalize(params.normalView);\n}`)}export{r as Normals};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction e(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15]]}function n(e,r,n,t,a,o,c,u,s,f,i,l,_,I,b,m){return[e,r,n,t,a,o,c,u,s,f,i,l,_,I,b,m]}function t(e,r){return new Float64Array(e,r,16)}const a=e();var o=Object.freeze({__proto__:null,create:e,clone:r,fromValues:n,createView:t,IDENTITY:a});export{a as I,t as a,r as b,e as c,n as f,o as m};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function o(o){o.attributes.add(\"position\",\"vec3\"),o.vertex.code.add(e`vec3 positionModel() { return position; }`)}export{o as PositionAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{ForwardLinearDepth as e}from\"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js\";import{Offset as o}from\"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js\";import{Slice as r}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{Transform as a}from\"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js\";import{InstancedDoublePrecision as i}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{NormalAttribute as l}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{PositionAttribute as t}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js\";import{SymbolColor as d}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js\";import{TextureCoordinateAttribute as n}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{VertexColor as s}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js\";import{VerticalOffset as c}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{DefaultMaterialAuxiliaryPasses as g}from\"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js\";import{ReadLinearDepth as v}from\"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js\";import{EvaluateAmbientOcclusion as m}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js\";import{EvaluateSceneLighting as p}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js\";import{multipassTerrainTest as u}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{PhysicallyBasedRendering as b}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js\";import{PhysicallyBasedRenderingParameters as f}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{ReadShadowMap as h}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{VisualVariables as w}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js\";import{symbolAlphaCutoff as x,DiscardOrAdjustAlpha as y}from\"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{MixExternalColor as C}from\"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js\";import{glsl as L}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{ShaderBuilder as M}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";function j(j){const E=new M,O=E.vertex.code,_=E.fragment.code;return E.vertex.uniforms.add(\"proj\",\"mat4\").add(\"view\",\"mat4\").add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\"),E.include(t),E.varyings.add(\"vpos\",\"vec3\"),E.include(w,j),E.include(i,j),E.include(c,j),0!==j.output&&7!==j.output||(E.include(l,j),E.include(a,{linearDepth:!1}),j.offsetBackfaces&&E.include(o),j.instancedColor&&E.attributes.add(\"instanceColor\",\"vec4\"),E.varyings.add(\"vNormalWorld\",\"vec3\"),E.varyings.add(\"localvpos\",\"vec3\"),j.multipassTerrainEnabled&&E.varyings.add(\"depth\",\"float\"),E.include(n,j),E.include(e,j),E.include(d,j),E.include(s,j),E.vertex.uniforms.add(\"externalColor\",\"vec4\"),E.varyings.add(\"vcolorExt\",\"vec4\"),O.add(L`\n void main(void) {\n forwardNormalizedVertexColor();\n vcolorExt = externalColor;\n ${j.instancedColor?\"vcolorExt *= instanceColor;\":\"\"}\n vcolorExt *= vvColor();\n vcolorExt *= getSymbolColor();\n forwardColorMixMode();\n\n if (vcolorExt.a < ${L.float(x)}) {\n gl_Position = vec4(1e38, 1e38, 1e38, 1.0);\n }\n else {\n vpos = calculateVPos();\n localvpos = vpos - view[3].xyz;\n vpos = subtractOrigin(vpos);\n vNormalWorld = dpNormal(vvLocalNormal(normalModel()));\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPosition(proj, view, vpos);\n ${j.offsetBackfaces?\"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, camPos);\":\"\"}\n }\n ${j.multipassTerrainEnabled?L`depth = (view * vec4(vpos, 1.0)).z;`:\"\"}\n forwardLinearDepth();\n forwardTextureCoordinates();\n }\n `)),7===j.output&&(E.include(r,j),E.include(y,j),j.multipassTerrainEnabled&&(E.fragment.include(v),E.include(u,j)),E.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),E.fragment.uniforms.add(\"view\",\"mat4\"),j.hasColorTexture&&E.fragment.uniforms.add(\"tex\",\"sampler2D\"),E.fragment.include(C),_.add(L`\n void main() {\n discardBySlice(vpos);\n ${j.multipassTerrainEnabled?L`terrainDepthTest(gl_FragCoord, depth);`:\"\"}\n ${j.hasColorTexture?L`\n vec4 texColor = texture2D(tex, vuv0);\n ${j.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:L`vec4 texColor = vec4(1.0);`}\n ${j.attributeColor?L`\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:L`\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n\n gl_FragColor = vec4(opacity_);\n }\n `)),0===j.output&&(E.include(r,j),E.include(p,j),E.include(m,j),E.include(y,j),j.receiveShadows&&E.include(h,j),j.multipassTerrainEnabled&&(E.fragment.include(v),E.include(u,j)),E.fragment.uniforms.add(\"camPos\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"ambient\",\"vec3\").add(\"diffuse\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),E.fragment.uniforms.add(\"view\",\"mat4\"),j.hasColorTexture&&E.fragment.uniforms.add(\"tex\",\"sampler2D\"),E.include(f,j),E.include(b,j),E.fragment.include(C),_.add(L`\n void main() {\n discardBySlice(vpos);\n ${j.multipassTerrainEnabled?L`terrainDepthTest(gl_FragCoord, depth);`:\"\"}\n ${j.hasColorTexture?L`\n vec4 texColor = texture2D(tex, vuv0);\n ${j.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:L`vec4 texColor = vec4(1.0);`}\n vec3 viewDirection = normalize(vpos - camPos);\n ${1===j.pbrMode?\"applyPBRFactors();\":\"\"}\n float ssao = evaluateAmbientOcclusionInverse();\n ssao *= getBakedOcclusion();\n\n float additionalAmbientScale = additionalDirectedAmbientLight(vpos + localOrigin);\n vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;\n ${j.receiveShadows?\"float shadow = readShadowMap(vpos, linearDepth);\":1===j.viewingMode?\"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);\":\"float shadow = 0.0;\"}\n vec3 matColor = max(ambient, diffuse);\n ${j.attributeColor?L`\n vec3 albedo_ = mixExternalColor(vColor.rgb * matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:L`\n vec3 albedo_ = mixExternalColor(matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n ${L`\n vec3 shadedNormal = normalize(vNormalWorld);\n albedo_ *= 1.2;\n vec3 viewForward = vec3(view[0][2], view[1][2], view[2][2]);\n float alignmentLightView = clamp(dot(viewForward, -lightingMainDirection), 0.0, 1.0);\n float transmittance = 1.0 - clamp(dot(viewForward, shadedNormal), 0.0, 1.0);\n float treeRadialFalloff = vColor.r;\n float backLightFactor = 0.5 * treeRadialFalloff * alignmentLightView * transmittance * (1.0 - shadow);\n additionalLight += backLightFactor * lightingMainIntensity;`}\n ${1===j.pbrMode||2===j.pbrMode?1===j.viewingMode?L`vec3 normalGround = normalize(vpos + localOrigin);`:L`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:L``}\n ${1===j.pbrMode||2===j.pbrMode?L`\n float additionalAmbientIrradiance = additionalAmbientIrradianceFactor * lightingMainIntensity[2];\n vec3 shadedColor = evaluateSceneLightingPBR(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight, viewDirection, normalGround, mrr, emission, additionalAmbientIrradiance);`:\"vec3 shadedColor = evaluateSceneLighting(shadedNormal, albedo_, shadow, 1.0 - ssao, additionalLight);\"}\n gl_FragColor = highlightSlice(vec4(shadedColor, opacity_), vpos);\n ${j.OITEnabled?\"gl_FragColor = premultiplyAlpha(gl_FragColor);\":\"\"}\n }\n `)),E.include(g,j),E}var E=Object.freeze({__proto__:null,build:j});export{E as R,j as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction e(){return[0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3]]}function n(e,r,n,t){return[e,r,n,t]}function t(e,r){return new Float64Array(e,r,4)}const a=e();var o=Object.freeze({__proto__:null,create:e,clone:r,fromValues:n,createView:t,IDENTITY:a});export{a as I,e as a,r as b,t as c,n as f,o as q};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../shaderModules/interfaces.js\";function a(a,r){0===r.output&&r.receiveShadows?(a.varyings.add(\"linearDepth\",\"float\"),a.vertex.code.add(e`void forwardLinearDepth() { linearDepth = gl_Position.w; }`)):1===r.output||3===r.output?(a.varyings.add(\"linearDepth\",\"float\"),a.vertex.uniforms.add(\"cameraNearFar\",\"vec2\"),a.vertex.code.add(e`void forwardLinearDepth() {\nlinearDepth = (-position_view().z - cameraNearFar[0]) / (cameraNearFar[1] - cameraNearFar[0]);\n}`)):a.vertex.code.add(e`void forwardLinearDepth() {}`)}export{a as ForwardLinearDepth};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as v}from\"../../shaderModules/interfaces.js\";function e(e,o){o.vvInstancingEnabled&&(o.vvSize||o.vvColor)&&e.attributes.add(\"instanceFeatureAttribute\",\"vec4\"),o.vvSize?(e.vertex.uniforms.add(\"vvSizeMinSize\",\"vec3\"),e.vertex.uniforms.add(\"vvSizeMaxSize\",\"vec3\"),e.vertex.uniforms.add(\"vvSizeOffset\",\"vec3\"),e.vertex.uniforms.add(\"vvSizeFactor\",\"vec3\"),e.vertex.uniforms.add(\"vvSymbolRotationMatrix\",\"mat3\"),e.vertex.uniforms.add(\"vvSymbolAnchor\",\"vec3\"),e.vertex.code.add(v`vec3 vvScale(vec4 _featureAttribute) {\nreturn clamp(vvSizeOffset + _featureAttribute.x * vvSizeFactor, vvSizeMinSize, vvSizeMaxSize);\n}\nvec4 vvTransformPosition(vec3 position, vec4 _featureAttribute) {\nreturn vec4(vvSymbolRotationMatrix * ( vvScale(_featureAttribute) * (position + vvSymbolAnchor)), 1.0);\n}`),e.vertex.code.add(v`\n const float eps = 1.192092896e-07;\n vec4 vvTransformNormal(vec3 _normal, vec4 _featureAttribute) {\n vec3 vvScale = clamp(vvSizeOffset + _featureAttribute.x * vvSizeFactor, vvSizeMinSize + eps, vvSizeMaxSize);\n return vec4(vvSymbolRotationMatrix * _normal / vvScale, 1.0);\n }\n\n ${o.vvInstancingEnabled?v`\n vec4 vvLocalNormal(vec3 _normal) {\n return vvTransformNormal(_normal, instanceFeatureAttribute);\n }\n\n vec4 localPosition() {\n return vvTransformPosition(position, instanceFeatureAttribute);\n }`:\"\"}\n `)):e.vertex.code.add(v`vec4 localPosition() { return vec4(position, 1.0); }\nvec4 vvLocalNormal(vec3 _normal) { return vec4(_normal, 1.0); }`),o.vvColor?(e.vertex.constants.add(\"vvColorNumber\",\"int\",8),e.vertex.code.add(v`\n uniform float vvColorValues[vvColorNumber];\n uniform vec4 vvColorColors[vvColorNumber];\n\n vec4 vvGetColor(vec4 featureAttribute, float values[vvColorNumber], vec4 colors[vvColorNumber]) {\n float value = featureAttribute.y;\n if (value <= values[0]) {\n return colors[0];\n }\n\n for (int i = 1; i < vvColorNumber; ++i) {\n if (values[i] >= value) {\n float f = (value - values[i-1]) / (values[i] - values[i-1]);\n return mix(colors[i-1], colors[i], f);\n }\n }\n return colors[vvColorNumber - 1];\n }\n\n ${o.vvInstancingEnabled?v`\n vec4 vvColor() {\n return vvGetColor(instanceFeatureAttribute, vvColorValues, vvColorColors);\n }`:\"\"}\n `)):e.vertex.code.add(v`vec4 vvColor() { return vec4(1.0); }`)}function o(v,e){e.vvSizeEnabled&&(v.setUniform3fv(\"vvSizeMinSize\",e.vvSizeMinSize),v.setUniform3fv(\"vvSizeMaxSize\",e.vvSizeMaxSize),v.setUniform3fv(\"vvSizeOffset\",e.vvSizeOffset),v.setUniform3fv(\"vvSizeFactor\",e.vvSizeFactor)),e.vvColorEnabled&&(v.setUniform1fv(\"vvColorValues\",e.vvColorValues),v.setUniform4fv(\"vvColorColors\",e.vvColorColors))}function r(v,e){o(v,e),e.vvOpacityEnabled&&(v.setUniform1fv(\"vvOpacityValues\",e.vvOpacityValues),v.setUniform1fv(\"vvOpacityOpacities\",e.vvOpacityOpacities))}function t(v,e){o(v,e),e.vvSizeEnabled&&(v.setUniform3fv(\"vvSymbolAnchor\",e.vvSymbolAnchor),v.setUniformMatrix3fv(\"vvSymbolRotationMatrix\",e.vvSymbolRotationMatrix))}export{e as VisualVariables,o as bindVisualVariablesUniforms,t as bindVisualVariablesUniformsForSymbols,r as bindVisualVariablesUniformsWithOpacity};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function o(o){const d=e`vec3 decodeNormal(vec2 f) {\nfloat z = 1.0 - abs(f.x) - abs(f.y);\nreturn vec3(f + sign(f) * min(z, 0.0), z);\n}`;o.fragment.code.add(d),o.vertex.code.add(d)}export{o as DecodeNormal};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{DecodeNormal as e}from\"../util/DecodeNormal.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";function o(o,d){0===d.normalType&&(o.attributes.add(\"normal\",\"vec3\"),o.vertex.code.add(r`vec3 normalModel() {\nreturn normal;\n}`)),1===d.normalType&&(o.include(e),o.attributes.add(\"normalCompressed\",\"vec2\"),o.vertex.code.add(r`vec3 normalModel() {\nreturn decodeNormal(normalCompressed);\n}`)),3===d.normalType&&(o.extensions.add(\"GL_OES_standard_derivatives\"),o.fragment.code.add(r`vec3 screenDerivativeNormal(vec3 positionView) {\nreturn normalize(cross(dFdx(positionView), dFdy(positionView)));\n}`))}export{o as NormalAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as o}from\"../../shaderModules/interfaces.js\";function t(t){t.vertex.code.add(o`const float PI = 3.141592653589793;`),t.fragment.code.add(o`const float PI = 3.141592653589793;\nconst float LIGHT_NORMALIZATION = 1.0 / PI;\nconst float INV_PI = 0.3183098861837907;\nconst float HALF_PI = 1.570796326794897;`)}export{t as PiUtils};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function r(r,t){r.fragment.uniforms.add(\"terrainDepthTexture\",\"sampler2D\"),r.fragment.uniforms.add(\"cameraNearFar\",\"vec2\"),r.fragment.uniforms.add(\"inverseViewport\",\"vec2\"),r.fragment.code.add(e`\n // Compare the linearized depths of fragment and terrain. Discard fragments on the wrong side of the terrain.\n void terrainDepthTest(vec4 fragCoord, float fragmentDepth){\n\n float terrainDepth = linearDepthFromTexture(terrainDepthTexture, fragCoord.xy * inverseViewport, cameraNearFar);\n if(fragmentDepth ${t.cullAboveGround?\">\":\"<=\"} terrainDepth){\n discard;\n }\n }\n `)}function t(e,r){r.multipassTerrainEnabled&&r.terrainLinearDepthTexture&&e.bindTexture(r.terrainLinearDepthTexture,\"terrainDepthTexture\")}export{t as bindMultipassTerrainTexture,r as multipassTerrainTest};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{RgbaFloatEncoding as a}from\"../util/RgbaFloatEncoding.glsl.js\";import{glsl as e}from\"../../shaderModules/interfaces.js\";function t(t){t.fragment.include(a),t.fragment.uniforms.add(\"uShadowMapTex\",\"sampler2D\"),t.fragment.uniforms.add(\"uShadowMapNum\",\"int\"),t.fragment.uniforms.add(\"uShadowMapDistance\",\"vec4\"),t.fragment.uniforms.add(\"uShadowMapMatrix\",\"mat4\",4),t.fragment.uniforms.add(\"uDepthHalfPixelSz\",\"float\"),t.fragment.code.add(e`int chooseCascade(float _linearDepth, out mat4 mat) {\nvec4 distance = uShadowMapDistance;\nfloat depth = _linearDepth;\nint i = depth < distance[1] ? 0 : depth < distance[2] ? 1 : depth < distance[3] ? 2 : 3;\nmat = i == 0 ? uShadowMapMatrix[0] : i == 1 ? uShadowMapMatrix[1] : i == 2 ? uShadowMapMatrix[2] : uShadowMapMatrix[3];\nreturn i;\n}\nvec3 lightSpacePosition(vec3 _vpos, mat4 mat) {\nvec4 lv = mat * vec4(_vpos, 1.0);\nlv.xy /= lv.w;\nreturn 0.5 * lv.xyz + vec3(0.5);\n}\nvec2 cascadeCoordinates(int i, vec3 lvpos) {\nreturn vec2(float(i - 2 * (i / 2)) * 0.5, float(i / 2) * 0.5) + 0.5 * lvpos.xy;\n}\nfloat readShadowMapDepth(vec2 uv, sampler2D _depthTex) {\nreturn rgba2float(texture2D(_depthTex, uv));\n}\nfloat posIsInShadow(vec2 uv, vec3 lvpos, sampler2D _depthTex) {\nreturn readShadowMapDepth(uv, _depthTex) < lvpos.z ? 1.0 : 0.0;\n}\nfloat filterShadow(vec2 uv, vec3 lvpos, float halfPixelSize, sampler2D _depthTex) {\nfloat texSize = 0.5 / halfPixelSize;\nvec2 st = fract((vec2(halfPixelSize) + uv) * texSize);\nfloat s00 = posIsInShadow(uv + vec2(-halfPixelSize, -halfPixelSize), lvpos, _depthTex);\nfloat s10 = posIsInShadow(uv + vec2(halfPixelSize, -halfPixelSize), lvpos, _depthTex);\nfloat s11 = posIsInShadow(uv + vec2(halfPixelSize, halfPixelSize), lvpos, _depthTex);\nfloat s01 = posIsInShadow(uv + vec2(-halfPixelSize, halfPixelSize), lvpos, _depthTex);\nreturn mix(mix(s00, s10, st.x), mix(s01, s11, st.x), st.y);\n}\nfloat readShadowMap(const in vec3 _vpos, float _linearDepth) {\nmat4 mat;\nint i = chooseCascade(_linearDepth, mat);\nif (i >= uShadowMapNum) { return 0.0; }\nvec3 lvpos = lightSpacePosition(_vpos, mat);\nif (lvpos.z >= 1.0) { return 0.0; }\nif (lvpos.x < 0.0 || lvpos.x > 1.0 || lvpos.y < 0.0 || lvpos.y > 1.0) { return 0.0; }\nvec2 uv = cascadeCoordinates(i, lvpos);\nreturn filterShadow(uv, lvpos, uDepthHalfPixelSz, uShadowMapTex);\n}`)}function o(a,e){e.shadowMappingEnabled&&(e.shadowMap.bind(a),e.shadowMap.bindView(a,e.origin))}function i(a,e,t){e.shadowMappingEnabled&&e.shadowMap.bindView(a,t)}function l(a,e){e.shadowMappingEnabled&&e.shadowMap.bindView(a,e.origin)}export{t as ReadShadowMap,o as bindReadShadowMapUniforms,l as bindReadShadowMapView,i as bindReadShadowMapViewCustomOrigin};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{RgbaFloatEncoding as e}from\"../util/RgbaFloatEncoding.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";function a(a){a.include(e),a.code.add(r`float linearDepthFromFloat(float depth, vec2 nearFar) {\nreturn -(depth * (nearFar[1] - nearFar[0]) + nearFar[0]);\n}\nfloat linearDepthFromTexture(sampler2D depthTex, vec2 uv, vec2 nearFar) {\nreturn linearDepthFromFloat(rgba2float(texture2D(depthTex, uv)), nearFar);\n}`)}export{a as ReadLinearDepth};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../../core/maybe.js\";import{f as s}from\"../../../../../chunks/vec3.js\";import{Z as i,c as a}from\"../../../../../chunks/vec3f64.js\";import{glsl as o}from\"../shaderModules/interfaces.js\";function c(e,s){if(s.slicePlaneEnabled){e.extensions.add(\"GL_OES_standard_derivatives\"),s.sliceEnabledForVertexPrograms&&(e.vertex.uniforms.add(\"slicePlaneOrigin\",\"vec3\"),e.vertex.uniforms.add(\"slicePlaneBasis1\",\"vec3\"),e.vertex.uniforms.add(\"slicePlaneBasis2\",\"vec3\")),e.fragment.uniforms.add(\"slicePlaneOrigin\",\"vec3\"),e.fragment.uniforms.add(\"slicePlaneBasis1\",\"vec3\"),e.fragment.uniforms.add(\"slicePlaneBasis2\",\"vec3\");const i=o`struct SliceFactors {\nfloat front;\nfloat side0;\nfloat side1;\nfloat side2;\nfloat side3;\n};\nSliceFactors calculateSliceFactors(vec3 pos) {\nvec3 rel = pos - slicePlaneOrigin;\nvec3 slicePlaneNormal = -cross(slicePlaneBasis1, slicePlaneBasis2);\nfloat slicePlaneW = -dot(slicePlaneNormal, slicePlaneOrigin);\nfloat basis1Len2 = dot(slicePlaneBasis1, slicePlaneBasis1);\nfloat basis2Len2 = dot(slicePlaneBasis2, slicePlaneBasis2);\nfloat basis1Dot = dot(slicePlaneBasis1, rel);\nfloat basis2Dot = dot(slicePlaneBasis2, rel);\nreturn SliceFactors(\ndot(slicePlaneNormal, pos) + slicePlaneW,\n-basis1Dot - basis1Len2,\nbasis1Dot - basis1Len2,\n-basis2Dot - basis2Len2,\nbasis2Dot - basis2Len2\n);\n}\nbool sliceByFactors(SliceFactors factors) {\nreturn factors.front < 0.0\n&& factors.side0 < 0.0\n&& factors.side1 < 0.0\n&& factors.side2 < 0.0\n&& factors.side3 < 0.0;\n}\nbool sliceEnabled() {\nreturn dot(slicePlaneBasis1, slicePlaneBasis1) != 0.0;\n}\nbool sliceByPlane(vec3 pos) {\nreturn sliceEnabled() && sliceByFactors(calculateSliceFactors(pos));\n}\n#define rejectBySlice(_pos_) sliceByPlane(_pos_)\n#define discardBySlice(_pos_) { if (sliceByPlane(_pos_)) discard; }`,a=o`vec4 applySliceHighlight(vec4 color, vec3 pos) {\nSliceFactors factors = calculateSliceFactors(pos);\nif (sliceByFactors(factors)) {\nreturn color;\n}\nconst float HIGHLIGHT_WIDTH = 1.0;\nconst vec4 HIGHLIGHT_COLOR = vec4(0.0, 0.0, 0.0, 0.3);\nfactors.front /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.front);\nfactors.side0 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side0);\nfactors.side1 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side1);\nfactors.side2 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side2);\nfactors.side3 /= (2.0 * HIGHLIGHT_WIDTH) * fwidth(factors.side3);\nfloat highlightFactor = (1.0 - step(0.5, factors.front))\n* (1.0 - step(0.5, factors.side0))\n* (1.0 - step(0.5, factors.side1))\n* (1.0 - step(0.5, factors.side2))\n* (1.0 - step(0.5, factors.side3));\nreturn mix(color, vec4(HIGHLIGHT_COLOR.rgb, color.a), highlightFactor * HIGHLIGHT_COLOR.a);\n}`,c=s.sliceHighlightDisabled?o`#define highlightSlice(_color_, _pos_) (_color_)`:o`\n ${a}\n #define highlightSlice(_color_, _pos_) (sliceEnabled() ? applySliceHighlight(_color_, _pos_) : (_color_))\n `;s.sliceEnabledForVertexPrograms&&e.vertex.code.add(i),e.fragment.code.add(i),e.fragment.code.add(c)}else{const i=o`#define rejectBySlice(_pos_) false\n#define discardBySlice(_pos_) {}\n#define highlightSlice(_color_, _pos_) (_color_)`;s.sliceEnabledForVertexPrograms&&e.vertex.code.add(i),e.fragment.code.add(i)}}function l(e,s,i){r(e,s,i.slicePlane,i.origin)}function r(a,o,c,l){o.slicePlaneEnabled&&(e(c)?(l?(s(t,c.origin,l),a.setUniform3fv(\"slicePlaneOrigin\",t)):a.setUniform3fv(\"slicePlaneOrigin\",c.origin),a.setUniform3fv(\"slicePlaneBasis1\",c.basis1),a.setUniform3fv(\"slicePlaneBasis2\",c.basis2)):(a.setUniform3fv(\"slicePlaneBasis1\",i),a.setUniform3fv(\"slicePlaneBasis2\",i),a.setUniform3fv(\"slicePlaneOrigin\",i)))}const t=a();export{c as Slice,r as bindSliceUniforms,l as bindSliceUniformsWithOrigin};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{c as e}from\"../../../../../../chunks/vec3f64.js\";import{DoublePrecision as i}from\"../util/DoublePrecision.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";import{encodeDoubleArraySplit as n}from\"../../../lib/doublePrecisionUtils.js\";function o(e,n){n.instanced&&n.instancedDoublePrecision&&(e.attributes.add(\"modelOriginHi\",\"vec3\"),e.attributes.add(\"modelOriginLo\",\"vec3\"),e.attributes.add(\"model\",\"mat3\"),e.attributes.add(\"modelNormal\",\"mat3\")),n.instancedDoublePrecision&&(e.vertex.include(i,n),e.vertex.uniforms.add(\"viewOriginHi\",\"vec3\"),e.vertex.uniforms.add(\"viewOriginLo\",\"vec3\"));const o=[r`\n vec3 calculateVPos() {\n ${n.instancedDoublePrecision?\"return model * localPosition().xyz;\":\"return localPosition().xyz;\"}\n }\n `,r`\n vec3 subtractOrigin(vec3 _pos) {\n ${n.instancedDoublePrecision?r`\n vec3 originDelta = dpAdd(viewOriginHi, viewOriginLo, -modelOriginHi, -modelOriginLo);\n return _pos - originDelta;`:\"return vpos;\"}\n }\n `,r`\n vec3 dpNormal(vec4 _normal) {\n ${n.instancedDoublePrecision?\"return normalize(modelNormal * _normal.xyz);\":\"return normalize(_normal.xyz);\"}\n }\n `,r`\n vec3 dpNormalView(vec4 _normal) {\n ${n.instancedDoublePrecision?\"return normalize((viewNormal * vec4(modelNormal * _normal.xyz, 1.0)).xyz);\":\"return normalize((viewNormal * _normal).xyz);\"}\n }\n `,n.vertexTangents?r`\n vec4 dpTransformVertexTangent(vec4 _tangent) {\n ${n.instancedDoublePrecision?\"return vec4(modelNormal * _tangent.xyz, _tangent.w);\":\"return _tangent;\"}\n\n }\n `:r``];e.vertex.code.add(o[0]),e.vertex.code.add(o[1]),e.vertex.code.add(o[2]),2===n.output&&e.vertex.code.add(o[3]),e.vertex.code.add(o[4])}!function(e){class i{}function r(e,i){n(i,t,a,3),e.setUniform3fv(\"viewOriginHi\",t),e.setUniform3fv(\"viewOriginLo\",a)}e.Uniforms=i,e.bindCustomOrigin=r}(o||(o={}));const t=e(),a=e();export{o as InstancedDoublePrecision};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as t}from\"../../shaderModules/interfaces.js\";import{webglValidateShadersEnabled as e}from\"../../../../../webgl/RenderingContext.js\";function u(u,o){const r=t`\n /*\n * ${o.name}\n * ${0===o.output?\"RenderOutput: Color\":1===o.output?\"RenderOutput: Depth\":3===o.output?\"RenderOutput: Shadow\":2===o.output?\"RenderOutput: Normal\":4===o.output?\"RenderOutput: Highlight\":\"\"}\n */\n `;e()&&(u.fragment.code.add(r),u.vertex.code.add(r))}export{u as HeaderComment};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nfunction e(){return[1,0,0,0,1,0,0,0,1]}function r(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8]]}function n(e,r,n,t,a,o,u,c,f){return[e,r,n,t,a,o,u,c,f]}function t(e,r){return new Float64Array(e,r,9)}var a=Object.freeze({__proto__:null,create:e,clone:r,fromValues:n,createView:t});export{t as a,r as b,e as c,n as f,a as m};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";function t(t,d){1===d.attributeTextureCoordinates&&(t.attributes.add(\"uv0\",\"vec2\"),t.varyings.add(\"vuv0\",\"vec2\"),t.vertex.code.add(e`void forwardTextureCoordinates() {\nvuv0 = uv0;\n}`)),2===d.attributeTextureCoordinates&&(t.attributes.add(\"uv0\",\"vec2\"),t.varyings.add(\"vuv0\",\"vec2\"),t.attributes.add(\"uvRegion\",\"vec4\"),t.varyings.add(\"vuvRegion\",\"vec4\"),t.vertex.code.add(e`void forwardTextureCoordinates() {\nvuv0 = uv0;\nvuvRegion = uvRegion;\n}`)),0===d.attributeTextureCoordinates&&t.vertex.code.add(e`void forwardTextureCoordinates() {}`)}export{t as TextureCoordinateAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as i}from\"../../shaderModules/interfaces.js\";function n(n,t){const e=n.fragment,a=void 0!==t.lightingSphericalHarmonicsOrder?t.lightingSphericalHarmonicsOrder:2;0===a?(e.uniforms.add(\"lightingAmbientSH0\",\"vec3\"),e.code.add(i`vec3 calculateAmbientIrradiance(vec3 normal, float ambientOcclusion) {\nvec3 ambientLight = 0.282095 * lightingAmbientSH0;\nreturn ambientLight * (1.0 - ambientOcclusion);\n}`)):1===a?(e.uniforms.add(\"lightingAmbientSH_R\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_G\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_B\",\"vec4\"),e.code.add(i`vec3 calculateAmbientIrradiance(vec3 normal, float ambientOcclusion) {\nvec4 sh0 = vec4(\n0.282095,\n0.488603 * normal.x,\n0.488603 * normal.z,\n0.488603 * normal.y\n);\nvec3 ambientLight = vec3(\ndot(lightingAmbientSH_R, sh0),\ndot(lightingAmbientSH_G, sh0),\ndot(lightingAmbientSH_B, sh0)\n);\nreturn ambientLight * (1.0 - ambientOcclusion);\n}`)):2===a&&(e.uniforms.add(\"lightingAmbientSH0\",\"vec3\"),e.uniforms.add(\"lightingAmbientSH_R1\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_G1\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_B1\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_R2\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_G2\",\"vec4\"),e.uniforms.add(\"lightingAmbientSH_B2\",\"vec4\"),e.code.add(i`vec3 calculateAmbientIrradiance(vec3 normal, float ambientOcclusion) {\nvec3 ambientLight = 0.282095 * lightingAmbientSH0;\nvec4 sh1 = vec4(\n0.488603 * normal.x,\n0.488603 * normal.z,\n0.488603 * normal.y,\n1.092548 * normal.x * normal.y\n);\nvec4 sh2 = vec4(\n1.092548 * normal.y * normal.z,\n0.315392 * (3.0 * normal.z * normal.z - 1.0),\n1.092548 * normal.x * normal.z,\n0.546274 * (normal.x * normal.x - normal.y * normal.y)\n);\nambientLight += vec3(\ndot(lightingAmbientSH_R1, sh1),\ndot(lightingAmbientSH_G1, sh1),\ndot(lightingAmbientSH_B1, sh1)\n);\nambientLight += vec3(\ndot(lightingAmbientSH_R2, sh2),\ndot(lightingAmbientSH_G2, sh2),\ndot(lightingAmbientSH_B2, sh2)\n);\nreturn ambientLight * (1.0 - ambientOcclusion);\n}`),1!==t.pbrMode&&2!==t.pbrMode||e.code.add(i`const vec3 skyTransmittance = vec3(0.9, 0.9, 1.0);\nvec3 calculateAmbientRadiance(float ambientOcclusion)\n{\nvec3 ambientLight = 1.2 * (0.282095 * lightingAmbientSH0) - 0.2;\nreturn ambientLight *= (1.0 - ambientOcclusion) * skyTransmittance;\n}`))}export{n as EvaluateAmbientLighting};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as i}from\"../../shaderModules/interfaces.js\";function n(n){const t=n.fragment;t.uniforms.add(\"lightingMainDirection\",\"vec3\"),t.uniforms.add(\"lightingMainIntensity\",\"vec3\"),t.uniforms.add(\"lightingFixedFactor\",\"float\"),t.code.add(i`vec3 evaluateMainLighting(vec3 normal_global, float shadowing) {\nfloat dotVal = clamp(dot(normal_global, lightingMainDirection), 0.0, 1.0);\ndotVal = mix(dotVal, 1.0, lightingFixedFactor);\nreturn lightingMainIntensity * ((1.0 - shadowing) * dotVal);\n}`)}export{n as EvaluateMainLighting};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{EvaluateAmbientLighting as i}from\"./EvaluateAmbientLighting.glsl.js\";import{EvaluateAmbientOcclusion as n}from\"./EvaluateAmbientOcclusion.glsl.js\";import{EvaluateMainLighting as o}from\"./EvaluateMainLighting.glsl.js\";import{PhysicallyBasedRendering as e}from\"./PhysicallyBasedRendering.glsl.js\";import{PiUtils as t}from\"./PiUtils.glsl.js\";import{ReadShadowMap as a}from\"./ReadShadowMap.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";function l(l,d){const c=l.fragment;l.include(o),l.include(n,d),0!==d.pbrMode&&l.include(e,d),l.include(i,d),d.receiveShadows&&l.include(a,d),c.uniforms.add(\"lightingGlobalFactor\",\"float\"),c.uniforms.add(\"ambientBoostFactor\",\"float\"),l.include(t),c.code.add(r`\n const float GAMMA_SRGB = 2.1;\n const float INV_GAMMA_SRGB = 0.4761904;\n ${0===d.pbrMode?\"\":\"const vec3 GROUND_REFLECTANCE = vec3(0.2);\"}\n `),c.code.add(r`\n float additionalDirectedAmbientLight(vec3 vPosWorld) {\n float vndl = dot(${1===d.viewingMode?r`normalize(vPosWorld)`:r`vec3(0.0, 0.0, 1.0)`}, lightingMainDirection);\n return smoothstep(0.0, 1.0, clamp(vndl * 2.5, 0.0, 1.0));\n }\n `),c.code.add(r`vec3 evaluateAdditionalLighting(float ambientOcclusion, vec3 vPosWorld) {\nfloat additionalAmbientScale = additionalDirectedAmbientLight(vPosWorld);\nreturn (1.0 - ambientOcclusion) * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor * lightingMainIntensity;\n}`),0===d.pbrMode||4===d.pbrMode?c.code.add(r`vec3 evaluateSceneLighting(vec3 normalWorld, vec3 albedo, float shadow, float ssao, vec3 additionalLight)\n{\nvec3 mainLighting = evaluateMainLighting(normalWorld, shadow);\nvec3 ambientLighting = calculateAmbientIrradiance(normalWorld, ssao);\nvec3 albedoLinear = pow(albedo, vec3(GAMMA_SRGB));\nvec3 totalLight = mainLighting + ambientLighting + additionalLight;\ntotalLight = min(totalLight, vec3(PI));\nvec3 outColor = vec3((albedoLinear / PI) * totalLight);\nreturn pow(outColor, vec3(INV_GAMMA_SRGB));\n}`):1!==d.pbrMode&&2!==d.pbrMode||(c.code.add(r`const float fillLightIntensity = 0.25;\nconst float horizonLightDiffusion = 0.4;\nconst float additionalAmbientIrradianceFactor = 0.02;\nvec3 evaluateSceneLightingPBR(vec3 normal, vec3 albedo, float shadow, float ssao, vec3 additionalLight, vec3 viewDir, vec3 normalGround, vec3 mrr, vec3 _emission, float additionalAmbientIrradiance)\n{\nvec3 viewDirection = -viewDir;\nvec3 mainLightDirection = lightingMainDirection;\nvec3 h = normalize(viewDirection + mainLightDirection);\nPBRShadingInfo inputs;\ninputs.NdotL = clamp(dot(normal, mainLightDirection), 0.001, 1.0);\ninputs.NdotV = clamp(abs(dot(normal, viewDirection)), 0.001, 1.0);\ninputs.NdotH = clamp(dot(normal, h), 0.0, 1.0);\ninputs.VdotH = clamp(dot(viewDirection, h), 0.0, 1.0);\ninputs.NdotNG = clamp(dot(normal, normalGround), -1.0, 1.0);\nvec3 reflectedView = normalize(reflect(viewDirection, normal));\ninputs.RdotNG = clamp(dot(reflectedView, normalGround), -1.0, 1.0);\ninputs.albedoLinear = pow(albedo, vec3(GAMMA_SRGB));\ninputs.ssao = ssao;\ninputs.metalness = mrr[0];\ninputs.roughness = clamp(mrr[1] * mrr[1], 0.001, 0.99);`),c.code.add(r`inputs.f0 = (0.16 * mrr[2] * mrr[2]) * (1.0 - inputs.metalness) + inputs.albedoLinear * inputs.metalness;\ninputs.f90 = vec3(clamp(dot(inputs.f0, vec3(50.0 * 0.33)), 0.0, 1.0));\ninputs.diffuseColor = inputs.albedoLinear * (vec3(1.0) - inputs.f0) * (1.0 - inputs.metalness);`),c.code.add(r`vec3 ambientDir = vec3(5.0 * normalGround[1] - normalGround[0] * normalGround[2], - 5.0 * normalGround[0] - normalGround[2] * normalGround[1], normalGround[1] * normalGround[1] + normalGround[0] * normalGround[0]);\nambientDir = ambientDir != vec3(0.0)? normalize(ambientDir) : normalize(vec3(5.0, -1.0, 0.0));\ninputs.NdotAmbDir = abs(dot(normal, ambientDir));\nvec3 mainLightIrradianceComponent = inputs.NdotL * (1.0 - shadow) * lightingMainIntensity;\nvec3 fillLightsIrradianceComponent = inputs.NdotAmbDir * lightingMainIntensity * fillLightIntensity;\nvec3 ambientLightIrradianceComponent = calculateAmbientIrradiance(normal, ssao) + additionalLight;\ninputs.skyIrradianceToSurface = ambientLightIrradianceComponent + mainLightIrradianceComponent + fillLightsIrradianceComponent ;\ninputs.groundIrradianceToSurface = GROUND_REFLECTANCE * ambientLightIrradianceComponent + mainLightIrradianceComponent + fillLightsIrradianceComponent ;`),c.code.add(r`vec3 horizonRingDir = inputs.RdotNG * normalGround - reflectedView;\nvec3 horizonRingH = normalize(viewDirection + horizonRingDir);\ninputs.NdotH_Horizon = dot(normal, horizonRingH);\nvec3 mainLightRadianceComponent = normalDistribution(inputs.NdotH, inputs.roughness) * lightingMainIntensity * (1.0 - shadow);\nvec3 horizonLightRadianceComponent = normalDistribution(inputs.NdotH_Horizon, min(inputs.roughness + horizonLightDiffusion, 1.0)) * lightingMainIntensity * fillLightIntensity;\nvec3 ambientLightRadianceComponent = calculateAmbientRadiance(ssao) + additionalLight;\ninputs.skyRadianceToSurface = ambientLightRadianceComponent + mainLightRadianceComponent + horizonLightRadianceComponent;\ninputs.groundRadianceToSurface = GROUND_REFLECTANCE * (ambientLightRadianceComponent + horizonLightRadianceComponent) + mainLightRadianceComponent;\ninputs.averageAmbientRadiance = ambientLightIrradianceComponent[1] * (1.0 + GROUND_REFLECTANCE[1]);`),c.code.add(r`\n vec3 reflectedColorComponent = evaluateEnvironmentIllumination(inputs);\n vec3 additionalMaterialReflectanceComponent = inputs.albedoLinear * additionalAmbientIrradiance;\n vec3 emissionComponent = pow(_emission, vec3(GAMMA_SRGB));\n vec3 outColorLinear = reflectedColorComponent + additionalMaterialReflectanceComponent + emissionComponent;\n ${2===d.pbrMode?r`vec3 outColor = pow(max(vec3(0.0), outColorLinear - 0.005 * inputs.averageAmbientRadiance), vec3(INV_GAMMA_SRGB));`:r`vec3 outColor = pow(blackLevelSoftCompression(outColorLinear, inputs), vec3(INV_GAMMA_SRGB));`}\n return outColor;\n }\n `))}export{l as EvaluateSceneLighting};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{glsl as a}from\"../../shaderModules/interfaces.js\";const d=.1,o=.001;function r(d,r){const e=d.fragment;switch(r.alphaDiscardMode){case 0:e.code.add(a`\n #define discardOrAdjustAlpha(color) { if (color.a < ${a.float(o)}) { discard; } }\n `);break;case 1:e.code.add(a`void discardOrAdjustAlpha(inout vec4 color) {\ncolor.a = 1.0;\n}`);break;case 2:e.uniforms.add(\"textureAlphaCutoff\",\"float\"),e.code.add(a`#define discardOrAdjustAlpha(color) { if (color.a < textureAlphaCutoff) { discard; } else { color.a = 1.0; } }`);break;case 3:d.fragment.uniforms.add(\"textureAlphaCutoff\",\"float\"),d.fragment.code.add(a`#define discardOrAdjustAlpha(color) { if (color.a < textureAlphaCutoff) { discard; } }`)}}export{r as DiscardOrAdjustAlpha,d as defaultMaskAlphaCutoff,o as symbolAlphaCutoff};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.20/esri/copyright.txt for details.\n*/\nimport{BufferViewVec2f as e,BufferViewVec2f64 as t,BufferViewVec3f as i,BufferViewVec3f64 as s,BufferViewVec4f as r,BufferViewVec4f64 as n,BufferViewMat3f as h,BufferViewMat3f64 as d,BufferViewMat4f as u,BufferViewMat4f64 as f,BufferViewVec4u8 as p,BufferViewFloat as l,BufferViewFloat64 as a,BufferViewUint8 as o,BufferViewUint16 as c,BufferViewInt8 as F,BufferViewVec2i8 as m,BufferViewVec2i16 as y,BufferViewVec2u8 as b,BufferViewVec4u16 as w,BufferViewUint32 as g}from\"../../../../geometry/support/buffer/BufferView.js\";import{elementTypeSize as v}from\"../../../../geometry/support/buffer/types.js\";class N{constructor(e,t){this.layout=e,this.buffer=\"number\"==typeof t?new ArrayBuffer(t*e.stride):t;for(const i of e.fieldNames){const t=e.fields.get(i);this[i]=new t.constructor(this.buffer,t.offset,this.stride)}}get stride(){return this.layout.stride}get count(){return this.buffer.byteLength/this.stride}get byteLength(){return this.buffer.byteLength}getField(e,t){const i=this[e];return i&&i.elementCount===t.ElementCount&&i.elementType===t.ElementType?i:null}slice(e,t){return new N(this.layout,this.buffer.slice(e*this.stride,t*this.stride))}copyFrom(e,t,i,s){const r=this.stride;if(r%4==0){const n=new Uint32Array(e.buffer,t*r,s*r/4);new Uint32Array(this.buffer,i*r,s*r/4).set(n)}else{const n=new Uint8Array(e.buffer,t*r,s*r);new Uint8Array(this.buffer,i*r,s*r).set(n)}}}class T{constructor(){this.stride=0,this.fields=new Map,this.fieldNames=[]}vec2f(t,i){return this.appendField(t,e,i),this}vec2f64(e,i){return this.appendField(e,t,i),this}vec3f(e,t){return this.appendField(e,i,t),this}vec3f64(e,t){return this.appendField(e,s,t),this}vec4f(e,t){return this.appendField(e,r,t),this}vec4f64(e,t){return this.appendField(e,n,t),this}mat3f(e,t){return this.appendField(e,h,t),this}mat3f64(e,t){return this.appendField(e,d,t),this}mat4f(e,t){return this.appendField(e,u,t),this}mat4f64(e,t){return this.appendField(e,f,t),this}vec4u8(e,t){return this.appendField(e,p,t),this}f32(e,t){return this.appendField(e,l,t),this}f64(e,t){return this.appendField(e,a,t),this}u8(e,t){return this.appendField(e,o,t),this}u16(e,t){return this.appendField(e,c,t),this}i8(e,t){return this.appendField(e,F,t),this}vec2i8(e,t){return this.appendField(e,m,t),this}vec2i16(e,t){return this.appendField(e,y,t),this}vec2u8(e,t){return this.appendField(e,b,t),this}vec4u16(e,t){return this.appendField(e,w,t),this}u32(e,t){return this.appendField(e,g,t),this}appendField(e,t,i){const s=t.ElementCount*v(t.ElementType),r=this.stride;this.fields.set(e,{size:s,constructor:t,offset:r,optional:i}),this.stride+=s,this.fieldNames.push(e)}alignTo(e){return this.stride=Math.floor((this.stride+e-1)/e)*e,this}hasField(e){return this.fieldNames.indexOf(e)>=0}createBuffer(e){return new N(this,e)}createView(e){return new N(this,e)}clone(){const e=new T;return e.stride=this.stride,e.fields=new Map,this.fields.forEach(((t,i)=>e.fields.set(i,t))),e.fieldNames=this.fieldNames.slice(),e.BufferType=this.BufferType,e}}function A(){return new T}export{N as InterleavedBuffer,T as InterleavedLayout,A as newLayout};\n"],"sourceRoot":""}