diff options
| author | Will McKinnon <[email protected]> | 2023-04-06 18:49:51 -0400 |
|---|---|---|
| committer | Will McKinnon <[email protected]> | 2023-04-06 20:30:42 -0400 |
| commit | 420364dd191fa3c22370bbaa34f178b07bcb8318 (patch) | |
| tree | bf7e3bcb7a0835e0c16901a3b800c7f218607d53 /sway/desktop/shaders/quad_round.frag | |
| parent | c24fccd45c4bc69c968a09ae5b953672a29bac12 (diff) | |
structure: moved fx_renderer and related fuctions to a folder
Diffstat (limited to 'sway/desktop/shaders/quad_round.frag')
| -rw-r--r-- | sway/desktop/shaders/quad_round.frag | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/sway/desktop/shaders/quad_round.frag b/sway/desktop/shaders/quad_round.frag deleted file mode 100644 index 4dcf0c53..00000000 --- a/sway/desktop/shaders/quad_round.frag +++ /dev/null @@ -1,37 +0,0 @@ -#define SOURCE_QUAD_ROUND 1 -#define SOURCE_QUAD_ROUND_TOP_LEFT 2 -#define SOURCE_QUAD_ROUND_TOP_RIGHT 3 - -#if !defined(SOURCE) -#error "Missing shader preamble" -#endif - -precision mediump float; -varying vec4 v_color; -varying vec2 v_texcoord; - -uniform vec2 size; -uniform vec2 position; -uniform float radius; - -vec2 getCornerDist() { -#if SOURCE == SOURCE_QUAD_ROUND - vec2 half_size = size * 0.5; - return abs(gl_FragCoord.xy - position - half_size) - half_size + radius; -#elif SOURCE == SOURCE_QUAD_ROUND_TOP_LEFT - return abs(gl_FragCoord.xy - position - size) - size + radius; -#elif SOURCE == SOURCE_QUAD_ROUND_TOP_RIGHT - return abs(gl_FragCoord.xy - position - vec2(0, size.y)) - size + radius; -#endif -} - -void main() { - vec2 q = getCornerDist(); - float dist = min(max(q.x,q.y), 0.0) + length(max(q, 0.0)) - radius; - float smoothedAlpha = 1.0 - smoothstep(-1.0, 0.5, dist); - gl_FragColor = mix(vec4(0), v_color, smoothedAlpha); - - if (gl_FragColor.a == 0.0) { - discard; - } -} |
