diff options
author | Juan Linietsky <reduzio@gmail.com> | 2015-03-21 00:43:33 -0300 |
---|---|---|
committer | Juan Linietsky <reduzio@gmail.com> | 2015-03-21 00:43:33 -0300 |
commit | acc6f3b285f058104fd6431bed2c4cfe4dc05a58 (patch) | |
tree | 91374cb7cb30f5dcee42236e60598b3cf694a3fe /drivers/gles2/shaders | |
parent | 90a84b4ddb64f4adc024766435f3fc75605f9aab (diff) |
signed distance field font support
Diffstat (limited to 'drivers/gles2/shaders')
-rw-r--r-- | drivers/gles2/shaders/canvas.glsl | 10 |
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 |