How to blur part of the screen in the game engine?
Extending the sample shader linked by @NoviceInDisguise:

How it works: the shader gets the rendered image as a texture its x/y coordinates range from 0 to 1.0

The distance from center is calculated by sqrt(x*x+y*y) &gt; .3 to exclude a circular region from blur. 

uniform sampler2D bgl_RenderedTexture;

void main(void)
{
  vec4 texcolor = texture2D(bgl_RenderedTexture, gl_TexCoord[0].st);
  float x =  gl_TexCoord[0].st.x - .5;
  float y =  gl_TexCoord[0].st.y - .5;   

  if ( sqrt(x*x+y*y) &gt; .3 ) { 
       float value = 0.0015;
       vec4 color = texture2D(bgl_RenderedTexture, vec2(gl_TexCoord[0].st.x + value, gl_TexCoord[0].st.y + value)); // Sample area around current pixel
       color += texture2D(bgl_RenderedTexture, vec2(gl_TexCoord[0].st.x - value, gl_TexCoord[0].st.y - value));
       color += texture2D(bgl_RenderedTexture, vec2(gl_TexCoord[0].st.x + value, gl_TexCoord[0].st.y - value));
       color += texture2D(bgl_RenderedTexture, vec2(gl_TexCoord[0].st.x - value, gl_TexCoord[0].st.y + value));
       color /= 4.0;        
       gl_FragColor = color;
   }
   else {
       gl_FragColor =texcolor;
   }
}




Node setup: Add a Filter 2D configure it as Custom Shader and select the above script.


Sample render

Disclaimer: A decent blur needs to incorporate values from a 3x3, 5x5 or bigger matrix, the sample code only uses the left and right neighbor.