#vertex void main() { gl_TexCoord[0] = gl_MultiTexCoord0; gl_Position = ftransform(); } #fragment uniform float r; uniform sampler2D tex; const vec2 d1 = vec2(0.0, 0.4); const vec2 d2 = vec2(0.0, 0.8); const vec2 d3 = vec2(0.0, 1.2); const vec2 d4 = vec2(0.0, 1.6); void main() { vec2 tc = vec2(gl_TexCoord[0]); gl_FragColor = 0.200 * texture2D(tex, tc) + 0.181 * (texture2D(tex, tc + d1 * r) +texture2D(tex, tc - d1 * r)) + 0.131 * (texture2D(tex, tc + d2 * r) +texture2D(tex, tc - d2 * r)) + 0.069 * (texture2D(tex, tc + d3 * r) +texture2D(tex, tc - d3 * r)) + 0.019 * (texture2D(tex, tc + d4 * r) +texture2D(tex, tc - d4 * r)); }