123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244 |
- import {
- c
- } from "./chunk-QXZVBSBH.js";
- import {
- a,
- a2,
- a3,
- a4,
- c as c2,
- c2 as c3,
- c3 as c4,
- c4 as c5,
- d,
- d2,
- d4 as d3,
- e2 as e,
- e3 as e2,
- e4 as e3,
- e5 as e4,
- e6 as e5,
- f2 as f,
- h3 as h,
- i,
- i3 as i2,
- i4 as i3,
- i5 as i4,
- l,
- m,
- m2,
- m3,
- m4,
- n as n2,
- n2 as n3,
- n3 as n4,
- n4 as n5,
- o as o2,
- o2 as o3,
- o3 as o4,
- o4 as o5,
- o6,
- r3 as r2,
- s,
- s2,
- t,
- t2,
- u
- } from "./chunk-OBMTYN3I.js";
- import {
- O as O2
- } from "./chunk-EPIK5VPD.js";
- import {
- O
- } from "./chunk-XXBIV3TZ.js";
- import {
- o
- } from "./chunk-E3HOL2XO.js";
- import {
- n
- } from "./chunk-H2KDMZTR.js";
- import {
- r
- } from "./chunk-GZT4BVFP.js";
- // node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/Normals.glsl.js
- function e6(e7, o7) {
- const n6 = e7.fragment;
- switch (n6.code.add(n2`struct ShadingNormalParameters {
- vec3 normalView;
- vec3 viewDirection;
- } shadingParams;`), o7.doubleSidedMode) {
- case i5.None:
- n6.code.add(n2`vec3 shadingNormal(ShadingNormalParameters params) {
- return normalize(params.normalView);
- }`);
- break;
- case i5.View:
- n6.code.add(n2`vec3 shadingNormal(ShadingNormalParameters params) {
- return dot(params.normalView, params.viewDirection) > 0.0 ? normalize(-params.normalView) : normalize(params.normalView);
- }`);
- break;
- case i5.WindingOrder:
- n6.code.add(n2`vec3 shadingNormal(ShadingNormalParameters params) {
- return gl_FrontFacing ? normalize(params.normalView) : normalize(-params.normalView);
- }`);
- break;
- default:
- n(o7.doubleSidedMode);
- case i5.COUNT:
- }
- }
- var i5;
- !function(a5) {
- a5[a5.None = 0] = "None", a5[a5.View = 1] = "View", a5[a5.WindingOrder = 2] = "WindingOrder", a5[a5.COUNT = 3] = "COUNT";
- }(i5 || (i5 = {}));
- // node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/shading/ComputeNormalTexture.glsl.js
- function m5(m6, c6) {
- const i6 = m6.fragment;
- if (c6.hasVertexTangents ? (m6.attributes.add(O.TANGENT, "vec4"), m6.varyings.add("vTangent", "vec4"), c6.doubleSidedMode === i5.WindingOrder ? i6.code.add(n2`mat3 computeTangentSpace(vec3 normal) {
- float tangentHeadedness = gl_FrontFacing ? vTangent.w : -vTangent.w;
- vec3 tangent = normalize(gl_FrontFacing ? vTangent.xyz : -vTangent.xyz);
- vec3 bitangent = cross(normal, tangent) * tangentHeadedness;
- return mat3(tangent, bitangent, normal);
- }`) : i6.code.add(n2`mat3 computeTangentSpace(vec3 normal) {
- float tangentHeadedness = vTangent.w;
- vec3 tangent = normalize(vTangent.xyz);
- vec3 bitangent = cross(normal, tangent) * tangentHeadedness;
- return mat3(tangent, bitangent, normal);
- }`)) : (m6.extensions.add("GL_OES_standard_derivatives"), i6.code.add(n2`mat3 computeTangentSpace(vec3 normal, vec3 pos, vec2 st) {
- vec3 Q1 = dFdx(pos);
- vec3 Q2 = dFdy(pos);
- vec2 stx = dFdx(st);
- vec2 sty = dFdy(st);
- float det = stx.t * sty.s - sty.t * stx.s;
- vec3 T = stx.t * Q2 - sty.t * Q1;
- T = T - normal * dot(normal, T);
- T *= inversesqrt(max(dot(T,T), 1.e-10));
- vec3 B = sign(det) * cross(normal, T);
- return mat3(T, B, normal);
- }`)), c6.textureCoordinateType !== o4.None) {
- m6.include(a, c6);
- const e7 = c6.supportsTextureAtlas;
- i6.uniforms.add(c6.pbrTextureBindType === a2.Pass ? m2("normalTexture", (e8) => e8.textureNormal, e7) : m("normalTexture", (e8) => e8.textureNormal, e7)), i6.code.add(n2`
- vec3 computeTextureNormal(mat3 tangentSpace, vec2 uv) {
- vtc.uv = uv;
- ${c6.supportsTextureAtlas ? "vtc.size = normalTextureSize;" : ""}
- vec3 rawNormal = textureLookup(normalTexture, vtc).rgb * 2.0 - 1.0;
- return tangentSpace * rawNormal;
- }
- `);
- }
- }
- // node_modules/@arcgis/core/views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js
- function r3(r4, u2) {
- const p = n2`
- /*
- * ${u2.name}
- * ${u2.output === o2.Color ? "RenderOutput: Color" : u2.output === o2.Depth ? "RenderOutput: Depth" : u2.output === o2.Shadow ? "RenderOutput: Shadow" : u2.output === o2.Normal ? "RenderOutput: Normal" : u2.output === o2.Highlight ? "RenderOutput: Highlight" : ""}
- */
- `;
- c() && (r4.fragment.code.add(p), r4.vertex.code.add(p));
- }
- // node_modules/@arcgis/core/chunks/DefaultMaterial.glsl.js
- function k(k2) {
- const W2 = new i4(), H = W2.vertex.code, q = W2.fragment.code;
- W2.include(r3, { name: "Default Material Shader", output: k2.output });
- const J = d3(W2, k2);
- return W2.include(o5), W2.varyings.add("vpos", "vec3"), W2.include(s, k2), W2.include(m3, k2), W2.include(a3, k2), k2.output !== o2.Color && k2.output !== o2.Alpha || (c3(W2.vertex, k2), W2.include(o3, k2), W2.include(r2, { linearDepth: false, hasModelTransformation: k2.hasModelTransformation }), k2.normalType === i.Attribute && k2.offsetBackfaces && W2.include(e3), W2.include(m5, k2), W2.include(n3, k2), k2.instancedColor && W2.attributes.add(O.INSTANCECOLOR, "vec4"), W2.varyings.add("localvpos", "vec3"), W2.include(d, k2), W2.include(t2, k2), W2.include(i2, k2), W2.include(e4, k2), W2.vertex.uniforms.add(new e5("externalColor", (e7) => e7.externalColor)), W2.varyings.add("vcolorExt", "vec4"), k2.hasMultipassTerrain && W2.varyings.add("depth", "float"), k2.hasModelTransformation && W2.vertex.uniforms.add(new e2("model", (o7) => r(o7.modelTransformation) ? o7.modelTransformation : o)), H.add(n2`
- void main(void) {
- forwardNormalizedVertexColor();
- vcolorExt = externalColor;
- ${k2.instancedColor ? "vcolorExt *= instanceColor;" : ""}
- vcolorExt *= vvColor();
- vcolorExt *= getSymbolColor();
- forwardColorMixMode();
- if (vcolorExt.a < ${n2.float(t)}) {
- gl_Position = vec4(1e38, 1e38, 1e38, 1.0);
- } else {
- vpos = calculateVPos();
- localvpos = vpos - view[3].xyz;
- vpos = subtractOrigin(vpos);
- ${k2.normalType === i.Attribute ? n2`vNormalWorld = dpNormal(vvLocalNormal(normalModel()));` : ""}
- vpos = addVerticalOffset(vpos, localOrigin);
- ${k2.hasVertexTangents ? "vTangent = dpTransformVertexTangent(tangent);" : ""}
- gl_Position = transformPosition(proj, view, ${k2.hasModelTransformation ? "model," : ""} vpos);
- ${k2.normalType === i.Attribute && k2.offsetBackfaces ? "gl_Position = offsetBackfacingClipPosition(gl_Position, vpos, vNormalWorld, cameraPosition);" : ""}
- }
- ${k2.hasMultipassTerrain ? "depth = (view * vec4(vpos, 1.0)).z;" : ""}
- forwardLinearDepth();
- forwardTextureCoordinates();
- }
- `)), k2.output === o2.Alpha && (W2.include(u, k2), W2.include(s2, k2), W2.include(n5, k2), W2.fragment.uniforms.add([new o6("opacity", (e7) => e7.opacity), new o6("layerOpacity", (e7) => e7.layerOpacity)]), k2.hasColorTexture && W2.fragment.uniforms.add(new c2("tex", (e7) => e7.texture)), W2.fragment.include(i3), q.add(n2`
- void main() {
- discardBySlice(vpos);
- ${k2.hasMultipassTerrain ? "terrainDepthTest(gl_FragCoord, depth);" : ""}
- ${k2.hasColorTexture ? n2`
- vec4 texColor = texture2D(tex, vuv0);
- ${k2.textureAlphaPremultiplied ? "texColor.rgb /= texColor.a;" : ""}
- discardOrAdjustAlpha(texColor);` : n2`vec4 texColor = vec4(1.0);`}
- ${k2.hasVertexColors ? n2`float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));` : n2`float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));`}
- gl_FragColor = vec4(opacity_);
- }
- `)), k2.output === o2.Color && (W2.include(u, k2), W2.include(m4, k2), W2.include(a4, k2), W2.include(s2, k2), W2.include(k2.instancedDoublePrecision ? h : c5, k2), W2.include(n5, k2), c3(W2.fragment, k2), W2.fragment.uniforms.add([J, new e("ambient", (e7) => e7.ambient), new e("diffuse", (e7) => e7.diffuse), new o6("opacity", (e7) => e7.opacity), new o6("layerOpacity", (e7) => e7.layerOpacity), new o6("lightingGlobalFactor", (e7, r4) => r4.lighting.globalFactor), new e("lightingMainIntensity", (e7, r4) => r4.lighting.mainLight.intensity)]), W2.fragment.constants.add("ambientBoostFactor", "float", c4), k2.hasColorTexture && W2.fragment.uniforms.add(new c2("tex", (e7) => e7.texture)), W2.include(d2, k2), W2.include(n4, k2), W2.fragment.include(i3), W2.include(e6, k2), q.add(n2`
- void main() {
- discardBySlice(vpos);
- ${k2.hasMultipassTerrain ? "terrainDepthTest(gl_FragCoord, depth);" : ""}
- ${k2.hasColorTexture ? n2`
- vec4 texColor = texture2D(tex, vuv0);
- ${k2.textureAlphaPremultiplied ? "texColor.rgb /= texColor.a;" : ""}
- discardOrAdjustAlpha(texColor);` : n2`vec4 texColor = vec4(1.0);`}
- shadingParams.viewDirection = normalize(vpos - cameraPosition);
- ${k2.normalType === i.ScreenDerivative ? n2`
- vec3 normal = screenDerivativeNormal(localvpos);` : n2`
- shadingParams.normalView = vNormalWorld;
- vec3 normal = shadingNormal(shadingParams);`}
- ${k2.pbrMode === l.Normal ? "applyPBRFactors();" : ""}
- float ssao = evaluateAmbientOcclusionInverse();
- ssao *= getBakedOcclusion();
- float additionalAmbientScale = additionalDirectedAmbientLight(vpos + localOrigin);
- ${k2.receiveShadows ? "float shadow = readShadowMap(vpos, linearDepth);" : k2.spherical ? "float shadow = lightingGlobalFactor * (1.0 - additionalAmbientScale);" : "float shadow = 0.0;"}
- vec3 matColor = max(ambient, diffuse);
- ${k2.hasVertexColors ? n2`
- vec3 albedo = mixExternalColor(vColor.rgb * matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));
- float opacity_ = layerOpacity * mixExternalOpacity(vColor.a * opacity, texColor.a, vcolorExt.a, int(colorMixMode));` : n2`
- vec3 albedo = mixExternalColor(matColor, texColor.rgb, vcolorExt.rgb, int(colorMixMode));
- float opacity_ = layerOpacity * mixExternalOpacity(opacity, texColor.a, vcolorExt.a, int(colorMixMode));`}
- ${k2.hasNormalTexture ? n2`
- mat3 tangentSpace = ${k2.hasVertexTangents ? "computeTangentSpace(normal);" : "computeTangentSpace(normal, vpos, vuv0);"}
- vec3 shadingNormal = computeTextureNormal(tangentSpace, vuv0);` : n2`vec3 shadingNormal = normal;`}
- vec3 normalGround = ${k2.spherical ? n2`normalize(vpos + localOrigin);` : n2`vec3(0.0, 0.0, 1.0);`}
- ${k2.snowCover ? n2`
- float snow = smoothstep(0.5, 0.55, dot(normal, normalGround));
- albedo = mix(albedo, vec3(1), snow);
- shadingNormal = mix(shadingNormal, normal, snow);
- ssao = mix(ssao, 1.0, snow);` : ""}
- vec3 additionalLight = ssao * lightingMainIntensity * additionalAmbientScale * ambientBoostFactor * lightingGlobalFactor;
- ${k2.pbrMode === l.Normal || k2.pbrMode === l.Schematic ? n2`
- float additionalAmbientIrradiance = additionalAmbientIrradianceFactor * lightingMainIntensity[2];
- ${k2.snowCover ? n2`
- mrr = mix(mrr, vec3(0.0, 1.0, 0.04), snow);
- emission = mix(emission, vec3(0.0), snow);` : ""}
- vec3 shadedColor = evaluateSceneLightingPBR(shadingNormal, albedo, shadow, 1.0 - ssao, additionalLight, shadingParams.viewDirection, normalGround, mrr, emission, additionalAmbientIrradiance);` : n2`vec3 shadedColor = evaluateSceneLighting(shadingNormal, albedo, shadow, 1.0 - ssao, additionalLight);`}
- gl_FragColor = highlightSlice(vec4(shadedColor, opacity_), vpos);
- ${k2.transparencyPassType === O2.Color ? n2`gl_FragColor = premultiplyAlpha(gl_FragColor);` : ""}
- }
- `)), W2.include(f, k2), W2;
- }
- var W = Object.freeze(Object.defineProperty({ __proto__: null, build: k }, Symbol.toStringTag, { value: "Module" }));
- export {
- i5 as i,
- k,
- W
- };
- //# sourceMappingURL=chunk-Q7HVKAHU.js.map
|