diff options
author | William McKinnon <[email protected]> | 2024-10-14 22:42:42 -0400 |
---|---|---|
committer | William McKinnon <[email protected]> | 2024-10-14 22:43:13 -0400 |
commit | 2666dc683d729be407c2dcf7245381d4cb299270 (patch) | |
tree | a634285f511bfb1a7d16d2b5082cde7f25acc217 /render/fx_renderer/gles2/shaders/box_shadow.frag | |
parent | f05626176636c49ba27c3ba2b69658f50c9b5730 (diff) |
fix: small gap in shadow corner
Diffstat (limited to 'render/fx_renderer/gles2/shaders/box_shadow.frag')
-rw-r--r-- | render/fx_renderer/gles2/shaders/box_shadow.frag | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/render/fx_renderer/gles2/shaders/box_shadow.frag b/render/fx_renderer/gles2/shaders/box_shadow.frag index d318c93..1980434 100644 --- a/render/fx_renderer/gles2/shaders/box_shadow.frag +++ b/render/fx_renderer/gles2/shaders/box_shadow.frag @@ -80,11 +80,8 @@ void main() { // dither the alpha to break up color bands shadow_alpha += (random() - 0.5) / 128.0; - // get the window alpha so we can render around the window - float window_alpha = 1.0 - smoothstep(-1.0, 1.0, - roundRectSDF((size * 0.5) - blur_sigma, - vec2(position.x + blur_sigma - offset.x, position.y + blur_sigma - offset.y), - corner_radius)); + // get the window alpha so we can render around the window (fix pixel gap by adding 0.5 to radius) + float window_alpha = 1.0 - smoothstep(-1.0, 1.0, roundRectSDF((size * 0.5) - blur_sigma, position + blur_sigma, corner_radius + 0.5)); gl_FragColor = vec4(v_color.rgb, shadow_alpha) * (1.0 - window_alpha); } |