Pixel-Composer/shaders/sh_sdf_dist/sh_sdf_dist.fsh
2023-02-14 08:48:33 +07:00

20 lines
451 B
GLSL

//
// Simple passthrough fragment shader
//
varying vec2 v_vTexcoord;
varying vec4 v_vColour;
uniform int side;
uniform float max_distance;
void main() {
vec4 col = texture2D( gm_BaseTexture, v_vTexcoord );
float dist = (max_distance - distance(col.xy, v_vTexcoord)) / max_distance;
if((side == 0 && col.z == 0.) || (side == 1 && col.z == 1.)) {
gl_FragColor = vec4(vec3(col.z), 1.);
return;
}
gl_FragColor = vec4(vec3(dist), 1.);
}