aboutsummaryrefslogtreecommitdiff
path: root/deps/raylib/examples/text/resources/shaders
diff options
context:
space:
mode:
authorbonmas14 <bonmas14@gmail.com>2025-09-20 22:28:15 +0300
committerbonmas14 <bonmas14@gmail.com>2025-09-20 22:28:15 +0300
commitcdda4c4182c9ee068567529715e4a5c68a8efb58 (patch)
tree38a63f62a64018a2d35fc33354f8589fd33b7514 /deps/raylib/examples/text/resources/shaders
downloadc_wizard-cdda4c4182c9ee068567529715e4a5c68a8efb58.tar.gz
c_wizard-cdda4c4182c9ee068567529715e4a5c68a8efb58.zip
Init commit v1.0
Diffstat (limited to 'deps/raylib/examples/text/resources/shaders')
-rw-r--r--deps/raylib/examples/text/resources/shaders/glsl100/alpha_discard.fs20
-rw-r--r--deps/raylib/examples/text/resources/shaders/glsl100/sdf.fs25
-rw-r--r--deps/raylib/examples/text/resources/shaders/glsl330/alpha_discard.fs19
-rw-r--r--deps/raylib/examples/text/resources/shaders/glsl330/sdf.fs26
4 files changed, 90 insertions, 0 deletions
diff --git a/deps/raylib/examples/text/resources/shaders/glsl100/alpha_discard.fs b/deps/raylib/examples/text/resources/shaders/glsl100/alpha_discard.fs
new file mode 100644
index 0000000..15aacf5
--- /dev/null
+++ b/deps/raylib/examples/text/resources/shaders/glsl100/alpha_discard.fs
@@ -0,0 +1,20 @@
+#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;
+
+void main()
+{
+ vec4 texelColor = texture2D(texture0, fragTexCoord);
+
+ if (texelColor.a == 0.0) discard;
+
+ gl_FragColor = texelColor*fragColor*colDiffuse;
+}
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);
+}
diff --git a/deps/raylib/examples/text/resources/shaders/glsl330/alpha_discard.fs b/deps/raylib/examples/text/resources/shaders/glsl330/alpha_discard.fs
new file mode 100644
index 0000000..d2134a6
--- /dev/null
+++ b/deps/raylib/examples/text/resources/shaders/glsl330/alpha_discard.fs
@@ -0,0 +1,19 @@
+#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;
+
+void main()
+{
+ vec4 texelColor = texture(texture0, fragTexCoord);
+ if (texelColor.a == 0.0) discard;
+ finalColor = texelColor * fragColor * colDiffuse;
+}
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);
+}