ngx-open-map-wrapper/node_modules/maplibre-gl/src/shaders
2025-09-29 14:55:14 -04:00
..
_prelude.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_prelude.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_prelude.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_prelude.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_projection_globe.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_projection_globe.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_projection_mercator.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
_projection_mercator.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
atmosphere.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
atmosphere.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
atmosphere.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
atmosphere.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background_pattern.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background_pattern.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background_pattern.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background_pattern.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
background.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
circle.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
circle.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
circle.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
circle.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
clipping_mask.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
clipping_mask.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
clipping_mask.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
clipping_mask.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_box.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_box.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_box.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_box.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_circle.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_circle.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_circle.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
collision_circle.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
color_relief.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
color_relief.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
color_relief.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
color_relief.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
debug.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
debug.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
debug.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
debug.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
depth.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
depth.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
encode_attribute.test.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
encode_attribute.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion_pattern.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion_pattern.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion_pattern.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion_pattern.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_extrusion.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline_pattern.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline_pattern.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline_pattern.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline_pattern.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_outline.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_pattern.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_pattern.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_pattern.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill_pattern.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
fill.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap_texture.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap_texture.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap_texture.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap_texture.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
heatmap.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade_prepare.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade_prepare.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade_prepare.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade_prepare.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
hillshade.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_gradient.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_gradient.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_gradient.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_gradient.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_pattern.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_pattern.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_pattern.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_pattern.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_sdf.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_sdf.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_sdf.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line_sdf.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
line.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
projection_error_measurement.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
projection_error_measurement.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
projection_error_measurement.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
projection_error_measurement.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
raster.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
raster.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
raster.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
raster.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
README.md add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
shaders.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
sky.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
sky.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
sky.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
sky.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_icon.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_icon.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_icon.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_icon.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_sdf.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_sdf.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_sdf.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_sdf.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_text_and_icon.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_text_and_icon.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_text_and_icon.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
symbol_text_and_icon.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_coords.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_coords.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_coords.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_coords.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_depth.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_depth.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_depth.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain_depth.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain.fragment.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain.fragment.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain.vertex.glsl add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00
terrain.vertex.glsl.g.ts add addzone and update zone in map-adapter interface 2025-09-29 14:55:14 -04:00

MapLibre GL JS Shaders

This repository contains the GLSL shaders

Pragmas

Some variables change type depending on their context:

  • if the variable is the same for all features, we declare it as a uniform
  • if the variable is different for each feature, we declare it as an attribute (in the vertex shader) and an accompanying varying (in both the vertex and fragment shaders).
  • if the variable is different for each feature and a function of zoom, we declare several attributes and uniforms then calculate the value using interpolation

We abstract over this functionality using pragmas.

#pragma mapbox: define highp vec4 color

main() {
    #pragma mapbox: initialize highp vec4 color
    ...
    fragColor = color;
}

This program defines a variable within main called color, initialize the value of color, then sets fragColor to the value of color.

Pragmas take the following form.

#pragma mapbox: (define|initialize) (lowp|mediump|highp) (float|vec2|vec3|vec4) {name}

When using pragmas, the following requirements apply.

  • all pragma-defined variables must have both define and initialize pragmas
  • define pragmas must be in file scope
  • initialize pragmas must be in function scope
  • all pragma-defined variables defined and initialized in the fragment shader must also be defined and initialized in the vertex shader because attributes are not accessible from the fragment shader

Prelude

The _prelude.fragment.glsl and _prelude.vertex.glsl files are automatically included in all shaders by the compiler.