summaryrefslogtreecommitdiff
path: root/drivers/gles2/shaders
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2015-03-21 00:43:33 -0300
committerJuan Linietsky <reduzio@gmail.com>2015-03-21 00:43:33 -0300
commitacc6f3b285f058104fd6431bed2c4cfe4dc05a58 (patch)
tree91374cb7cb30f5dcee42236e60598b3cf694a3fe /drivers/gles2/shaders
parent90a84b4ddb64f4adc024766435f3fc75605f9aab (diff)
signed distance field font support
Diffstat (limited to 'drivers/gles2/shaders')
-rw-r--r--drivers/gles2/shaders/canvas.glsl10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/gles2/shaders/canvas.glsl b/drivers/gles2/shaders/canvas.glsl
index 0e19736fd5..e6d2569977 100644
--- a/drivers/gles2/shaders/canvas.glsl
+++ b/drivers/gles2/shaders/canvas.glsl
@@ -191,8 +191,16 @@ void main() {
vec3 normal = vec3(0.0,0.0,1.0);
#endif
-
+#ifdef USE_DISTANCE_FIELD
+ const float smoothing = 1.0/32.0;
+ float distance = texture2D(texture, uv_interp).a;
+ color.a = smoothstep(0.5 - smoothing, 0.5 + smoothing, distance);
+#else
color *= texture2D( texture, uv_interp );
+
+#endif
+
+
#if defined(ENABLE_SCREEN_UV)
vec2 screen_uv = gl_FragCoord.xy*screen_uv_mult;
#endif