The depth of field is not a post-process effect. Instead the vertices adjust their texturecoordinates to the distance to the cameras focal plane. With these coordinates they fetch a pixel from a texture that is sharp and opaque on one side, and fades to blurry on the other side, creating real dof. Only works with dots and lines though. It works on a vertex shader and runs in realtime.