PrusaSlicer-NonPlainar/resources/shaders/options_120_flat.fs

28 lines
701 B
GLSL

// version 120 is needed for gl_PointCoord
#version 120
uniform vec3 uniform_color;
uniform float percent_outline_radius;
uniform float percent_center_radius;
vec4 hardcoded_color(float radius, vec3 color)
{
return ((radius < 0.15) || (radius > 0.85)) ? vec4(0.5 * color, 1.0) : vec4(color, 1.0);
}
vec4 customizable_color(float radius, vec3 color)
{
return ((radius < percent_center_radius) || (radius > 1.0 - percent_outline_radius)) ?
vec4(0.5 * color, 1.0) : vec4(color, 1.0);
}
void main()
{
vec2 pos = (gl_PointCoord - 0.5) * 2.0;
float radius = length(pos);
if (radius > 1.0)
discard;
gl_FragColor = customizable_color(radius, uniform_color);
}