uniform vec2 resolution;
uniform sampler2D u_texture;
varying vec2 v_texCoord;

void main()
{
	float pixel_size = 1.0/resolution.x;
		
	vec4 sum = vec4(0.0);
	
	sum += texture2D(u_texture, vec2(v_texCoord.x - 4.0*pixel_size, v_texCoord.y)) * 0.05;
	sum += texture2D(u_texture, vec2(v_texCoord.x - 3.0*pixel_size, v_texCoord.y)) * 0.09;
	sum += texture2D(u_texture, vec2(v_texCoord.x - 2.0*pixel_size, v_texCoord.y)) * 0.12;
	sum += texture2D(u_texture, vec2(v_texCoord.x - 1.0*pixel_size, v_texCoord.y)) * 0.15;
	sum += texture2D(u_texture, vec2(v_texCoord.x, v_texCoord.y)) * 0.16;
	sum += texture2D(u_texture, vec2(v_texCoord.x + 1.0*pixel_size, v_texCoord.y)) * 0.15;
	sum += texture2D(u_texture, vec2(v_texCoord.x + 2.0*pixel_size, v_texCoord.y)) * 0.12;
	sum += texture2D(u_texture, vec2(v_texCoord.x + 3.0*pixel_size, v_texCoord.y)) * 0.09;
	sum += texture2D(u_texture, vec2(v_texCoord.x + 4.0*pixel_size, v_texCoord.y)) * 0.05;
	
	gl_FragColor = sum;
}