 vec4
 filter2D_radius4(sampler2D texture, sampler2D kernel, float index, vec2 uv, vec2 pixel )
 {
-    vec2 texel = uv/pixel - vec2(0.0,0.0) ;
+    vec2 texel = uv/pixel - vec2(0.5,0.5) ;
     vec2 f = fract(texel);
     texel = (texel-fract(texel)+vec2(0.001,0.001))*pixel;
     vec4 t0 = filter1D_radius4(kernel, index, f.x,

vec4
filter2D_radius3(sampler2D texture, sampler2D kernel, float index, vec2 uv, vec2 pixel )
{
    vec2 texel = uv/pixel - vec2(0.0,0.0) ;
    vec2 f = fract(texel);
    texel = (texel-fract(texel)+vec2(0.001,0.001))*pixel;
    vec4 t0 = filter1D_radius3(kernel, index, f.x,

vec4
filter2D_radius1(sampler2D texture, sampler2D kernel, float index, vec2 uv, vec2 pixel )
{
    vec2 texel = uv/pixel - vec2(0.5,0.5) ;
    vec2 f = fract(texel);
    texel = (texel-fract(texel)+vec2(0.001,0.001))*pixel;
    vec4 t0 = filter1D_radius1(kernel, index, f.x,
