gtk/gsk/vulkan/resources/outset-shadow.frag
Matthias Clasen 900a4e4d31 gsk: Move shader resources
Move the resources of each renderer to its subdirectory.
We've previously done that for the ngl renderer, but it
is better to be consistent and do it for all the renderers.
2021-04-03 08:24:58 -04:00

28 lines
975 B
GLSL

#version 420 core
#include "clip.frag.glsl"
#include "rounded-rect.glsl"
layout(location = 0) in vec2 inPos;
layout(location = 1) in flat vec4 inOutline;
layout(location = 2) in flat vec4 inOutlineCornerWidths;
layout(location = 3) in flat vec4 inOutlineCornerHeights;
layout(location = 4) in flat vec4 inColor;
layout(location = 5) in flat vec2 inOffset;
layout(location = 6) in flat float inSpread;
layout(location = 7) in flat float inBlurRadius;
layout(location = 0) out vec4 color;
void main()
{
RoundedRect outline = RoundedRect (vec4(inOutline.xy, inOutline.xy + inOutline.zw), inOutlineCornerWidths, inOutlineCornerHeights);
RoundedRect outside = rounded_rect_shrink (outline, vec4(-inSpread));
color = vec4(inColor.rgb * inColor.a, inColor.a);
color = color * clamp (rounded_rect_coverage (outside, inPos - inOffset) -
rounded_rect_coverage (outline, inPos),
0.0, 1.0);
color = clip (inPos, color);
}