UNPKG

@deck.gl/layers

Version:

deck.gl core layers

3 lines 1.26 kB
declare const _default: "#version 300 es\n#define SHADER_NAME multi-icon-layer-fragment-shader\n\nprecision highp float;\n\nuniform sampler2D iconsTexture;\n\nin vec4 vColor;\nin vec2 vTextureCoords;\nin vec2 uv;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = uv;\n\n if (!bool(picking.isActive)) {\n float alpha = texture(iconsTexture, vTextureCoords).a;\n vec4 color = vColor;\n\n // if enable sdf (signed distance fields)\n if (sdf.enabled) {\n float distance = alpha;\n alpha = smoothstep(sdf.buffer - sdf.gamma, sdf.buffer + sdf.gamma, distance);\n\n if (sdf.outlineBuffer > 0.0) {\n float inFill = alpha;\n float inBorder = smoothstep(sdf.outlineBuffer - sdf.gamma, sdf.outlineBuffer + sdf.gamma, distance);\n color = mix(sdf.outlineColor, vColor, inFill);\n alpha = inBorder;\n }\n }\n\n // Take the global opacity and the alpha from color into account for the alpha component\n float a = alpha * color.a;\n \n if (a < icon.alphaCutoff) {\n discard;\n }\n\n fragColor = vec4(color.rgb, a * layer.opacity);\n }\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n"; export default _default; //# sourceMappingURL=multi-icon-layer-fragment.glsl.d.ts.map