Anti-aliasing, then, is a method of making images look better without increasing the resolution, meaning that it works well on old and new monitors alike.
Over the past few years, graphics companies like Nvidia and ATI have concentrated on making their graphics cards work faster so that games can be played at higher resolutions – leading to better image quality. Whereas we played Quake 2 at a resolution of 320x240 (or 640x480 if you had a 3dfx card), we can now play Doom 3 at a massive 1600x1200. To use the example we saw above, the lines and shapes in Doom 3 look a lot better and sharper on your monitor than in Quake 2 because of the increase in resolution. However, pushing beyond that level of resolution that we see in Doom 3 is difficult, because today's monitors don't support anything more.
What is the problem with a resolution this low in terms of gaming? Well, when we look at a scene from Doom 3, we can see the straight line problem that we illustrated above – we can see that the lines look very aliased.
If you can't increase resolution, you turn to anti-aliasing which, as the name might suggest, is a technique designed to reduce the appearance of jagged lines. Anti-aliasing blends the edges of shapes using colour to make them less harsh, effectively fooling the eye into thinking the line is smoother than it is. Of course, this blending reduces the sharpness of the line and over-blending can make it blurry. Anti-aliasing techniques aim to keep blurring to a minimum whilst reducing the aliasing that can be apparent.
The actual algorithm used to do this blending differs from graphics card to graphics card. Nvidia used to use one algorithm and ATI another. Nvidia then changed over to one that was similar to ATIs , and ATI then introduced a different one. They also use lots of complicated names to try and differentiate their technologies – SmoothVision, Quincunx, Temporal Anti-aliasing and more are all names that have been rolled out at one time or another, often to describe pretty much the same thing. Broadly speaking, then, there are two types of anti-aliasing – super sampling and multi sampling. As the names suggest, these are both forms of sampling.
Sampling is a fairly simple concept to understand. Imagine that the edge of an aliased line is made up of a number of pixels, stepped as we noticed above. To make the line appear less stepped, we blend the colour of the edge of the line with the colours around it. To do this, each pixel is divided into sub-pixels, and a number of spots from around the centre of the pixel are chosen. The average colour of these spots is calculated, based on the colours of the pixels around them. That average is then applied to the whole pixel, and as you move progressively through pixels, the colours blend. The picture below shows a standard 4x sample pattern for one pixel.
ATI and Nvidia now both employ a rotated grid sample pattern, which gives better quality. At 4x, as in the image above, the 4 dots are rotated 45 degrees to give a diamond shape.