UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

8 lines (7 loc) 1.88 kB
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */ import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.glsl.js";import{ReadDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{RgbaFloatEncoding as o}from"../views/3d/webgl-engine/core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import{Float2BindUniform as a}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{FloatPassUniform as s}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as i,If as t}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DPassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{NoParameters as l}from"../views/webgl/NoParameters.js";import{ShaderBuilder as d}from"../views/webgl/ShaderBuilder.js";class m extends l{constructor(){super(...arguments),this.opacity=1}}function g(l){const m=new d,{blendEmissive:g,blitMode:c,hasOpacityFactor:f}=l;m.include(e),m.fragment.uniforms.add(new n("tex",e=>e.texture)),f&&m.fragment.uniforms.add(new s("opacity",e=>e.opacity));const u=3===c;return u&&(m.fragment.uniforms.add(new a("nearFar",e=>e.camera.nearFar)),m.fragment.include(r),m.fragment.include(o)),g&&(m.outputs.add("fragColor","vec4",0),m.outputs.add("fragEmission","vec4",1)),m.fragment.main.add(i` ${u?i` float normalizedLinearDepth = (-linearDepthFromTexture(tex, uv) - nearFar[0]) / (nearFar[1] - nearFar[0]); fragColor = floatToRgba(normalizedLinearDepth);`:i` fragColor = texture(tex, uv) ${f?"* opacity":""};`} ${t(g,"fragEmission = vec4(0.0, 0.0, 0.0, fragColor.a);")}`),m}const c=Object.freeze(Object.defineProperty({__proto__:null,CompositingPassParameters:m,build:g},Symbol.toStringTag,{value:"Module"}));export{m as C,c as a,g as b};