GPAA: Geometric Post-process Anti-Aliasing
After MLAA (Morphological Anti-Aliasing) and SRAA (Subpixel Reconstruction Anti-Aliasing) or more recently FXAA, here is a new anti-aliasing technique introduced by Humus and called GPAA or Geometric Post-process Anti-Aliasing.
In short, GPAA uses geometry information to very accurately smooth geometric edges:
The technique is relatively simple. The scene is initially rendered normally without any antialiasing. Then the backbuffer is copied to a texture and the geometric edges in the scene are drawn in a post-step. The edges are drawn as lines and for each shaded pixel the shader computes what coverage this pixel should have had by the primitive that shaded it. It also checks what side of the line the pixel center is and blends the pixel with a neighbor up or down in case of a mostly horizontal line, or left/right in case of a mostly vertical line.
According to Humus, the main advantage of this technique is performance and quality and the main disadvantage is that you need to have geometric information available.
More information and Direct3D 10 demo download HERE.
On my HD 5770, the demo with default camera position (image below) runs at around 253 FPS in 1920×1080 with GPAA enabled and 275 FPS with no anti-aliasing.