{"version":3,"sources":["webpack:///./node_modules/@arcgis/core/chunks/DefaultMaterial.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/materials/DefaultMaterial_COLOR_GAMMA.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/indexUtils.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/Offset.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/vec43.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/DefaultLoadingContext.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/DefaultErrorContext.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/LoaderResult.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/enums.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/BinaryStreamReader.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/fillDefaults.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/pathUtils.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/internal/Resource.js","webpack:///./node_modules/@arcgis/core/views/3d/glTF/loader.js","webpack:///./node_modules/@arcgis/core/core/devEnvironmentUtils.js","webpack:///./node_modules/@arcgis/core/chunks/vec33.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/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/shading/EvaluateAmbientOcclusion.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/scalar.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/default/DefaultMaterialAuxiliaryPasses.glsl.js","webpack:///./node_modules/@arcgis/core/chunks/mat32.js","webpack:///./node_modules/@arcgis/core/chunks/mat42.js","webpack:///./node_modules/@arcgis/core/geometry/support/buffer/utils.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/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.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/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/layers/support/symbolColorUtils.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/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/chunks/vec22.js","webpack:///./node_modules/@arcgis/core/chunks/vec42.js","webpack:///./node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js"],"names":["$","D","B","vertex","code","F","fragment","include","name","output","uniforms","add","V","hasModelTransformation","varyings","Color","Alpha","linearDepth","normalType","Attribute","offsetBackfaces","instancedColor","attributes","INSTANCECOLOR","multipassTerrainEnabled","float","vertexTangents","hasColorTexture","textureAlphaPremultiplied","attributeColor","receiveShadows","ScreenDerivative","pbrMode","Normal","viewingMode","Global","hasNormalTexture","Schematic","oitEnabled","Object","freeze","__proto__","build","o","n","Uint32Array","t","e","length","Uint16Array","r","i","f","s","d","TANGENT","doubleSidedMode","WindingOrder","extensions","attributeTextureCoordinates","None","supportsTextureAtlas","typedBuffer","typedBufferStride","u","count","l","dstIndex","c","srcIndex","p","copy","fill","this","streamDataRequester","_load","m","responseType","data","request","ok","value","error","image","binary","json","int","Multiply","Ignore","Replace","getLogger","errorUnsupported","warn","warnUnsupported","color","opacity","alphaMode","alphaCutoff","doubleSided","castShadows","receiveAmbientOcclustion","textureColor","textureNormal","textureOcclusion","textureEmissive","textureMetallicRoughness","emissiveFactor","metallicFactor","roughnessFactor","colorMixMode","parameters","wrap","REPEAT","noUnpackFlip","mipmap","offset4","dataUint32","Math","floor","byteLength","Uint8Array","A","SCALAR","VEC2","VEC3","VEC4","MAT2","MAT3","MAT4","ARRAY_BUFFER","ELEMENT_ARRAY_BUFFER","baseColorFactor","pbrMetallicRoughness","ESRI_externalColorMixMode","extras","magFilter","LINEAR","minFilter","LINEAR_MIPMAP_LINEAR","wrapS","wrapT","replace","a","dirPart","filePart","MAGIC","CHUNK_TYPE_JSON","CHUNK_TYPE_BIN","MIN_HEADER_LENGTH","context","errorContext","uri","glbBuffer","bufferLoaders","Map","textureLoaders","textureCache","materialCache","nodeParentMap","nodeTransformCache","baseUri","_checkVersionSupported","_checkRequiredExtensionsSupported","errorUnsupportedIf","scenes","meshes","nodes","_computeNodeParents","mediaType","JSON","parse","isBase64","atob","_isGLBData","_fromGLBData","endsWith","loadJSON","loadBinary","remainingBytes","readUint32","_parseGLBData","binaryData","assert","q","readUint8Array","buffers","_getBufferLoader","get","_resolveUri","then","set","accessors","bufferView","type","bufferViews","getBuffer","buffer","H","Y","componentType","byteStride","raw","byteOffset","entryCount","isDenselyPacked","componentCount","componentByteSize","min","max","normalized","indices","getAccessor","UNSIGNED_BYTE","UNSIGNED_SHORT","UNSIGNED_INT","_wrapAccessor","POSITION","FLOAT","z","toFixed","NORMAL","TEXCOORD_0","J","COLOR_0","material","materials","hasVertexColors","getTexture","baseColorTexture","normalTexture","occlusionTexture","emissiveTexture","metallicRoughnessTexture","colorTexture","id","vertexColors","texCoord","index","textures","sampler","samplers","source","images","_loadTextureImageData","k","getNodeTransform","_getNodeParent","matrix","translation","rotation","scale","asset","version","P","validate","extensionsRequired","join","forEach","children","_createTextureLoader","loadImage","mimeType","X","PI","BYTE","SHORT","async","Promise","Blob","FileReader","onload","result","onerror","readAsText","URL","createObjectURL","Image","addEventListener","revokeObjectURL","decode","src","5120","5121","5122","5123","5125","5126","load","x","h","lods","meta","I","ESRI_type","R","mode","TRIANGLES","E","TRIANGLE_STRIP","TRIANGLE_FAN","T","hasPositions","S","getPositionData","_","getMaterial","g","hasNormals","getNormalData","w","hasTangents","getTangentData","v","hasTextureCoordinates","getTextureCoordinates","N","getVertexColors","M","getIndexData","transform","position","normal","texCoord0","tangent","primitiveType","ESRI_lod","metric","thresholds","parts","lodThreshold","filter","model","isEsriSymbolResource","customMeta","ESRI_proxyEllipsoid","scene","push","MSFT_lod","ids","warnUnsupportedIf","weights","mesh","primitives","all","Array","isArray","has","some","LINEAR_MIPMAP_NEAREST","globalThis","location","hostname","match","y","b","sqrt","transformMat4","transformMat3","normalize","shiftRight","doublePrecisionRequiresObfuscation","driverTest","Tint","symbolColor","SYMBOLCOLOR","receiveAmbientOcclusion","TypedArrayConstructor","makeDense","CompressedAttribute","Ground","setUniformMatrix4fv","Depth","Shadow","Highlight","ArrayBuffer","ElementCount","ElementType","resource","textureDefinitions","details","url","params","topology","vertexAttributes","faces","values","valueType","valuesPerElement","geometries","materialDefinitions","size","exclusive","j","texture","U","substring","lastIndexOf","transparency","alphaChannelUsage","ambient","diffuse","transparent","textureAlphaMode","textureAlphaCutoff","textureId","initTextureTransparent","cullFace","externalColorMixMode","preMultiplyAlpha","materialParamsMixin","assign","stageResources","pivotOffset","boundingBox","numberOfVertices","boundingInfo","getBBMin","getBBMax","encoding","channels","Opaque","disableTextures","resolve","refId","Mask","MaskBlend","Blend","region","fileType","cache","loadWOSR","referenceBoundingBox","isWosr","remove","loadGLTF","usePBR","indexOf","te","isSchematic","treeRendering","esriTreeRendering","mrrFactors","specifiedLodIndex","Number","Z","customDepthTest","Lequal","doubleSidedType","Back","normals","receiveSSAO","fillLightsEnabled","normalTextureId","occlusionTextureId","emissiveTextureId","metallicRoughnessTextureId","ee","elementCount","UV0","COLOR","L","getVec","center","radius","setVec","View","COUNT","NORMALCOMPRESSED","round","instanced","instancedDoublePrecision","MODELORIGINHI","MODELORIGINLO","MODEL","MODELNORMAL","setUniform3fv","W","shader","configuration","transparencyPassType","slicePlaneEnabled","sliceHighlightDisabled","sliceEnabledForVertexPrograms","symbolColors","vvSize","vvColor","vvInstancingEnabled","Disabled","hasMetalnessAndRoughnessTexture","hasEmissionTexture","hasOcclusionTexture","useCustomDTRExponentForWater","normalsTypeDerivate","Default","screenSizePerspectiveEnabled","screenSizePerspective","verticalOffsetEnabled","verticalOffset","rctx","alphaDiscardMode","cullAboveGround","program","camera","projectionMatrix","modelTransformation","warnOnce","setUniform2fv","nearFar","inverseViewport","setUniform1f","layerOpacity","setUniform4fv","externalColor","setUniform1i","lighting","setUniforms","hasFillLights","shadowMap","bind","ssaoHelper","viewInverseTransposeMatrix","origin","viewMatrix","rebindTextures","slicePlane","LEQUAL","LESS","NONE","FrontFace","blending","culling","depthTest","func","_convertDepthTestFunction","depthWrite","writeDepth","colorWrite","stencilWrite","sceneHasOcludees","stencilTest","polygonOffset","enableOffset","_occludeePipelineState","_setPipeline","super","getPipelineState","arguments","Less","prototype","supportsEdges","techniqueConfig","vertexBufferLayout","instanceBufferLayout","MATERIAL_DEPTH_SHADOWMAP_ALL","MATERIAL_DEPTH_SHADOWMAP_DEFAULT","MATERIAL_DEPTH_SHADOWMAP_HIGHLIGHT","isVisible","vvColorEnabled","vvSizeEnabled","shadowMappingEnabled","ssaoEnabled","offsetTransparentBackfaces","relativeElevation","Local","eye","inverseRotation","G","TRANSPARENT_MATERIAL","TRANSPARENT_DEPTH_WRITE_DISABLED_MATERIAL","OPAQUE_MATERIAL","DRAPED_MATERIAL","_material","updateTexture","ensureTechnique","setParameters","hasOccludees","_output","_updateShadowState","_updateOccludeeState","updateParameters","bindPass","bindTextures","vvSizeMinSize","vvSizeMaxSize","vvSizeOffset","vvSizeFactor","vvSizeValue","vvColorValues","vvColorColors","vvSymbolAnchor","vvSymbolRotationMatrix","createBuffer","transformation","invTranspTransformation","vec3f","vec4f","vec2f","vec4u8","mat3f","mat4f","INSTANCEFEATUREATTRIBUTE","elementType","normalizeIntegerBuffer","WaterOnIntegratedMesh"],"mappings":"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","file":"js/chunk-aec3189a.eb2ae0c0.js","sourcesContent":["/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{ViewingMode as e}from\"../views/ViewingMode.js\";import{ForwardLinearDepth as r}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{ShaderOutput as a}from\"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js\";import{Slice as i}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{Transform as l}from\"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js\";import{InstancedDoublePrecision as t}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{NormalAttribute as n,NormalAttributeType as s}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{PositionAttribute as d}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js\";import{SymbolColor as c}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js\";import{TextureCoordinateAttribute as m}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{VertexColor as g}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js\";import{VertexNormal as v}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexNormal.glsl.js\";import{VerticalOffset as p}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{DefaultMaterialAuxiliaryPasses as u}from\"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js\";import{ReadLinearDepth as b}from\"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js\";import{ComputeNormalTexture as h}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js\";import{EvaluateAmbientOcclusion as f}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js\";import{EvaluateSceneLighting as w}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js\";import{multipassTerrainTest as x}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{Normals as y}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js\";import{PhysicallyBasedRendering as C}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js\";import{PhysicallyBasedRenderingParameters as L,PBRMode as j}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{ReadShadowMap as M}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{VisualVariables as T}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js\";import{symbolAlphaCutoff as O,DiscardOrAdjustAlpha as E}from\"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{HeaderComment as A}from\"../views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js\";import{MixExternalColor as S}from\"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js\";import{glsl as P}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{ShaderBuilder as _}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";import{VertexAttribute as N}from\"../views/3d/webgl-engine/lib/VertexAttribute.js\";function $($){const D=new _,B=D.vertex.code,F=D.fragment.code;D.include(A,{name:\"Default Material Shader\",output:$.output}),D.vertex.uniforms.add(\"proj\",\"mat4\").add(\"view\",\"mat4\").add(\"cameraPosition\",\"vec3\").add(\"localOrigin\",\"vec3\");const V=$.hasModelTransformation;return V&&D.vertex.uniforms.add(\"model\",\"mat4\"),D.include(d),D.varyings.add(\"vpos\",\"vec3\"),D.include(T,$),D.include(t,$),D.include(p,$),$.output!==a.Color&&$.output!==a.Alpha||(D.include(n,$),D.include(l,{linearDepth:!1,hasModelTransformation:V}),$.normalType===s.Attribute&&$.offsetBackfaces&&D.include(o),D.include(h,$),D.include(v,$),$.instancedColor&&D.attributes.add(N.INSTANCECOLOR,\"vec4\"),D.varyings.add(\"localvpos\",\"vec3\"),D.include(m,$),D.include(r,$),D.include(c,$),D.include(g,$),D.vertex.uniforms.add(\"externalColor\",\"vec4\"),D.varyings.add(\"vcolorExt\",\"vec4\"),$.multipassTerrainEnabled&&D.varyings.add(\"depth\",\"float\"),B.add(P`\n void main(void) {\n forwardNormalizedVertexColor();\n vcolorExt = externalColor;\n ${$.instancedColor?\"vcolorExt *= instanceColor;\":\"\"}\n vcolorExt *= vvColor();\n vcolorExt *= getSymbolColor();\n forwardColorMixMode();\n\n if (vcolorExt.a < ${P.float(O)}) {\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 ${$.normalType===s.Attribute?P`\n vNormalWorld = dpNormal(vvLocalNormal(normalModel()));`:\"\"}\n vpos = addVerticalOffset(vpos, localOrigin);\n ${$.vertexTangents?\"vTangent = dpTransformVertexTangent(tangent);\":\"\"}\n gl_Position = transformPosition(proj, view, ${V?\"model,\":\"\"} vpos);\n ${$.normalType===s.Attribute&&$.offsetBackfaces?\"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, cameraPosition);\":\"\"}\n }\n\n ${$.multipassTerrainEnabled?\"depth = (view * vec4(vpos, 1.0)).z;\":\"\"}\n forwardLinearDepth();\n forwardTextureCoordinates();\n }\n `)),$.output===a.Alpha&&(D.include(i,$),D.include(E,$),$.multipassTerrainEnabled&&(D.fragment.include(b),D.include(x,$)),D.fragment.uniforms.add(\"cameraPosition\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),$.hasColorTexture&&D.fragment.uniforms.add(\"tex\",\"sampler2D\"),D.fragment.include(S),F.add(P`\n void main() {\n discardBySlice(vpos);\n ${$.multipassTerrainEnabled?\"terrainDepthTest(gl_FragCoord, depth);\":\"\"}\n ${$.hasColorTexture?P`\n vec4 texColor = texture2D(tex, vuv0);\n ${$.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:P`vec4 texColor = vec4(1.0);`}\n ${$.attributeColor?P`\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:P`\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n gl_FragColor = vec4(opacity_);\n }\n `)),$.output===a.Color&&(D.include(i,$),D.include(w,$),D.include(f,$),D.include(E,$),$.receiveShadows&&D.include(M,$),$.multipassTerrainEnabled&&(D.fragment.include(b),D.include(x,$)),D.fragment.uniforms.add(\"cameraPosition\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"ambient\",\"vec3\").add(\"diffuse\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),$.hasColorTexture&&D.fragment.uniforms.add(\"tex\",\"sampler2D\"),D.include(L,$),D.include(C,$),D.fragment.include(S),D.include(y,$),F.add(P`\n void main() {\n discardBySlice(vpos);\n ${$.multipassTerrainEnabled?\"terrainDepthTest(gl_FragCoord, depth);\":\"\"}\n ${$.hasColorTexture?P`\n vec4 texColor = texture2D(tex, vuv0);\n ${$.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:P`vec4 texColor = vec4(1.0);`}\n shadingParams.viewDirection = normalize(vpos - cameraPosition);\n ${$.normalType===s.ScreenDerivative?P`\n vec3 normal = screenDerivativeNormal(localvpos);`:P`\n shadingParams.normalView = vNormalWorld;\n vec3 normal = shadingNormal(shadingParams);`}\n ${$.pbrMode===j.Normal?\"applyPBRFactors();\":\"\"}\n float ssao = evaluateAmbientOcclusionInverse();\n ssao *= getBakedOcclusion();\n\n float additionalAmbientScale = additionalDirectedAmbientLight(vpos + localOrigin);\n vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;\n ${$.receiveShadows?\"float shadow = readShadowMap(vpos, linearDepth);\":$.viewingMode===e.Global?\"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);\":\"float shadow = 0.0;\"}\n vec3 matColor = max(ambient, diffuse);\n ${$.attributeColor?P`\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));`:P`\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 ${$.hasNormalTexture?P`\n mat3 tangentSpace = ${$.vertexTangents?\"computeTangentSpace(normal);\":\"computeTangentSpace(normal, vpos, vuv0);\"}\n vec3 shadedNormal = computeTextureNormal(tangentSpace, vuv0);`:\"vec3 shadedNormal = normal;\"}\n ${$.pbrMode===j.Normal||$.pbrMode===j.Schematic?$.viewingMode===e.Global?P`vec3 normalGround = normalize(vpos + localOrigin);`:P`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:P``}\n ${$.pbrMode===j.Normal||$.pbrMode===j.Schematic?P`\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 ${$.oitEnabled?\"gl_FragColor = premultiplyAlpha(gl_FragColor);\":\"\"}\n }\n `)),D.include(u,$),D}const D=Object.freeze({__proto__:null,build:$});export{D,$ as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nconst o=2.1;export{o as COLOR_GAMMA};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{isUint16Array as t,isUint8Array as e}from\"../../../../core/typedArrayUtil.js\";import{generateDefaultIndexArray as r}from\"../../webgl-engine/lib/geometryDataUtils.js\";function n(n,o=r){return\"number\"==typeof n?o(n):t(n)||e(n)?new Uint32Array(n):n}function o(t){const e=\"number\"==typeof t?t:t.length;if(e<3)return new Uint16Array(0);const r=e-2,n=r<=65536?new Uint16Array(3*r):new Uint32Array(3*r);if(\"number\"==typeof t){let t=0;for(let e=0;e 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.23/esri/copyright.txt for details.\n*/\nfunction e(e,t,n){const d=e.typedBuffer,f=e.typedBufferStride,o=t.typedBuffer,r=t.typedBufferStride,u=n?n.count:t.count;let l=(n&&n.dstIndex?n.dstIndex:0)*f,c=(n&&n.srcIndex?n.srcIndex:0)*r;for(let s=0;s{const o={...t,...e.pbrMetallicRoughness},r=s({...l,...e.extras});return{...a,...e,pbrMetallicRoughness:o,extras:r}};function s(o){switch(o.ESRI_externalColorMixMode){case\"multiply\":case\"tint\":case\"ignore\":case\"replace\":break;default:e(o.ESRI_externalColorMixMode),o.ESRI_externalColorMixMode=\"tint\"}return o}const n={magFilter:o.LINEAR,minFilter:o.LINEAR_MIPMAP_LINEAR,wrapS:r.REPEAT,wrapT:r.REPEAT},c=e=>({...n,...e});export{i as material,c as textureSampler};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nfunction r(r){let e,t;return r.replace(/^(.*\\/)?([^/]*)$/,((r,a,i)=>(e=a||\"\",t=i||\"\",\"\"))),{dirPart:e,filePart:t}}export{r as splitURI};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{neverReached as e}from\"../../../../core/compilerUtils.js\";import{getOrCreateMapValue as t}from\"../../../../core/MapUtils.js\";import{isDataProtocol as r,dataComponents as s,dataToArrayBuffer as n,makeAbsolute as o}from\"../../../../core/urlUtils.js\";import{Version as a}from\"../../../../core/Version.js\";import{y as i,m as u,j as c,e as p,h as f}from\"../../../../chunks/mat4.js\";import{c as d,b as l}from\"../../../../chunks/mat4f64.js\";import{g as m}from\"../../../../chunks/quat.js\";import{a as h}from\"../../../../chunks/quatf64.js\";import{BufferViewUint32 as y,BufferViewUint16 as b,BufferViewUint8 as T,BufferViewVec3f as O,BufferViewVec4f as w,BufferViewVec2f as N,BufferViewVec4u8 as x,BufferViewVec4u16 as S,BufferViewVec3u8 as C,BufferViewVec3u16 as _,BufferViewVec2u32 as U,BufferViewVec2u16 as I,BufferViewVec2i16 as g,BufferViewVec2u8 as A,BufferViewVec2i8 as E}from\"../../../../geometry/support/buffer/BufferView.js\";import{m as L}from\"../../../../chunks/scalar.js\";import{BinaryStreamReader as B}from\"./BinaryStreamReader.js\";import{AttributeType as R}from\"./enums.js\";import{material as D,textureSampler as G}from\"./fillDefaults.js\";import{splitURI as v}from\"./pathUtils.js\";import{DataType as j}from\"../../../webgl/enums.js\";const M={MAGIC:1179937895,CHUNK_TYPE_JSON:1313821514,CHUNK_TYPE_BIN:5130562,MIN_HEADER_LENGTH:20};class F{constructor(e,t,r,s,n){this.context=e,this.errorContext=t,this.uri=r,this.json=s,this.glbBuffer=n,this.bufferLoaders=new Map,this.textureLoaders=new Map,this.textureCache=new Map,this.materialCache=new Map,this.nodeParentMap=new Map,this.nodeTransformCache=new Map,this.baseUri=v(this.uri).dirPart,this._checkVersionSupported(),this._checkRequiredExtensionsSupported(),t.errorUnsupportedIf(null==s.scenes,\"Scenes must be defined.\"),t.errorUnsupportedIf(null==s.meshes,\"Meshes must be defined\"),t.errorUnsupportedIf(null==s.nodes,\"Nodes must be defined.\"),this._computeNodeParents()}static async load(e,t,o,a){if(r(o)){const r=s(o);if(\"model/gltf-binary\"!==r.mediaType)try{const s=JSON.parse(r.isBase64?atob(r.data):r.data);return new F(e,t,o,s)}catch{}const a=n(o);if(F._isGLBData(a))return this._fromGLBData(e,t,o,a)}if(o.endsWith(\".gltf\")){const r=await e.loadJSON(o,a);return new F(e,t,o,r)}const i=await e.loadBinary(o,a);if(F._isGLBData(i))return this._fromGLBData(e,t,o,i);const u=await e.loadJSON(o,a);return new F(e,t,o,u)}static _isGLBData(e){const t=new B(e);return t.remainingBytes()>=4&&t.readUint32()===M.MAGIC}static async _fromGLBData(e,t,r,s){const n=await F._parseGLBData(t,s);return new F(e,t,r,n.json,n.binaryData)}static async _parseGLBData(e,t){const r=new B(t);e.assert(r.remainingBytes()>=12,\"GLB binary data is insufficiently large.\");const s=r.readUint32(),n=r.readUint32(),o=r.readUint32();e.assert(s===M.MAGIC,\"Magic first 4 bytes do not fit to expected GLB value.\"),e.assert(t.byteLength>=o,\"GLB binary data is smaller than header specifies.\"),e.errorUnsupportedIf(2!==n,\"An unsupported GLB container version was detected. Only version 2 is supported.\");let a,i,u=0;for(;r.remainingBytes()>=8;){const t=r.readUint32(),s=r.readUint32();0===u?(e.assert(s===M.CHUNK_TYPE_JSON,\"First GLB chunk must be JSON.\"),e.assert(t>=0,\"No JSON data found.\"),a=await q(r.readUint8Array(t))):1===u?(e.errorUnsupportedIf(s!==M.CHUNK_TYPE_BIN,\"Second GLB chunk expected to be BIN.\"),i=r.readUint8Array(t)):e.warnUnsupported(\"More than 2 GLB chunks detected. Skipping.\"),u+=1}return a||e.error(\"No GLB JSON chunk detected.\"),{json:a,binaryData:i}}async getBuffer(e,t){const r=this.json.buffers[e],s=this.errorContext;if(null==r.uri)return s.assert(null!=this.glbBuffer,\"GLB buffer not present\"),this.glbBuffer;const n=await this._getBufferLoader(e,t);return s.assert(n.byteLength===r.byteLength,\"Buffer byte lengths should match.\"),n}async _getBufferLoader(e,t){const r=this.bufferLoaders.get(e);if(r)return r;const s=this.json.buffers[e],n=this.context.loadBinary(this._resolveUri(s.uri),t).then((e=>new Uint8Array(e)));return this.bufferLoaders.set(e,n),n}async getAccessor(e,t){const r=this.errorContext;r.errorUnsupportedIf(!this.json.accessors,\"Accessors missing.\");const s=this.json.accessors[e];r.errorUnsupportedIf(null==(null==s?void 0:s.bufferView),\"Some accessor does not specify a bufferView.\"),r.errorUnsupportedIf(s.type in[R.MAT2,R.MAT3,R.MAT4],`AttributeType ${s.type} is not supported`);const n=this.json.bufferViews[s.bufferView],o=await this.getBuffer(n.buffer,t),a=H[s.type],i=Y[s.componentType],u=a*i,c=n.byteStride||u;return{raw:o.buffer,byteStride:c,byteOffset:o.byteOffset+(n.byteOffset||0)+(s.byteOffset||0),entryCount:s.count,isDenselyPacked:c===u,componentCount:a,componentByteSize:i,componentType:s.componentType,min:s.min,max:s.max,normalized:!!s.normalized}}async getIndexData(e,t){if(null==e.indices)return null;const r=await this.getAccessor(e.indices,t);if(r.isDenselyPacked)switch(r.componentType){case j.UNSIGNED_BYTE:return new Uint8Array(r.raw,r.byteOffset,r.entryCount);case j.UNSIGNED_SHORT:return new Uint16Array(r.raw,r.byteOffset,r.entryCount);case j.UNSIGNED_INT:return new Uint32Array(r.raw,r.byteOffset,r.entryCount)}else switch(r.componentType){case j.UNSIGNED_BYTE:return L(this._wrapAccessor(T,r));case j.UNSIGNED_SHORT:return L(this._wrapAccessor(b,r));case j.UNSIGNED_INT:return L(this._wrapAccessor(y,r))}}async getPositionData(e,t){const r=this.errorContext;r.errorUnsupportedIf(null==e.attributes.POSITION,\"No POSITION vertex data found.\");const s=await this.getAccessor(e.attributes.POSITION,t);return r.errorUnsupportedIf(s.componentType!==j.FLOAT,\"Expected type FLOAT for POSITION vertex attribute, but found \"+z[s.componentType]),r.errorUnsupportedIf(3!==s.componentCount,\"POSITION vertex attribute must have 3 components, but found \"+s.componentCount.toFixed()),this._wrapAccessor(O,s)}async getNormalData(e,t){const r=this.errorContext;r.assert(null!=e.attributes.NORMAL,\"No NORMAL vertex data found.\");const s=await this.getAccessor(e.attributes.NORMAL,t);return r.errorUnsupportedIf(s.componentType!==j.FLOAT,\"Expected type FLOAT for NORMAL vertex attribute, but found \"+z[s.componentType]),r.errorUnsupportedIf(3!==s.componentCount,\"NORMAL vertex attribute must have 3 components, but found \"+s.componentCount.toFixed()),this._wrapAccessor(O,s)}async getTangentData(e,t){const r=this.errorContext;r.assert(null!=e.attributes.TANGENT,\"No TANGENT vertex data found.\");const s=await this.getAccessor(e.attributes.TANGENT,t);return r.errorUnsupportedIf(s.componentType!==j.FLOAT,\"Expected type FLOAT for TANGENT vertex attribute, but found \"+z[s.componentType]),r.errorUnsupportedIf(4!==s.componentCount,\"TANGENT vertex attribute must have 4 components, but found \"+s.componentCount.toFixed()),new w(s.raw,s.byteOffset,s.byteStride,s.byteOffset+s.byteStride*s.entryCount)}async getTextureCoordinates(e,t){const r=this.errorContext;r.assert(null!=e.attributes.TEXCOORD_0,\"No TEXCOORD_0 vertex data found.\");const s=await this.getAccessor(e.attributes.TEXCOORD_0,t);return r.errorUnsupportedIf(2!==s.componentCount,\"TEXCOORD_0 vertex attribute must have 2 components, but found \"+s.componentCount.toFixed()),s.componentType===j.FLOAT?this._wrapAccessor(N,s):(r.errorUnsupportedIf(!s.normalized,\"Integer component types are only supported for a normalized accessor for TEXCOORD_0.\"),J(s))}async getVertexColors(e,t){const r=this.errorContext;r.assert(null!=e.attributes.COLOR_0,\"No COLOR_0 vertex data found.\");const s=await this.getAccessor(e.attributes.COLOR_0,t);if(r.errorUnsupportedIf(4!==s.componentCount&&3!==s.componentCount,\"COLOR_0 attribute must have 3 or 4 components, but found \"+s.componentCount.toFixed()),4===s.componentCount){if(s.componentType===j.FLOAT)return this._wrapAccessor(w,s);if(s.componentType===j.UNSIGNED_BYTE)return this._wrapAccessor(x,s);if(s.componentType===j.UNSIGNED_SHORT)return this._wrapAccessor(S,s)}else if(3===s.componentCount){if(s.componentType===j.FLOAT)return this._wrapAccessor(O,s);if(s.componentType===j.UNSIGNED_BYTE)return this._wrapAccessor(C,s);if(s.componentType===j.UNSIGNED_SHORT)return this._wrapAccessor(_,s)}r.errorUnsupported(\"Unsupported component type for COLOR_0 attribute: \"+z[s.componentType])}hasPositions(e){return void 0!==e.attributes.POSITION}hasNormals(e){return void 0!==e.attributes.NORMAL}hasVertexColors(e){return void 0!==e.attributes.COLOR_0}hasTextureCoordinates(e){return void 0!==e.attributes.TEXCOORD_0}hasTangents(e){return void 0!==e.attributes.TANGENT}async getMaterial(e,t,r){let s=this.materialCache.get(e.material);if(!s){const n=null!=e.material?D(this.json.materials[e.material]):D(),o=n.pbrMetallicRoughness,a=this.hasVertexColors(e),i=this.getTexture(o.baseColorTexture,t),u=this.getTexture(n.normalTexture,t),c=r?this.getTexture(n.occlusionTexture,t):null,p=r?this.getTexture(n.emissiveTexture,t):null,f=r?this.getTexture(o.metallicRoughnessTexture,t):null,d=null!=e.material?e.material:-1;s={alphaMode:n.alphaMode,alphaCutoff:n.alphaCutoff,color:o.baseColorFactor,doubleSided:!!n.doubleSided,colorTexture:await i,normalTexture:await u,name:n.name,id:d,occlusionTexture:await c,emissiveTexture:await p,emissiveFactor:n.emissiveFactor,metallicFactor:o.metallicFactor,roughnessFactor:o.roughnessFactor,metallicRoughnessTexture:await f,vertexColors:a,ESRI_externalColorMixMode:n.extras.ESRI_externalColorMixMode}}return s}async getTexture(e,r){if(!e)return null;this.errorContext.errorUnsupportedIf(0!==(e.texCoord||0),\"Only TEXCOORD with index 0 is supported.\");const s=e.index,n=this.errorContext,o=this.json.textures[s],a=G(null!=o.sampler?this.json.samplers[o.sampler]:{});n.errorUnsupportedIf(null==o.source,\"Source is expected to be defined for a texture.\");const i=this.json.images[o.source],u=await this._loadTextureImageData(s,o,r);return t(this.textureCache,s,(()=>{const e=e=>33071===e||33648===e||10497===e,t=e=>(n.error(`Unexpected TextureSampler WrapMode: ${e}. Using default REPEAT(10497).`),10497);return{data:u,wrapS:e(a.wrapS)?a.wrapS:t(a.wrapS),wrapT:e(a.wrapT)?a.wrapT:t(a.wrapT),minFilter:a.minFilter,name:i.name,id:s}}))}getNodeTransform(e){if(void 0===e)return k;let t=this.nodeTransformCache.get(e);if(!t){const r=this.getNodeTransform(this._getNodeParent(e)),s=this.json.nodes[e];s.matrix?t=u(d(),r,s.matrix):s.translation||s.rotation||s.scale?(t=l(r),s.translation&&c(t,t,s.translation),s.rotation&&(V[3]=m(V,s.rotation),p(t,t,V[3],V)),s.scale&&f(t,t,s.scale)):t=r,this.nodeTransformCache.set(e,t)}return t}_wrapAccessor(e,t){return new e(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*(t.entryCount-1)+t.componentByteSize*t.componentCount)}_resolveUri(e){return o(e,this.baseUri)}_getNodeParent(e){return this.nodeParentMap.get(e)}_checkVersionSupported(){const e=a.parse(this.json.asset.version,\"glTF\");P.validate(e)}_checkRequiredExtensionsSupported(){const e=this.json,t=this.errorContext;e.extensionsRequired&&0!==e.extensionsRequired.length&&t.errorUnsupported(\"gltf loader was not able to load unsupported feature. Required extensions: \"+e.extensionsRequired.join(\", \"))}_computeNodeParents(){this.json.nodes.forEach(((e,t)=>{e.children&&e.children.forEach((e=>{this.nodeParentMap.set(e,t)}))}))}async _loadTextureImageData(e,t,r){const s=this.textureLoaders.get(e);if(s)return s;const n=this._createTextureLoader(t,r);return this.textureLoaders.set(e,n),n}async _createTextureLoader(e,t){const r=this.json.images[e.source];if(r.uri)return this.context.loadImage(this._resolveUri(r.uri),t);const s=this.errorContext;s.errorUnsupportedIf(null==r.bufferView,\"Image bufferView must be defined.\"),s.errorUnsupportedIf(null==r.mimeType,\"Image mimeType must be defined.\");const n=this.json.bufferViews[r.bufferView],o=await this.getBuffer(n.buffer,t);return s.errorUnsupportedIf(null!=n.byteStride,\"byteStride not supported for image buffer\"),X(new Uint8Array(o.buffer,o.byteOffset+(n.byteOffset||0),n.byteLength),r.mimeType)}}const P=new a(2,0,\"glTF\"),k=i(d(),Math.PI/2),V=h(),H={SCALAR:1,VEC2:2,VEC3:3,VEC4:4},Y={[j.BYTE]:1,[j.UNSIGNED_BYTE]:1,[j.SHORT]:2,[j.UNSIGNED_SHORT]:2,[j.FLOAT]:4,[j.UNSIGNED_INT]:4};function J(t){switch(t.componentType){case j.BYTE:return new E(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case j.UNSIGNED_BYTE:return new A(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case j.SHORT:return new g(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case j.UNSIGNED_SHORT:return new I(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case j.UNSIGNED_INT:return new U(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);case j.FLOAT:return new N(t.raw,t.byteOffset,t.byteStride,t.byteOffset+t.byteStride*t.entryCount);default:return void e(t.componentType)}}async function q(e){return new Promise(((t,r)=>{const s=new Blob([e]),n=new FileReader;n.onload=()=>{const e=n.result;t(JSON.parse(e))},n.onerror=e=>{r(e)},n.readAsText(s)}))}async function X(e,t){return new Promise(((r,s)=>{const n=new Blob([e],{type:t}),o=URL.createObjectURL(n),a=new Image;a.addEventListener(\"load\",(()=>{URL.revokeObjectURL(o),\"decode\"in a?a.decode().then((()=>r(a)),(()=>r(a))):r(a)})),a.addEventListener(\"error\",(e=>{URL.revokeObjectURL(o),s(e)})),a.src=o}))}const z={5120:\"BYTE\",5121:\"UNSIGNED_BYTE\",5122:\"SHORT\",5123:\"UNSIGNED_SHORT\",5125:\"UNSIGNED_INT\",5126:\"FLOAT\"};export{F as Resource};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{isSome as e,isNone as t}from\"../../../core/maybe.js\";import{b as o}from\"../../../chunks/mat4f64.js\";import{DefaultErrorContext as s}from\"./DefaultErrorContext.js\";import{makeMaterialParameters as r,makeTextureSource as a}from\"./LoaderResult.js\";import{Resource as n}from\"./internal/Resource.js\";import{TextureSamplingMode as i,PrimitiveType as l}from\"../../webgl/enums.js\";let u=0;async function c(s,r,a={},i=!0){const c=await n.load(s,x,r,a),p=\"gltf_\"+u++,h={lods:[],materials:new Map,textures:new Map,meta:m(c)},I=!(!c.json.asset.extras||\"symbolResource\"!==c.json.asset.extras.ESRI_type),R=new Map;await d(c,(async(s,r,n,u)=>{var m;const d=null!=(m=R.get(n))?m:0;R.set(n,d+1);const I=void 0!==s.mode?s.mode:l.TRIANGLES,E=I===l.TRIANGLES||I===l.TRIANGLE_STRIP||I===l.TRIANGLE_FAN?I:null;if(t(E))return void x.warnUnsupported(\"Unsupported primitive mode (\"+T[I]+\"). Skipping primitive.\");if(!c.hasPositions(s))return void x.warn(\"Skipping primitive without POSITION vertex attribute.\");const S=c.getPositionData(s,a),_=c.getMaterial(s,a,i),g=c.hasNormals(s)?c.getNormalData(s,a):null,w=c.hasTangents(s)?c.getTangentData(s,a):null,v=c.hasTextureCoordinates(s)?c.getTextureCoordinates(s,a):null,N=c.hasVertexColors(s)?c.getVertexColors(s,a):null,M=c.getIndexData(s,a),A={transform:o(r),attributes:{position:await S,normal:g?await g:null,texCoord0:v?await v:null,color:N?await N:null,tangent:w?await w:null},indices:await M,primitiveType:E,material:f(h,await _,p)};let F=null;e(h.meta)&&e(h.meta.ESRI_lod)&&\"screenSpaceRadius\"===h.meta.ESRI_lod.metric&&(F=h.meta.ESRI_lod.thresholds[n]),h.lods[n]=h.lods[n]||{parts:[],name:u,lodThreshold:F},h.lods[n].parts[d]=A}));for(const e of h.lods)e.parts=e.parts.filter((e=>!!e));return{model:h,meta:{isEsriSymbolResource:I,uri:c.uri},customMeta:{}}}function m(t){const o=t.json;let s=null;return o.nodes.forEach((t=>{const o=t.extras;e(o)&&(o.ESRI_proxyEllipsoid||o.ESRI_lod)&&(s=o)})),s}async function d(e,t){const o=e.json,s=o.scenes[o.scene||0].nodes,r=s.length>1,a=[];for(const i of s){const e=o.nodes[i];if(a.push(n(i,0)),p(e)&&!r){e.extensions.MSFT_lod.ids.forEach(((e,t)=>n(e,t+1)))}}async function n(s,r){const i=o.nodes[s],l=e.getNodeTransform(s);if(x.warnUnsupportedIf(null!=i.weights,\"Morph targets are not supported.\"),null!=i.mesh){const e=o.meshes[i.mesh];for(const o of e.primitives)a.push(t(o,l,r,e.name))}for(const e of i.children||[])a.push(n(e,r))}await Promise.all(a)}function p(e){return e.extensions&&e.extensions.MSFT_lod&&Array.isArray(e.extensions.MSFT_lod.ids)}function f(e,t,o){const s=t=>{const s=`${o}_tex_${t&&t.id}${t&&t.name?\"_\"+t.name:\"\"}`;if(t&&!e.textures.has(s)){const o=a(t.data,{wrap:{s:t.wrapS,t:t.wrapT},mipmap:h.some((e=>e===t.minFilter)),noUnpackFlip:!0});e.textures.set(s,o)}return s},n=`${o}_mat_${t.id}_${t.name}`;if(!e.materials.has(n)){const o=r({color:[t.color[0],t.color[1],t.color[2]],opacity:t.color[3],alphaMode:t.alphaMode,alphaCutoff:t.alphaCutoff,doubleSided:t.doubleSided,colorMixMode:t.ESRI_externalColorMixMode,textureColor:t.colorTexture?s(t.colorTexture):void 0,textureNormal:t.normalTexture?s(t.normalTexture):void 0,textureOcclusion:t.occlusionTexture?s(t.occlusionTexture):void 0,textureEmissive:t.emissiveTexture?s(t.emissiveTexture):void 0,textureMetallicRoughness:t.metallicRoughnessTexture?s(t.metallicRoughnessTexture):void 0,emissiveFactor:[t.emissiveFactor[0],t.emissiveFactor[1],t.emissiveFactor[2]],metallicFactor:t.metallicFactor,roughnessFactor:t.roughnessFactor});e.materials.set(n,o)}return n}const x=new s,h=[i.LINEAR_MIPMAP_LINEAR,i.LINEAR_MIPMAP_NEAREST],T=[\"POINTS\",\"LINES\",\"LINE_LOOP\",\"LINE_STRIP\",\"TRIANGLES\",\"TRIANGLE_STRIP\",\"TRIANGLE_FAN\"];export{c as load};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nfunction c(c){return c=c||globalThis.location.hostname,n.some((a=>{var o;return null!=(null==(o=c)?void 0:o.match(a))}))}function a(c,a){return c&&(a=a||globalThis.location.hostname)?null!=a.match(t)||null!=a.match(r)?c.replace(\"static.arcgis.com\",\"staticdev.arcgis.com\"):null!=a.match(l)||null!=a.match(s)?c.replace(\"static.arcgis.com\",\"staticqa.arcgis.com\"):c:c}function o(c){c=c||globalThis.location.hostname;return[/^zrh-.+?\\.esri\\.com$/].concat(n).some((a=>{var o;return null!=(null==(o=c)?void 0:o.match(a))}))}const t=/^devext.arcgis.com$/,l=/^qaext.arcgis.com$/,r=/^[\\w-]*\\.mapsdevext.arcgis.com$/,s=/^[\\w-]*\\.mapsqa.arcgis.com$/,n=[/^([\\w-]*\\.)?[\\w-]*\\.zrh-dev-local.esri.com$/,t,l,/^jsapps.esri.com$/,r,s];export{a as adjustStaticAGOUrl,c as isDevEnvironment,o as isTelemetryDevEnvironment};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nfunction e(e,t,n){const d=e.typedBuffer,f=e.typedBufferStride,o=t.typedBuffer,r=t.typedBufferStride,u=n?n.count:t.count;let l=(n&&n.dstIndex?n.dstIndex:0)*f,c=(n&&n.srcIndex?n.srcIndex:0)*r;for(let s=0;s0){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}}const 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.23/esri/copyright.txt for details.\n*/\nimport e from\"../../../../../../core/has.js\";import{glsl as c}from\"../../shaderModules/interfaces.js\";function i({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 r(c){return!!e(\"force-double-precision-obfuscation\")||c.driverTest.doublePrecisionRequiresObfuscation}export{i as DoublePrecision,r as doublePrecisionRequiresObfuscation};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{ColorMixModeEnum as o}from\"../../../../../layers/support/symbolColorUtils.js\";import{glsl as l}from\"../../../../core/shaderModules/interfaces.js\";function e(e){e.vertex.code.add(l`\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 = ${l.int(o.Multiply)};\n symbolAlpha = scaleAlpha * (symbolColor.a - maxReplace);\n } else if (symbolColor.a > maxTint) {\n colorMixMode = ${l.int(o.Replace)};\n symbolAlpha = scaleAlpha * (symbolColor.a - maxTint);\n } else if (symbolColor.a > 0.0) {\n colorMixMode = ${l.int(o.Tint)};\n symbolAlpha = scaleAlpha * symbolColor.a;\n } else {\n colorMixMode = ${l.int(o.Multiply)};\n symbolAlpha = 0.0;\n }\n\n return vec4(symbolColor.r, symbolColor.g, symbolColor.b, symbolAlpha);\n }\n `)}export{e as DecodeSymbolColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/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\";import{VertexAttribute as r}from\"../../../lib/VertexAttribute.js\";function l(l,d){d.symbolColor?(l.include(o),l.attributes.add(r.SYMBOLCOLOR,\"vec4\"),l.varyings.add(\"colorMixMode\",\"mediump float\")):l.fragment.uniforms.add(\"colorMixMode\",\"int\"),d.symbolColor?l.vertex.code.add(e`int symbolColorMixMode;\nvec4 getSymbolColor() {\nreturn decodeSymbolColor(symbolColor, symbolColorMixMode) * 0.003921568627451;\n}\nvoid forwardColorMixMode() {\ncolorMixMode = float(symbolColorMixMode) + 0.5;\n}`):l.vertex.code.add(e`vec4 getSymbolColor() { return vec4(1.0); }\nvoid forwardColorMixMode() {}`)}export{l as SymbolColor};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/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.23/esri/copyright.txt for details.\n*/\nfunction e(e,t,n){const r=e.typedBuffer,o=e.typedBufferStride,c=t.typedBuffer,d=t.typedBufferStride,f=n?n.count:t.count;let s=(n&&n.dstIndex?n.dstIndex:0)*o,u=(n&&n.srcIndex?n.srcIndex:0)*d;for(let p=0;p0||\"transparency\"===r||\"maskAndTransparency\"===r,o=j?I(j.alphaChannelUsage):void 0,i={ambient:u(e.diffuse),diffuse:u(e.diffuse),opacity:1-(e.transparency||0),transparent:n,textureAlphaMode:o,textureAlphaCutoff:.33,textureId:U,initTextureTransparent:!0,doubleSided:!0,cullFace:m.None,colorMixMode:e.externalColorMixMode||\"tint\",textureAlphaPremultiplied:!!j&&!!j.params.preMultiplyAlpha};a(t)&&t.materialParamsMixin&&Object.assign(i,t.materialParamsMixin),P=new y(i),s[l.material]||(s[l.material]={}),s[l.material][l.texture]=P}n.push(P);const k=new d(p,v);w+=v.position?v.position.length:0,r.push(k)}return{name:p,stageResources:{textures:o,materials:n,geometries:r},pivotOffset:l.model.pivotOffset,boundingBox:U(r),numberOfVertices:w,lodThreshold:null}}function U(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 P(e,t){const r=[];for(const o in e){const n=e[o],s=n.images[0].data;if(!s){b.warn(\"Externally referenced texture data is not yet supported\");continue}const i=n.encoding+\";base64,\"+s,u=\"/textureDefinitions/\"+o,l=\"rgba\"===n.channels?n.alphaChannelUsage||\"transparency\":\"none\",c={noUnpackFlip:!0,wrap:{s:x.REPEAT,t:x.REPEAT},preMultiplyAlpha:I(l)!==f.Opaque},m=a(t)&&t.disableTextures?Promise.resolve(null):p(i,t);r.push(m.then((e=>({refId:u,image:e,params:c,alphaChannelUsage:l}))))}const n=await Promise.all(r),s={};for(const a of n)s[a.refId]=a;return s}function I(e){switch(e){case\"mask\":return f.Mask;case\"maskAndTransparency\":return f.MaskBlend;case\"none\":return f.Opaque;default:return f.Blend}}function T(e){const t=e.params;return{id:1,material:t.material,texture:t.texture,region:t.texture}}const k=new i(1,2,\"wosr\");export{P as createTextureResources,w as load,M as processLoadResult};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/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 b,BufferViewVec4f as h,BufferViewVec2f as R,BufferViewVec4u8 as v,BufferViewVec4u16 as B,BufferViewVec3u8 as M,BufferViewVec3u16 as T}from\"../../../../geometry/support/buffer/BufferView.js\";import{t as w,a as y,s as j}from\"../../../../chunks/vec32.js\";import{t as E,s as O}from\"../../../../chunks/vec42.js\";import{createBuffer as C}from\"../../../../geometry/support/buffer/utils.js\";import{DefaultLoadingContext as S}from\"../../glTF/DefaultLoadingContext.js\";import{load as A}from\"../../glTF/loader.js\";import{triangleFanToTriangles as N,triangleStripToTriangles as I,trianglesToTriangles as L}from\"../../glTF/internal/indexUtils.js\";import{load as F,processLoadResult as k}from\"./wosrLoader.js\";import{AlphaDiscardMode as P,DepthTestFunction as V,CullFaceOptions as _}from\"../../webgl-engine/lib/basicInterfaces.js\";import{Geometry as G}from\"../../webgl-engine/lib/Geometry.js\";import{Texture as D}from\"../../webgl-engine/lib/Texture.js\";import{VertexAttribute as z}from\"../../webgl-engine/lib/VertexAttribute.js\";import{DefaultMaterial as U}from\"../../webgl-engine/materials/DefaultMaterial.js\";import{COLOR_GAMMA as q}from\"../../webgl-engine/materials/DefaultMaterial_COLOR_GAMMA.js\";import{PrimitiveType as W}from\"../../../webgl/enums.js\";import{n as $}from\"../../../../chunks/vec22.js\";import{c as K,f as Q}from\"../../../../chunks/vec43.js\";import{c as H}from\"../../../../chunks/vec33.js\";async function J(s,o){const i=X(e(s));if(\"wosr\"===i.fileType){const e=await(o.cache?o.cache.loadWOSR(i.url,o):F(i.url,o)),t=k(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):A(new S(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/\")&&te(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=Y(a,n,l,i.specifiedLodIndex);let t=e[0].boundingBox;if(0!==i.specifiedLodIndex){t=Y(a,n,l,0)[0].boundingBox}return{lods:e,referenceBoundingBox:t,isEsriSymbolResource:a.meta.isEsriSymbolResource,isWosr:!1,remove:a.remove}}const c=Y(a,n,l);return{lods:c,referenceBoundingBox:c[0].boundingBox,isEsriSymbolResource:a.meta.isEsriSymbolResource,isWosr:!1,remove:a.remove}}function X(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 Y(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),p=Z(a.alphaMode);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:p!==P.Opaque};m.set(a.textureColor,new D(e.data,t))}if(r(a.textureNormal)&&!m.has(a.textureNormal)){const e=u.textures.get(a.textureNormal);m.set(a.textureNormal,new D(e.data,e.parameters))}if(r(a.textureOcclusion)&&!m.has(a.textureOcclusion)){const e=u.textures.get(a.textureOcclusion);m.set(a.textureOcclusion,new D(e.data,e.parameters))}if(r(a.textureEmissive)&&!m.has(a.textureEmissive)){const e=u.textures.get(a.textureEmissive);m.set(a.textureEmissive,new D(e.data,e.parameters))}if(r(a.textureMetallicRoughness)&&!m.has(a.textureMetallicRoughness)){const e=u.textures.get(a.textureMetallicRoughness);m.set(a.textureMetallicRoughness,new D(e.data,e.parameters))}}const o=a.color[0]**(1/q),n=a.color[1]**(1/q),d=a.color[2]**(1/q),x=a.emissiveFactor[0]**(1/q),g=a.emissiveFactor[1]**(1/q),b=a.emissiveFactor[2]**(1/q),h=r(a.textureColor)&&l?m.get(a.textureColor):null;c.set(i,new U({...t,transparent:p===P.Blend,customDepthTest:V.Lequal,textureAlphaMode:p,textureAlphaCutoff:a.alphaCutoff,diffuse:[o,n,d],ambient:[o,n,d],opacity:a.opacity,doubleSided:a.doubleSided,doubleSidedType:\"winding-order\",cullFace:a.doubleSided?_.None:_.Back,vertexColors:!!e.attributes.color,vertexTangents:!!e.attributes.tangent,normals:f?\"default\":\"screenDerivative\",castShadows:!0,receiveSSAO:!0,fillLightsEnabled:!0,textureId:r(h)?h.id:void 0,colorMixMode:a.colorMixMode,normalTextureId:r(a.textureNormal)&&l?m.get(a.textureNormal).id:void 0,textureAlphaPremultiplied:r(h)&&!!h.params.preMultiplyAlpha,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:[x,g,b],mrrFactors:[a.metallicFactor,a.roughnessFactor,t.mrrFactors[2]],isSchematic:!1,...s}))}const x=ee(e.indices||e.attributes.position.count,e.primitiveType),S=e.attributes.position.count,A=C(b,S);w(A,e.attributes.position,e.transform);const N=[[z.POSITION,{data:A.typedBuffer,size:A.elementCount,exclusive:!0}]],I=[[z.POSITION,x]];if(r(e.attributes.normal)){const t=C(b,S);o(n,e.transform),y(t,e.attributes.normal,n),N.push([z.NORMAL,{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),I.push([z.NORMAL,x])}if(r(e.attributes.tangent)){const t=C(h,S);o(n,e.transform),E(t,e.attributes.tangent,n),N.push([z.TANGENT,{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),I.push([z.TANGENT,x])}if(r(e.attributes.texCoord0)){const t=C(R,S);$(t,e.attributes.texCoord0),N.push([z.UV0,{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),I.push([z.UV0,x])}if(r(e.attributes.color)){const t=C(v,S);if(4===e.attributes.color.elementCount)e.attributes.color instanceof h?O(t,e.attributes.color,255):e.attributes.color instanceof v?K(t,e.attributes.color):e.attributes.color instanceof B&&O(t,e.attributes.color,1/256);else{Q(t,255,255,255,255);const r=new M(t.buffer,0,4);e.attributes.color instanceof b?j(r,e.attributes.color,255):e.attributes.color instanceof M?H(r,e.attributes.color):e.attributes.color instanceof T&&j(r,e.attributes.color,1/256)}N.push([z.COLOR,{data:t.typedBuffer,size:t.elementCount,exclusive:!0}]),I.push([z.COLOR,x])}const L=new G(N,I);d.stageResources.geometries.push(L),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+=S;const F=L.boundingInfo;r(F)&&(g(d.boundingBox,F.getBBMin()),g(d.boundingBox,F.getBBMax()))}))})),l}function Z(e){switch(e){case\"BLEND\":return P.Blend;case\"MASK\":return P.Mask;case\"OPAQUE\":case null:case void 0:return P.Opaque}}function ee(e,t){switch(t){case W.TRIANGLES:return L(e);case W.TRIANGLE_STRIP:return I(e);case W.TRIANGLE_FAN:return N(e)}}function te(e,t){for(let r=0;r1&&f(B,B,h,a>-1?.2:Math.min(-4*a-3.8,1)),T.setVec(s,B),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=T,i.attributes.color=M}}}export{J as fetch,Y as gltfToEngineResources,X as parseUrl};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{neverReached as a}from\"../../../../../../core/compilerUtils.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";function e(e,o){const n=e.fragment;switch(n.code.add(r`struct ShadingNormalParameters {\nvec3 normalView;\nvec3 viewDirection;\n} shadingParams;`),o.doubleSidedMode){case i.None:n.code.add(r`vec3 shadingNormal(ShadingNormalParameters params) {\nreturn normalize(params.normalView);\n}`);break;case i.View:n.code.add(r`vec3 shadingNormal(ShadingNormalParameters params) {\nreturn dot(params.normalView, params.viewDirection) > 0.0 ? normalize(-params.normalView) : normalize(params.normalView);\n}`);break;case i.WindingOrder:n.code.add(r`vec3 shadingNormal(ShadingNormalParameters params) {\nreturn gl_FrontFacing ? normalize(params.normalView) : normalize(-params.normalView);\n}`);break;default:a(o.doubleSidedMode);case i.COUNT:}}var i;!function(a){a[a.None=0]=\"None\",a[a.View=1]=\"View\",a[a.WindingOrder=2]=\"WindingOrder\",a[a.COUNT=3]=\"COUNT\"}(i||(i={}));export{e as Normals,i as NormalsDoubleSidedMode};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{glsl as e}from\"../../shaderModules/interfaces.js\";import{VertexAttribute as t}from\"../../../lib/VertexAttribute.js\";function o(o){o.attributes.add(t.POSITION,\"vec3\"),o.vertex.code.add(e`vec3 positionModel() { return position; }`)}export{o as PositionAttribute};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{ViewingMode as e}from\"../views/ViewingMode.js\";import{ForwardLinearDepth as o}from\"../views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js\";import{Offset as r}from\"../views/3d/webgl-engine/core/shaderLibrary/Offset.glsl.js\";import{ShaderOutput as a}from\"../views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js\";import{Slice as i}from\"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js\";import{Transform as l}from\"../views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js\";import{InstancedDoublePrecision as t}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{NormalAttribute as d}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{PositionAttribute as n}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/PositionAttribute.glsl.js\";import{SymbolColor as s}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/SymbolColor.glsl.js\";import{TextureCoordinateAttribute as c}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{VertexColor as g}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VertexColor.glsl.js\";import{VerticalOffset as m}from\"../views/3d/webgl-engine/core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{DefaultMaterialAuxiliaryPasses as v}from\"../views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js\";import{ReadLinearDepth as p}from\"../views/3d/webgl-engine/core/shaderLibrary/output/ReadLinearDepth.glsl.js\";import{EvaluateAmbientOcclusion as b}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js\";import{EvaluateSceneLighting as u}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js\";import{multipassTerrainTest as f}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{PhysicallyBasedRendering as h}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js\";import{PhysicallyBasedRenderingParameters as w,PBRMode as x}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{ReadShadowMap as y}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{VisualVariables as C}from\"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js\";import{symbolAlphaCutoff as L,DiscardOrAdjustAlpha as M}from\"../views/3d/webgl-engine/core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{MixExternalColor as j}from\"../views/3d/webgl-engine/core/shaderLibrary/util/MixExternalColor.glsl.js\";import{glsl as O}from\"../views/3d/webgl-engine/core/shaderModules/interfaces.js\";import{ShaderBuilder as E}from\"../views/3d/webgl-engine/core/shaderModules/ShaderBuilder.js\";import{VertexAttribute as A}from\"../views/3d/webgl-engine/lib/VertexAttribute.js\";function _(_){const P=new E,S=P.vertex.code,F=P.fragment.code;return P.vertex.uniforms.add(\"proj\",\"mat4\").add(\"view\",\"mat4\").add(\"cameraPosition\",\"vec3\").add(\"localOrigin\",\"vec3\"),P.include(n),P.varyings.add(\"vpos\",\"vec3\"),P.include(C,_),P.include(t,_),P.include(m,_),_.output!==a.Color&&_.output!==a.Alpha||(P.include(d,_),P.include(l,{linearDepth:!1}),_.offsetBackfaces&&P.include(r),_.instancedColor&&P.attributes.add(A.INSTANCECOLOR,\"vec4\"),P.varyings.add(\"vNormalWorld\",\"vec3\"),P.varyings.add(\"localvpos\",\"vec3\"),_.multipassTerrainEnabled&&P.varyings.add(\"depth\",\"float\"),P.include(c,_),P.include(o,_),P.include(s,_),P.include(g,_),P.vertex.uniforms.add(\"externalColor\",\"vec4\"),P.varyings.add(\"vcolorExt\",\"vec4\"),S.add(O`\n void main(void) {\n forwardNormalizedVertexColor();\n vcolorExt = externalColor;\n ${_.instancedColor?\"vcolorExt *= instanceColor;\":\"\"}\n vcolorExt *= vvColor();\n vcolorExt *= getSymbolColor();\n forwardColorMixMode();\n\n if (vcolorExt.a < ${O.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 vNormalWorld = dpNormal(vvLocalNormal(normalModel()));\n vpos = addVerticalOffset(vpos, localOrigin);\n gl_Position = transformPosition(proj, view, vpos);\n ${_.offsetBackfaces?\"gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, cameraPosition);\":\"\"}\n }\n ${_.multipassTerrainEnabled?O`depth = (view * vec4(vpos, 1.0)).z;`:\"\"}\n forwardLinearDepth();\n forwardTextureCoordinates();\n }\n `)),_.output===a.Alpha&&(P.include(i,_),P.include(M,_),_.multipassTerrainEnabled&&(P.fragment.include(p),P.include(f,_)),P.fragment.uniforms.add(\"cameraPosition\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),P.fragment.uniforms.add(\"view\",\"mat4\"),_.hasColorTexture&&P.fragment.uniforms.add(\"tex\",\"sampler2D\"),P.fragment.include(j),F.add(O`\n void main() {\n discardBySlice(vpos);\n ${_.multipassTerrainEnabled?O`terrainDepthTest(gl_FragCoord, depth);`:\"\"}\n ${_.hasColorTexture?O`\n vec4 texColor = texture2D(tex, vuv0);\n ${_.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:O`vec4 texColor = vec4(1.0);`}\n ${_.attributeColor?O`\n float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));`:O`\n float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));\n `}\n\n gl_FragColor = vec4(opacity_);\n }\n `)),_.output===a.Color&&(P.include(i,_),P.include(u,_),P.include(b,_),P.include(M,_),_.receiveShadows&&P.include(y,_),_.multipassTerrainEnabled&&(P.fragment.include(p),P.include(f,_)),P.fragment.uniforms.add(\"cameraPosition\",\"vec3\").add(\"localOrigin\",\"vec3\").add(\"ambient\",\"vec3\").add(\"diffuse\",\"vec3\").add(\"opacity\",\"float\").add(\"layerOpacity\",\"float\"),P.fragment.uniforms.add(\"view\",\"mat4\"),_.hasColorTexture&&P.fragment.uniforms.add(\"tex\",\"sampler2D\"),P.include(w,_),P.include(h,_),P.fragment.include(j),F.add(O`\n void main() {\n discardBySlice(vpos);\n ${_.multipassTerrainEnabled?O`terrainDepthTest(gl_FragCoord, depth);`:\"\"}\n ${_.hasColorTexture?O`\n vec4 texColor = texture2D(tex, vuv0);\n ${_.textureAlphaPremultiplied?\"texColor.rgb /= texColor.a;\":\"\"}\n discardOrAdjustAlpha(texColor);`:O`vec4 texColor = vec4(1.0);`}\n vec3 viewDirection = normalize(vpos - cameraPosition);\n ${_.pbrMode===x.Normal?\"applyPBRFactors();\":\"\"}\n float ssao = evaluateAmbientOcclusionInverse();\n ssao *= getBakedOcclusion();\n\n float additionalAmbientScale = additionalDirectedAmbientLight(vpos + localOrigin);\n vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;\n ${_.receiveShadows?\"float shadow = readShadowMap(vpos, linearDepth);\":_.viewingMode===e.Global?\"float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);\":\"float shadow = 0.0;\"}\n vec3 matColor = max(ambient, diffuse);\n ${_.attributeColor?O`\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));`:O`\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 ${O`\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 ${_.pbrMode===x.Normal||_.pbrMode===x.Schematic?_.viewingMode===e.Global?O`vec3 normalGround = normalize(vpos + localOrigin);`:O`vec3 normalGround = vec3(0.0, 0.0, 1.0);`:O``}\n ${_.pbrMode===x.Normal||_.pbrMode===x.Schematic?O`\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 ${_.oitEnabled?\"gl_FragColor = premultiplyAlpha(gl_FragColor);\":\"\"}\n }\n `)),P.include(v,_),P}const P=Object.freeze({__proto__:null,build:_});export{P as R,_ as b};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/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.23/esri/copyright.txt for details.\n*/\nimport{DecodeNormal as e}from\"../util/DecodeNormal.glsl.js\";import{glsl as r}from\"../../shaderModules/interfaces.js\";import{VertexAttribute as t}from\"../../../lib/VertexAttribute.js\";function o(o,d){d.normalType===i.Attribute&&(o.attributes.add(t.NORMAL,\"vec3\"),o.vertex.code.add(r`vec3 normalModel() {\nreturn normal;\n}`)),d.normalType===i.CompressedAttribute&&(o.include(e),o.attributes.add(t.NORMALCOMPRESSED,\"vec2\"),o.vertex.code.add(r`vec3 normalModel() {\nreturn decodeNormal(normalCompressed);\n}`)),d.normalType===i.ScreenDerivative&&(o.extensions.add(\"GL_OES_standard_derivatives\"),o.fragment.code.add(r`vec3 screenDerivativeNormal(vec3 positionView) {\nreturn normalize(cross(dFdx(positionView), dFdy(positionView)));\n}`))}var i;!function(e){e[e.Attribute=0]=\"Attribute\",e[e.CompressedAttribute=1]=\"CompressedAttribute\",e[e.Ground=2]=\"Ground\",e[e.ScreenDerivative=3]=\"ScreenDerivative\",e[e.COUNT=4]=\"COUNT\"}(i||(i={}));export{o as NormalAttribute,i as NormalAttributeType};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{clamp as t}from\"../../../../core/mathUtils.js\";import{isNone as e}from\"../../../../core/maybe.js\";var r;function n(t){switch(t){case\"multiply\":default:return r.Multiply;case\"ignore\":return r.Ignore;case\"replace\":return r.Replace;case\"tint\":return r.Tint}}function o(n,o,l){if(e(n)||o===r.Ignore)return l[0]=255,l[1]=255,l[2]=255,void(l[3]=255);const p=t(Math.round(n[3]*a),0,a),s=0===p||o===r.Tint?0:o===r.Replace?c:u;l[0]=t(Math.round(n[0]*i),0,i),l[1]=t(Math.round(n[1]*i),0,i),l[2]=t(Math.round(n[2]*i),0,i),l[3]=p+s}!function(t){t[t.Multiply=1]=\"Multiply\",t[t.Ignore=2]=\"Ignore\",t[t.Replace=3]=\"Replace\",t[t.Tint=4]=\"Tint\"}(r||(r={}));const i=255,a=85,c=a,u=2*a;export{r as ColorMixModeEnum,o as encodeSymbolColor,n as parseColorMixMode};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{c as e}from\"../../../../../../chunks/vec3f64.js\";import{ShaderOutput as r}from\"../ShaderOutputOptions.js\";import{DoublePrecision as i}from\"../util/DoublePrecision.glsl.js\";import{glsl as o}from\"../../shaderModules/interfaces.js\";import{VertexAttribute as n}from\"../../../lib/VertexAttribute.js\";import{encodeDoubleArraySplit as t}from\"../../../../../webgl/doublePrecisionUtils.js\";function a(e,t){t.instanced&&t.instancedDoublePrecision&&(e.attributes.add(n.MODELORIGINHI,\"vec3\"),e.attributes.add(n.MODELORIGINLO,\"vec3\"),e.attributes.add(n.MODEL,\"mat3\"),e.attributes.add(n.MODELNORMAL,\"mat3\")),t.instancedDoublePrecision&&(e.vertex.include(i,t),e.vertex.uniforms.add(\"viewOriginHi\",\"vec3\"),e.vertex.uniforms.add(\"viewOriginLo\",\"vec3\"));const a=[o`\n vec3 calculateVPos() {\n ${t.instancedDoublePrecision?\"return model * localPosition().xyz;\":\"return localPosition().xyz;\"}\n }\n `,o`\n vec3 subtractOrigin(vec3 _pos) {\n ${t.instancedDoublePrecision?o`\n vec3 originDelta = dpAdd(viewOriginHi, viewOriginLo, -modelOriginHi, -modelOriginLo);\n return _pos - originDelta;`:\"return vpos;\"}\n }\n `,o`\n vec3 dpNormal(vec4 _normal) {\n ${t.instancedDoublePrecision?\"return normalize(modelNormal * _normal.xyz);\":\"return normalize(_normal.xyz);\"}\n }\n `,o`\n vec3 dpNormalView(vec4 _normal) {\n ${t.instancedDoublePrecision?\"return normalize((viewNormal * vec4(modelNormal * _normal.xyz, 1.0)).xyz);\":\"return normalize((viewNormal * _normal).xyz);\"}\n }\n `,t.vertexTangents?o`\n vec4 dpTransformVertexTangent(vec4 _tangent) {\n ${t.instancedDoublePrecision?\"return vec4(modelNormal * _tangent.xyz, _tangent.w);\":\"return _tangent;\"}\n\n }\n `:o``];e.vertex.code.add(a[0]),e.vertex.code.add(a[1]),e.vertex.code.add(a[2]),t.output===r.Normal&&e.vertex.code.add(a[3]),e.vertex.code.add(a[4])}class c{}function d(e,r){t(r,s,l,3),e.setUniform3fv(\"viewOriginHi\",s),e.setUniform3fv(\"viewOriginLo\",l)}const s=e(),l=e();export{a as InstancedDoublePrecision,c as InstancedDoublePrecisionUniforms,d as bindCustomOrigin};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{ShaderOutput as t}from\"../ShaderOutputOptions.js\";import{glsl as e}from\"../../shaderModules/interfaces.js\";import{webglValidateShadersEnabled as o}from\"../../../../../webgl/checkWebGLError.js\";function r(r,u){const p=e`\n /*\n * ${u.name}\n * ${u.output===t.Color?\"RenderOutput: Color\":u.output===t.Depth?\"RenderOutput: Depth\":u.output===t.Shadow?\"RenderOutput: Shadow\":u.output===t.Normal?\"RenderOutput: Normal\":u.output===t.Highlight?\"RenderOutput: Highlight\":\"\"}\n */\n `;o()&&(r.fragment.code.add(p),r.vertex.code.add(p))}export{r as HeaderComment};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{_ as e}from\"../../../../chunks/tslib.es6.js\";import t from\"../../../../core/Logger.js\";import{isSome as r}from\"../../../../core/maybe.js\";import{f as o}from\"../../../../chunks/vec3f64.js\";import{ShaderOutput as i}from\"../core/shaderLibrary/ShaderOutputOptions.js\";import{bindSliceUniforms as s}from\"../core/shaderLibrary/Slice.glsl.js\";import{bindCustomOrigin as a}from\"../core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js\";import{NormalAttributeType as n}from\"../core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{TextureCoordinateAttributeType as l}from\"../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{bindVerticalOffsetUniforms as p}from\"../core/shaderLibrary/attributes/VerticalOffset.glsl.js\";import{bindOutputHighlight as c}from\"../core/shaderLibrary/output/OutputHighlight.glsl.js\";import{bindMultipassTerrainTexture as u}from\"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js\";import{NormalsDoubleSidedMode as h}from\"../core/shaderLibrary/shading/Normals.glsl.js\";import{PBRMode as d,bindPBRUniforms as m}from\"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{bindReadShadowMapViewCustomOrigin as f}from\"../core/shaderLibrary/shading/ReadShadowMap.glsl.js\";import{bindVisualVariablesUniformsForSymbols as g}from\"../core/shaderLibrary/shading/VisualVariables.glsl.js\";import{doublePrecisionRequiresObfuscation as v}from\"../core/shaderLibrary/util/DoublePrecision.glsl.js\";import{bindProjectionMatrix as b,bindViewCustomOrigin as y,bindCameraPosition as T}from\"../core/shaderLibrary/util/View.glsl.js\";import{ReloadableShaderModule as x}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{ShaderTechnique as M}from\"../core/shaderTechnique/ShaderTechnique.js\";import{parameter as P,ShaderTechniqueConfiguration as C}from\"../core/shaderTechnique/ShaderTechniqueConfiguration.js\";import{AlphaDiscardMode as S,CullFaceOptions as O,TransparencyPassType as D,DepthTestFunction as j}from\"../lib/basicInterfaces.js\";import{Default3D as A}from\"../lib/DefaultVertexAttributeLocations.js\";import{blendingDefault as w,oitBlending as E,oitDepthTest as N,getOITPolygonOffset as U}from\"../lib/OrderIndependentTransparency.js\";import{Program as L}from\"../lib/Program.js\";import{stencilWriteMaskOn as z,stencilToolMaskBaseParams as F,stencilBaseAllZerosParams as R}from\"../lib/StencilUtils.js\";import{colorMixModes as H,bindScreenSizePerspective as B}from\"../materials/internal/MaterialUtil.js\";import{D as k}from\"../../../../chunks/DefaultMaterial.glsl.js\";import{CompareFunction as q}from\"../../../webgl/enums.js\";import{makePipelineState as I,cullingParams as V,defaultDepthWriteParams as _,defaultColorWriteParams as G}from\"../../../webgl/renderState.js\";const W=t.getLogger(\"esri.views.3d.webgl-engine.shaders.DefaultTechnique\");class Q extends M{initializeProgram(e){const t=Q.shader.get(),r=this.configuration,o=t.build({oitEnabled:r.transparencyPassType===D.Color,output:r.output,viewingMode:e.viewingMode,receiveShadows:r.receiveShadows,slicePlaneEnabled:r.slicePlaneEnabled,sliceHighlightDisabled:r.sliceHighlightDisabled,sliceEnabledForVertexPrograms:!1,symbolColor:r.symbolColors,vvSize:r.vvSize,vvColor:r.vvColor,vvInstancingEnabled:!0,instanced:r.instanced,instancedColor:r.instancedColor,instancedDoublePrecision:r.instancedDoublePrecision,pbrMode:r.usePBR?r.isSchematic?d.Schematic:d.Normal:d.Disabled,hasMetalnessAndRoughnessTexture:r.hasMetalnessAndRoughnessTexture,hasEmissionTexture:r.hasEmissionTexture,hasOcclusionTexture:r.hasOcclusionTexture,hasNormalTexture:r.hasNormalTexture,hasColorTexture:r.hasColorTexture,hasModelTransformation:r.hasModelTransformation,receiveAmbientOcclusion:r.receiveAmbientOcclusion,useCustomDTRExponentForWater:!1,normalType:r.normalsTypeDerivate?n.ScreenDerivative:n.Attribute,doubleSidedMode:r.doubleSidedMode,vertexTangents:r.vertexTangents,attributeTextureCoordinates:r.hasMetalnessAndRoughnessTexture||r.hasEmissionTexture||r.hasOcclusionTexture||r.hasNormalTexture||r.hasColorTexture?l.Default:l.None,textureAlphaPremultiplied:r.textureAlphaPremultiplied,attributeColor:r.vertexColors,screenSizePerspectiveEnabled:r.screenSizePerspective,verticalOffsetEnabled:r.verticalOffset,offsetBackfaces:r.offsetBackfaces,doublePrecisionRequiresObfuscation:v(e.rctx),alphaDiscardMode:r.alphaDiscardMode,supportsTextureAtlas:!1,multipassTerrainEnabled:r.multipassTerrainEnabled,cullAboveGround:r.cullAboveGround});return new L(e.rctx,o,A)}bindPass(e,t){var o,s;b(this.program,t.camera.projectionMatrix);const a=this.configuration.output;this.configuration.hasModelTransformation&&(r(e.modelTransformation)?this.program.setUniformMatrix4fv(\"model\",e.modelTransformation):W.warnOnce(\"hasModelTransformation true, but no modelTransformation found.\")),(this.configuration.output===i.Depth||t.multipassTerrainEnabled||a===i.Shadow)&&this.program.setUniform2fv(\"nearFar\",t.camera.nearFar),t.multipassTerrainEnabled&&(this.program.setUniform2fv(\"inverseViewport\",t.inverseViewport),u(this.program,t)),a===i.Alpha&&(this.program.setUniform1f(\"opacity\",e.opacity),this.program.setUniform1f(\"layerOpacity\",e.layerOpacity),this.program.setUniform4fv(\"externalColor\",e.externalColor),this.program.setUniform1i(\"colorMixMode\",H[e.colorMixMode])),a===i.Color?(t.lighting.setUniforms(this.program,!1,t.hasFillLights),this.program.setUniform3fv(\"ambient\",e.ambient),this.program.setUniform3fv(\"diffuse\",e.diffuse),this.program.setUniform4fv(\"externalColor\",e.externalColor),this.program.setUniform1i(\"colorMixMode\",H[e.colorMixMode]),this.program.setUniform1f(\"opacity\",e.opacity),this.program.setUniform1f(\"layerOpacity\",e.layerOpacity),this.configuration.usePBR&&m(this.program,e,this.configuration.isSchematic)):a===i.Highlight&&c(this.program,t),g(this.program,e),p(this.program,e,t),B(e.screenSizePerspective,this.program,\"screenSizePerspectiveAlignment\"),e.textureAlphaMode!==S.Mask&&e.textureAlphaMode!==S.MaskBlend||this.program.setUniform1f(\"textureAlphaCutoff\",e.textureAlphaCutoff),null==(o=t.shadowMap)||o.bind(this.program),null==(s=t.ssaoHelper)||s.bind(this.program,t.camera)}bindDraw(e){const t=this.configuration.instancedDoublePrecision?o(e.camera.viewInverseTransposeMatrix[3],e.camera.viewInverseTransposeMatrix[7],e.camera.viewInverseTransposeMatrix[11]):e.origin;y(this.program,t,e.camera.viewMatrix),this.program.rebindTextures(),(this.configuration.output===i.Color||this.configuration.output===i.Alpha||this.configuration.output===i.Depth&&this.configuration.screenSizePerspective||this.configuration.output===i.Normal&&this.configuration.screenSizePerspective||this.configuration.output===i.Highlight&&this.configuration.screenSizePerspective)&&T(this.program,t,e.camera.viewInverseTransposeMatrix),this.configuration.output===i.Normal&&this.program.setUniformMatrix4fv(\"viewNormal\",e.camera.viewInverseTransposeMatrix),this.configuration.instancedDoublePrecision&&a(this.program,t),s(this.program,this.configuration,e.slicePlane,{origin:t}),this.configuration.output===i.Color&&f(this.program,e,t)}_convertDepthTestFunction(e){return e===j.Lequal?q.LEQUAL:q.LESS}_setPipeline(e,t){const r=this.configuration,o=e===D.NONE,s=e===D.FrontFace;return I({blending:r.output!==i.Color&&r.output!==i.Alpha||!r.transparent?null:o?w:E(e),culling:J(r)&&V(r.cullFace),depthTest:{func:N(e,this._convertDepthTestFunction(r.customDepthTest))},depthWrite:o||s?r.writeDepth&&_:null,colorWrite:G,stencilWrite:r.sceneHasOcludees?z:null,stencilTest:r.sceneHasOcludees?t?F:R:null,polygonOffset:o||s?null:U(r.enableOffset)})}initializePipeline(){return this._occludeePipelineState=this._setPipeline(this.configuration.transparencyPassType,!0),this._setPipeline(this.configuration.transparencyPassType,!1)}getPipelineState(e,t){return t?this._occludeePipelineState:super.getPipelineState(e,t)}}function J(e){return e.cullFace?e.cullFace!==O.None:!e.slicePlaneEnabled&&(!e.transparent&&!e.doubleSidedMode)}Q.shader=new x(k,(()=>import(\"./DefaultMaterial.glsl.js\")));class K extends C{constructor(){super(...arguments),this.output=i.Color,this.alphaDiscardMode=S.Opaque,this.doubleSidedMode=h.None,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=O.None,this.transparencyPassType=D.NONE,this.multipassTerrainEnabled=!1,this.cullAboveGround=!1,this.hasModelTransformation=!1,this.customDepthTest=j.Less}}e([P({count:i.COUNT})],K.prototype,\"output\",void 0),e([P({count:S.COUNT})],K.prototype,\"alphaDiscardMode\",void 0),e([P({count:h.COUNT})],K.prototype,\"doubleSidedMode\",void 0),e([P()],K.prototype,\"isSchematic\",void 0),e([P()],K.prototype,\"vertexColors\",void 0),e([P()],K.prototype,\"offsetBackfaces\",void 0),e([P()],K.prototype,\"symbolColors\",void 0),e([P()],K.prototype,\"vvSize\",void 0),e([P()],K.prototype,\"vvColor\",void 0),e([P()],K.prototype,\"verticalOffset\",void 0),e([P()],K.prototype,\"receiveShadows\",void 0),e([P()],K.prototype,\"slicePlaneEnabled\",void 0),e([P()],K.prototype,\"sliceHighlightDisabled\",void 0),e([P()],K.prototype,\"receiveAmbientOcclusion\",void 0),e([P()],K.prototype,\"screenSizePerspective\",void 0),e([P()],K.prototype,\"textureAlphaPremultiplied\",void 0),e([P()],K.prototype,\"hasColorTexture\",void 0),e([P()],K.prototype,\"usePBR\",void 0),e([P()],K.prototype,\"hasMetalnessAndRoughnessTexture\",void 0),e([P()],K.prototype,\"hasEmissionTexture\",void 0),e([P()],K.prototype,\"hasOcclusionTexture\",void 0),e([P()],K.prototype,\"hasNormalTexture\",void 0),e([P()],K.prototype,\"instanced\",void 0),e([P()],K.prototype,\"instancedColor\",void 0),e([P()],K.prototype,\"instancedDoublePrecision\",void 0),e([P()],K.prototype,\"vertexTangents\",void 0),e([P()],K.prototype,\"normalsTypeDerivate\",void 0),e([P()],K.prototype,\"writeDepth\",void 0),e([P()],K.prototype,\"sceneHasOcludees\",void 0),e([P()],K.prototype,\"transparent\",void 0),e([P()],K.prototype,\"enableOffset\",void 0),e([P({count:O.COUNT})],K.prototype,\"cullFace\",void 0),e([P({count:D.COUNT})],K.prototype,\"transparencyPassType\",void 0),e([P()],K.prototype,\"multipassTerrainEnabled\",void 0),e([P()],K.prototype,\"cullAboveGround\",void 0),e([P()],K.prototype,\"hasModelTransformation\",void 0),e([P({count:j.COUNT})],K.prototype,\"customDepthTest\",void 0);export{Q as DefaultMaterialTechnique,K as DefaultMaterialTechniqueConfiguration};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{NormalAttributeType as e}from\"../core/shaderLibrary/attributes/NormalAttribute.glsl.js\";import{TextureCoordinateAttributeType as r}from\"../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js\";import{R as s}from\"../../../../chunks/RealisticTree.glsl.js\";import{NormalsDoubleSidedMode as i}from\"../core/shaderLibrary/shading/Normals.glsl.js\";import{PBRMode as o}from\"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js\";import{doublePrecisionRequiresObfuscation as t}from\"../core/shaderLibrary/util/DoublePrecision.glsl.js\";import{ReloadableShaderModule as a}from\"../core/shaderTechnique/ReloadableShaderModule.js\";import{TransparencyPassType as l}from\"../lib/basicInterfaces.js\";import{Default3D as n}from\"../lib/DefaultVertexAttributeLocations.js\";import{Program as c}from\"../lib/Program.js\";import{DefaultMaterialTechnique as d}from\"./DefaultMaterialTechnique.js\";class u extends d{initializeProgram(s){const a=u.shader.get(),d=this.configuration,b=a.build({oitEnabled:d.transparencyPassType===l.Color,output:d.output,viewingMode:s.viewingMode,receiveShadows:d.receiveShadows,slicePlaneEnabled:d.slicePlaneEnabled,sliceHighlightDisabled:d.sliceHighlightDisabled,sliceEnabledForVertexPrograms:!1,symbolColor:d.symbolColors,vvSize:d.vvSize,vvColor:d.vvColor,vvInstancingEnabled:!0,instanced:d.instanced,instancedColor:d.instancedColor,instancedDoublePrecision:d.instancedDoublePrecision,pbrMode:d.usePBR?o.Normal:o.Disabled,hasMetalnessAndRoughnessTexture:!1,hasEmissionTexture:!1,hasOcclusionTexture:!1,hasNormalTexture:!1,hasColorTexture:d.hasColorTexture,hasModelTransformation:!1,receiveAmbientOcclusion:d.receiveAmbientOcclusion,useCustomDTRExponentForWater:!1,normalType:e.Attribute,doubleSidedMode:i.WindingOrder,vertexTangents:!1,attributeTextureCoordinates:d.hasColorTexture?r.Default:r.None,textureAlphaPremultiplied:d.textureAlphaPremultiplied,attributeColor:d.vertexColors,screenSizePerspectiveEnabled:d.screenSizePerspective,verticalOffsetEnabled:d.verticalOffset,offsetBackfaces:d.offsetBackfaces,doublePrecisionRequiresObfuscation:t(s.rctx),alphaDiscardMode:d.alphaDiscardMode,supportsTextureAtlas:!1,multipassTerrainEnabled:d.multipassTerrainEnabled,cullAboveGround:d.cullAboveGround});return new c(s.rctx,b,n)}}u.shader=new a(s,(()=>import(\"../core/shaderLibrary/default/RealisticTree.glsl.js\")));export{u as RealisticTreeTechnique};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{isSome as e}from\"../../../../core/maybe.js\";import{c as t}from\"../../../../chunks/mat3f64.js\";import{s,g as i,n as r,f as a,l as n,a as o,d as l,t as c}from\"../../../../chunks/vec3.js\";import{c as h,f as u}from\"../../../../chunks/vec3f64.js\";import{ViewingMode as p}from\"../../../ViewingMode.js\";import{newLayout as m}from\"../../support/buffer/InterleavedLayout.js\";import{ShaderOutput as d}from\"../core/shaderLibrary/ShaderOutputOptions.js\";import{NormalsDoubleSidedMode as f}from\"../core/shaderLibrary/shading/Normals.glsl.js\";import{defaultMaskAlphaCutoff as v}from\"../core/shaderLibrary/util/AlphaDiscard.glsl.js\";import{CullFaceOptions as g,DepthTestFunction as T,AlphaDiscardMode as C}from\"../lib/basicInterfaces.js\";import b from\"../lib/GLMaterialTexture.js\";import{DefaultMaterialParameters as O,Material as x}from\"../lib/Material.js\";import{OITPolygonOffsetLimit as S}from\"../lib/OrderIndependentTransparency.js\";import{RenderPass as A}from\"../lib/RenderPass.js\";import{RenderSlot as E}from\"../lib/RenderSlot.js\";import{VertexAttribute as M}from\"../lib/VertexAttribute.js\";import{getVerticalOffsetObject3D as q}from\"../lib/verticalOffsetUtils.js\";import{writeDefaultAttributes as I}from\"./internal/bufferWriterUtils.js\";import{verticalOffsetAtDistance as L,intersectTriangleGeometry as P}from\"./internal/MaterialUtil.js\";import{DefaultMaterialTechniqueConfiguration as D,DefaultMaterialTechnique as R}from\"../shaders/DefaultMaterialTechnique.js\";import{RealisticTreeTechnique as y}from\"../shaders/RealisticTreeTechnique.js\";class _ extends x{constructor(e){super(e,B),this.supportsEdges=!0,this.techniqueConfig=new D,this.vertexBufferLayout=j(this.parameters),this.instanceBufferLayout=e.instanced?H(this.parameters):null}isVisibleInPass(e){return e!==A.MATERIAL_DEPTH_SHADOWMAP_ALL&&e!==A.MATERIAL_DEPTH_SHADOWMAP_DEFAULT&&e!==A.MATERIAL_DEPTH_SHADOWMAP_HIGHLIGHT||this.parameters.castShadows}isVisible(){const e=this.parameters;if(!super.isVisible()||0===e.layerOpacity)return!1;const t=e.instanced,s=e.vertexColors,i=e.symbolColors,r=!!t&&t.indexOf(\"color\")>-1,a=e.vvColorEnabled,n=\"replace\"===e.colorMixMode,o=e.opacity>0,l=e.externalColor&&e.externalColor[3]>0;return s&&(r||a||i)?!!n||o:s?n?l:o:r||a||i?!!n||o:n?l:o}getTechniqueConfig(t,s){return this.techniqueConfig.output=t,this.techniqueConfig.hasNormalTexture=!!this.parameters.normalTextureId,this.techniqueConfig.hasColorTexture=!!this.parameters.textureId,this.techniqueConfig.vertexTangents=this.parameters.vertexTangents,this.techniqueConfig.instanced=!!this.parameters.instanced,this.techniqueConfig.instancedDoublePrecision=this.parameters.instancedDoublePrecision,this.techniqueConfig.vvSize=this.parameters.vvSizeEnabled,this.techniqueConfig.verticalOffset=null!==this.parameters.verticalOffset,this.techniqueConfig.screenSizePerspective=null!==this.parameters.screenSizePerspective,this.techniqueConfig.slicePlaneEnabled=this.parameters.slicePlaneEnabled,this.techniqueConfig.sliceHighlightDisabled=this.parameters.sliceHighlightDisabled,this.techniqueConfig.alphaDiscardMode=this.parameters.textureAlphaMode,this.techniqueConfig.normalsTypeDerivate=\"screenDerivative\"===this.parameters.normals,this.techniqueConfig.transparent=this.parameters.transparent,this.techniqueConfig.writeDepth=this.parameters.writeDepth,e(this.parameters.customDepthTest)&&(this.techniqueConfig.customDepthTest=this.parameters.customDepthTest),this.techniqueConfig.sceneHasOcludees=this.parameters.sceneHasOcludees,this.techniqueConfig.cullFace=this.parameters.slicePlaneEnabled?g.None:this.parameters.cullFace,this.techniqueConfig.multipassTerrainEnabled=s.multipassTerrainEnabled,this.techniqueConfig.cullAboveGround=s.cullAboveGround,this.techniqueConfig.hasModelTransformation=e(this.parameters.modelTransformation),t!==d.Color&&t!==d.Alpha||(this.techniqueConfig.vertexColors=this.parameters.vertexColors,this.techniqueConfig.symbolColors=this.parameters.symbolColors,this.parameters.treeRendering?this.techniqueConfig.doubleSidedMode=f.WindingOrder:this.techniqueConfig.doubleSidedMode=this.parameters.doubleSided&&\"normal\"===this.parameters.doubleSidedType?f.View:this.parameters.doubleSided&&\"winding-order\"===this.parameters.doubleSidedType?f.WindingOrder:f.None,this.techniqueConfig.instancedColor=!!this.parameters.instanced&&this.parameters.instanced.indexOf(\"color\")>-1,this.techniqueConfig.receiveShadows=this.parameters.receiveShadows&&this.parameters.shadowMappingEnabled,this.techniqueConfig.receiveAmbientOcclusion=!!s.ssaoEnabled&&this.parameters.receiveSSAO,this.techniqueConfig.vvColor=this.parameters.vvColorEnabled,this.techniqueConfig.textureAlphaPremultiplied=!!this.parameters.textureAlphaPremultiplied,this.techniqueConfig.usePBR=this.parameters.usePBR,this.techniqueConfig.hasMetalnessAndRoughnessTexture=!!this.parameters.metallicRoughnessTextureId,this.techniqueConfig.hasEmissionTexture=!!this.parameters.emissiveTextureId,this.techniqueConfig.hasOcclusionTexture=!!this.parameters.occlusionTextureId,this.techniqueConfig.offsetBackfaces=!(!this.parameters.transparent||!this.parameters.offsetTransparentBackfaces),this.techniqueConfig.isSchematic=this.parameters.usePBR&&this.parameters.isSchematic,this.techniqueConfig.transparencyPassType=s.transparencyPassType,this.techniqueConfig.enableOffset=s.camera.relativeElevation-1&&(t=t.vec4f(M.INSTANCECOLOR)),e.instanced&&e.instanced.indexOf(\"featureAttribute\")>-1&&(t=t.vec4f(M.INSTANCEFEATUREATTRIBUTE)),t}const z=h(),G=h(),V=u(0,0,1),k=h(),F=h(),U=h(),W=h();export{_ as DefaultMaterial,H as getInstanceBufferLayout};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{isInteger as e,maximumValue as t,isSigned as n}from\"../geometry/support/buffer/types.js\";function f(e,t,n){const f=e.typedBuffer,r=e.typedBufferStride,d=t.typedBuffer,o=t.typedBufferStride,u=n?n.count:t.count;let l=(n&&n.dstIndex?n.dstIndex:0)*r,s=(n&&n.srcIndex?n.srcIndex:0)*o;for(let c=0;c>r,o[e+1]=u[t+1]>>r,o[e+2]=u[t+2]>>r,o[e+3]=u[t+3]>>r}}const n=Object.freeze({__proto__:null,transformMat4:t,transformMat3:r,scale:f,shiftRight:o});export{o as a,t as b,f as s,r as t,n as v};\n","/*\nAll material copyright ESRI, All Rights Reserved, unless otherwise specified.\nSee https://js.arcgis.com/4.23/esri/copyright.txt for details.\n*/\nimport{ViewingMode as i}from\"../../../../../ViewingMode.js\";import{EvaluateAmbientLighting as n}from\"./EvaluateAmbientLighting.glsl.js\";import{EvaluateAmbientOcclusion as o}from\"./EvaluateAmbientOcclusion.glsl.js\";import{EvaluateMainLighting as e}from\"./EvaluateMainLighting.glsl.js\";import{PhysicallyBasedRendering as t}from\"./PhysicallyBasedRendering.glsl.js\";import{PBRMode as a}from\"./PhysicallyBasedRenderingParameters.glsl.js\";import{PiUtils as r}from\"./PiUtils.glsl.js\";import{ReadShadowMap as l}from\"./ReadShadowMap.glsl.js\";import{glsl as d}from\"../../shaderModules/interfaces.js\";function c(c,m){const s=c.fragment;c.include(e),c.include(o,m),m.pbrMode!==a.Disabled&&c.include(t,m),c.include(n,m),m.receiveShadows&&c.include(l,m),s.uniforms.add(\"lightingGlobalFactor\",\"float\"),s.uniforms.add(\"ambientBoostFactor\",\"float\"),s.uniforms.add(\"hasFillLights\",\"bool\"),c.include(r),s.code.add(d`\n const float GAMMA_SRGB = 2.1;\n const float INV_GAMMA_SRGB = 0.4761904;\n ${m.pbrMode===a.Disabled?\"\":\"const vec3 GROUND_REFLECTANCE = vec3(0.2);\"}\n `),s.code.add(d`\n float additionalDirectedAmbientLight(vec3 vPosWorld) {\n float vndl = dot(${m.viewingMode===i.Global?d`normalize(vPosWorld)`:d`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 `),s.code.add(d`vec3 evaluateAdditionalLighting(float ambientOcclusion, vec3 vPosWorld) {\nfloat additionalAmbientScale = additionalDirectedAmbientLight(vPosWorld);\nreturn (1.0 - ambientOcclusion) * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor * lightingMainIntensity;\n}`),m.pbrMode===a.Disabled||m.pbrMode===a.WaterOnIntegratedMesh?s.code.add(d`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}`):m.pbrMode!==a.Normal&&m.pbrMode!==a.Schematic||(s.code.add(d`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);`),s.code.add(d`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);`),s.code.add(d`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 = hasFillLights ? abs(dot(normal, ambientDir)) : 1.0;\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 ;`),s.code.add(d`vec3 horizonRingDir = inputs.RdotNG * normalGround - reflectedView;\nvec3 horizonRingH = normalize(viewDirection + horizonRingDir);\ninputs.NdotH_Horizon = dot(normal, horizonRingH);\nvec3 mainLightRadianceComponent = lightingSpecularStrength * normalDistribution(inputs.NdotH, inputs.roughness) * lightingMainIntensity * (1.0 - shadow);\nvec3 horizonLightRadianceComponent = lightingEnvironmentStrength * normalDistribution(inputs.NdotH_Horizon, min(inputs.roughness + horizonLightDiffusion, 1.0)) * lightingMainIntensity * fillLightIntensity;\nvec3 ambientLightRadianceComponent = lightingEnvironmentStrength * calculateAmbientRadiance(ssao) + additionalLight;\ninputs.skyRadianceToSurface = ambientLightRadianceComponent + mainLightRadianceComponent + horizonLightRadianceComponent;\ninputs.groundRadianceToSurface = GROUND_REFLECTANCE * (ambientLightRadianceComponent + horizonLightRadianceComponent) + mainLightRadianceComponent;\ninputs.averageAmbientRadiance = ambientLightIrradianceComponent[1] * (1.0 + GROUND_REFLECTANCE[1]);`),s.code.add(d`\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 ${m.pbrMode===a.Schematic?d`vec3 outColor = pow(max(vec3(0.0), outColorLinear - 0.005 * inputs.averageAmbientRadiance), vec3(INV_GAMMA_SRGB));`:d`vec3 outColor = pow(blackLevelSoftCompression(outColorLinear, inputs), vec3(INV_GAMMA_SRGB));`}\n return outColor;\n }\n `))}export{c as EvaluateSceneLighting};\n"],"sourceRoot":""}