aboutsummaryrefslogtreecommitdiff
path: root/deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs
diff options
context:
space:
mode:
Diffstat (limited to 'deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs')
-rw-r--r--deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs25
1 files changed, 25 insertions, 0 deletions
diff --git a/deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs b/deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs
new file mode 100644
index 0000000..d4878cf
--- /dev/null
+++ b/deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs
@@ -0,0 +1,25 @@
+#version 100
+
+precision mediump float;
+
+// Input vertex attributes (from vertex shader)
+varying vec2 fragTexCoord;
+varying vec4 fragColor;
+
+// Input uniform values
+uniform sampler2D texture0;
+uniform vec4 colDiffuse;
+
+// NOTE: Add here your custom variables
+const float smoothing = 1.0/16.0;
+
+void main()
+{
+ // Texel color fetching from texture sampler
+ // NOTE: Calculate alpha using signed distance field (SDF)
+ float distance = texture2D(texture0, fragTexCoord).a;
+ float alpha = smoothstep(0.5 - smoothing, 0.5 + smoothing, distance);
+
+ // Calculate final fragment color
+ gl_FragColor = vec4(fragColor.rgb, fragColor.a*alpha);
+}