# HG changeset patch # User Michael Pavone # Date 1556411832 25200 # Node ID be1da0a68d1e718ce39c800215e1d8b84daee063 # Parent 92532eb6986dcbbe041584e445aeb6af07069330 Added "sharp" shader diff -r 92532eb6986d -r be1da0a68d1e shaders/sharp.f.glsl --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/shaders/sharp.f.glsl Sat Apr 27 17:37:12 2019 -0700 @@ -0,0 +1,31 @@ + +uniform sampler2D textures[2]; + +varying mediump vec2 texcoord; + +void main() +{ + mediump float x0 = (floor(texcoord.x * 512.0 - 0.25) + 0.5)/512.0; + mediump float x1 = (floor(texcoord.x * 512.0 + 0.25) + 0.5)/512.0; + mediump float y0 = (floor(texcoord.y * 512.0 + 0.25) + 0.5)/512.0; + mediump float y1 = (floor(texcoord.y * 512.0 - 0.25) + 0.5)/512.0; + + + mediump vec2 modifiedCoord0 = vec2(texcoord.x, (floor(texcoord.y * 512.0 + 0.25) + 0.5)/512.0); + mediump vec2 modifiedCoord1 = vec2(texcoord.x, (floor(texcoord.y * 512.0 - 0.25) + 0.5)/512.0); + mediump float ymix = (sin(texcoord.y * 1024.0 * 3.14159265359) + 1.0) * 0.5; + mediump float xmix = (sin(texcoord.x * 1024.0 * 3.14159265359) + 1.0) * 0.5; + gl_FragColor = mix( + mix( + texture2D(textures[1], vec2(x0, y1)), + texture2D(textures[0], vec2(x0, y0)), + ymix + ), + mix( + texture2D(textures[1], vec2(x1, y1)), + texture2D(textures[0], vec2(x1, y0)), + ymix + ), + xmix + ); +}