Single page Print

Temporal antialiasing
Temporal AA varies the AA sample pattern from one frame to the next, taking advantage of display persistence to create the effect of a higher degree of antialiasing. In theory, at least, this trick should allow the performance of 2X AA while giving the perceived image quality of 4X AA. To give you some idea what's going on here, the table of sample patterns below shows the two temporal patterns used in each mode, then superimposes them on top of one another.

2X 4X 6X
Temporal pattern 1

Temporal pattern 2

Effective pattern

That's the basic layout of temporal AA. The trick is achieving that effective pattern, and that brings with it some limitations. For one, temporal AA has the potential to introduce noise into a scene at polygon edges by varying what's being rendered from frame to frame. That's not good. To mitigate this effect, ATI has instituted a frame rate threshold for temporal AA. If frame rates drop below 60 frames per second, the X800 will revert to a single, fixed sample pattern. Below 60Hz or so, depending on the persistence of the display, temporal AA is likely to show up as flickering edges. Above 60Hz, though, it can be rather effective.

Temporal AA's other limitations aren't necessarily everyday drawbacks, but they present problems for the reviewer. For one, there should be little overhead for temporal AA, so that an effective 8X temporal AA mode ought to perform about like a normal 4X AA mode. However, in order to work properly, temporal AA needs and requires that vertical refresh sync be enabled. With vsync enabled, testing performance becomes difficult. Basically, performance testing is limited to frame rates above 60 FPS and below a reasonable monitor refresh rate. I haven't yet devised a proper temporal AA performance test.

Also, capturing screenshots of temporal AA is hard. I think I can illustrate the effect, though. Have a look at the images below. The first two are bits of screenshots from UT2004, magnified to 4X their original size. The "averaged patterns" and "diff" shots were created in an image processing program.

Pattern 1 Pattern 2 Averaged patterns Diff between
patterns 1 and 2

The pattern 1 and 2 images are from ATI's 6X temporal AA mode, and you can see how the two sample patterns produce different results. When combined, even at 6X AA, the final result looks much smoother, as the average patterns image illustrates. To highlight the variance between the two patterns, I've also run at "diff" operation between the two sample images, and you can see in the result how the edge pixels are covered differently by the two patterns.

Here's a larger picture showing the difference between two edge patterns. Unfortunately, the sky texture moves around in UT2004, so it shows up here, as well.


So there is good reason to vary the patterns, even with 6X AA.

In practice, temporal AA is nifty, but not perfect. With the right game and the right frame rates, 2X temporal AA looks for all the world like 4X AA. The difference is more subtle with higher AA modes, as one might expect, but temporal AA can be very effective. However, the 60 FPS cutoff seemed a little low on the Trinitron CRT I used for testing. I could see discernible flicker on high-contrast edges from time to time, and I didn't like it. Also, the 60 fps cutoff causes temporal AA to switch on and off periodically during gameplay. The difference between 2X "regular" and 2X temporal (or 4X effective) AA is large enough that I was distracted by the transition.

That said, if I were using a Radeon X800 in my main gaming rig, I would probably enable temporal AA and use it—especially if I already were using 4X AA or the like. The Radeon X800 cards tend to spend enough time above 60 fps to make it very useful.