declare const _default: "struct TriangleAttributes {\n @location(0) positions: vec3,\n @location(1) texCoords: vec2,\n};\n\nstruct TriangleVaryings {\n @builtin(position) position: vec4,\n @location(0) textureCoordinates: vec2,\n @location(1) intensityMinimum: f32,\n @location(2) intensityMaximum: f32,\n};\n\n@vertex\nfn vertexMain(attributes: TriangleAttributes) -> TriangleVaryings {\n var output: TriangleVaryings;\n output.position = project_position_to_clipspace(\n attributes.positions,\n vec3(0.0),\n vec3(0.0)\n );\n // WebGPU render-target textures use a top-left origin.\n output.textureCoordinates = vec2(attributes.texCoords.x, 1.0 - attributes.texCoords.y);\n\n let maxWeights = textureLoad(maxTexture, vec2(0), 0);\n var maximumValue = select(maxWeights.r, maxWeights.g, triangle.aggregationMode > 0.5);\n var minimumValue = maximumValue * triangle.threshold;\n\n if (triangle.colorDomain.y > 0.0) {\n maximumValue = triangle.colorDomain.y;\n minimumValue = triangle.colorDomain.x;\n }\n\n output.intensityMaximum = triangle.intensity / maximumValue;\n output.intensityMinimum = triangle.intensity / minimumValue;\n return output;\n}\n\n@fragment\nfn fragmentMain(varyings: TriangleVaryings) -> @location(0) vec4 {\n let weights = textureSample(weightsTexture, weightsTextureSampler, varyings.textureCoordinates);\n var weight = weights.r;\n\n if (triangle.aggregationMode > 0.5) {\n weight /= max(1.0, weights.a);\n }\n\n let colorCoordinates = vec2(\n clamp(weight * varyings.intensityMaximum, 0.0, 1.0),\n 0.5\n );\n var color = textureSample(colorTexture, colorTextureSampler, colorCoordinates);\n\n if (weight <= 0.0) {\n discard;\n }\n\n color.a *= min(weight * varyings.intensityMinimum, 1.0) * layer.opacity;\n return deckgl_premultiplied_alpha(color);\n}\n"; export default _default; //# sourceMappingURL=triangle-layer.wgsl.d.ts.map