radar-gi/shaders/colormap.glsl
2024-07-18 20:52:15 +08:00

20 lines
398 B
GLSL

uniform sampler1D colormap;
uniform vec4 conf;
vec4 linear_colormap(float value)
{
float vmin = conf.x;
float vmax = conf.y;
float count = conf.z - 1.0;
float invalid = conf.w;
if (value == invalid) {
return vec4(0.0, 0.0, 0.0, 0.0);
}
float v = clamp((value - vmin), vmin, vmax) / (vmax - vmin);
vec4 result = texture(colormap, v);
return result;
}