From cdda4c4182c9ee068567529715e4a5c68a8efb58 Mon Sep 17 00:00:00 2001 From: bonmas14 Date: Sat, 20 Sep 2025 22:28:15 +0300 Subject: Init commit v1.0 --- .../examples/text/resources/shaders/glsl330/sdf.fs | 26 ++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 deps/raylib/examples/text/resources/shaders/glsl330/sdf.fs (limited to 'deps/raylib/examples/text/resources/shaders/glsl330/sdf.fs') diff --git a/deps/raylib/examples/text/resources/shaders/glsl330/sdf.fs b/deps/raylib/examples/text/resources/shaders/glsl330/sdf.fs new file mode 100644 index 0000000..545f450 --- /dev/null +++ b/deps/raylib/examples/text/resources/shaders/glsl330/sdf.fs @@ -0,0 +1,26 @@ +#version 330 + +// Input vertex attributes (from vertex shader) +in vec2 fragTexCoord; +in vec4 fragColor; + +// Input uniform values +uniform sampler2D texture0; +uniform vec4 colDiffuse; + +// Output fragment color +out vec4 finalColor; + +// NOTE: Add here your custom variables + +void main() +{ + // Texel color fetching from texture sampler + // NOTE: Calculate alpha using signed distance field (SDF) + float distanceFromOutline = texture(texture0, fragTexCoord).a - 0.5; + float distanceChangePerFragment = length(vec2(dFdx(distanceFromOutline), dFdy(distanceFromOutline))); + float alpha = smoothstep(-distanceChangePerFragment, distanceChangePerFragment, distanceFromOutline); + + // Calculate final fragment color + finalColor = vec4(fragColor.rgb, fragColor.a*alpha); +} -- cgit v1.2.3-70-g09d2