Sign in with
Sign up | Sign in

Driver-Forced Anti-Aliasing: Surprisingly Unreliable

Anti-Aliasing Analysis, Part 1: Settings And Surprises
By

Now that we’ve covered all of the AMD and Nvidia anti-aliasing driver options, we have some bad news: the driver-set options often don’t work.

This information probably comes as quite a shock, we know. I always assumed that driver settings trumped everything else when it came to anti-aliasing, but this is definitely not the case. We tested nine games, five of which had an option to use DirectX 9 or DirectX 10/11. After testing all of the games and render paths, here are the results:

Red means the driver anti-aliasing setting was a failure, green means it was successful, and yellow means the result is inconclusive. As you can see, success runs at about 50% overall, with certain options faring much better than others. But there’s a lot more to this chart than meets the eye. Let’s talk about the success of specific driver options, starting with the GeForce cards.

The GeForce Override setting only works in two of the 14 game scenarios we tested. This isn’t as bad as it might sound, since the primary purpose of Override is to force CSAA, and as you can see, four of the games that don’t work with Override already support CSAA in the game’s native menu. That means that CSAA works with six of the 14 game scenarios we tested. Different DirectX versions aside, five out of nine games support CSAA in one way or another.

The Enhance setting is meant to add CSAA support to games that don’t support Override, but have an in-game anti-aliasing setting available. In this case, 11 out of the 14 scenarios work, meaning that CSAA can be used in any game that supports anti-aliasing or that can work with Nvidia’s Override setting. Note that in DirectX 10 and 11 titles, Enhanced mode will only be able to force a CSAA mode if it uses the same number of multisamples as the MSAA mode set within the game’s menu options. For example, if 4x MSAA is set in-game, the Enhance setting will only work with the CSAA modes that call for four multisamples—8x CSAA will work because it uses 4x multisamples and 4x coverage samples, and 16x CSAA will work because it calls for 4x multisamples and 12 coverage samples. But 32x CSAA will not work because it calls for eight multisamples and 24 coverage samples.

What’s the significance of this? For those of you who hope to use Override as a set-and-forget mechanism for controlling the anti-aliasing level in all of your games, that obviously isn’t going to work. Similarly, if you fancy using CSAA by forcing it through the driver, you need to understand the relationship between the CSAA mode you plan to use and the level of MSAA you set in-game. This information is not provided in the driver, so you need to understand the Nvidia anti-aliasing level designations (see the Coverage Sampling Modes page in this article for that information).

Now that we have a better understanding of Override’s limitations, let’s move onto Nvidia’s Transparent AA feature. TrMSAA has a somewhat dismal track record of working in two out of 12 possible scenarios. It's tied to the MSAA setting, and two game scenarios don’t support anti-aliasing at all.

TrSSAA has a much better history of success, and it works in seven out of 14 scenarios. It also functions independently of the MSAA setting in seven out of nine games if the DirectX 10/11 code paths are used. Considering the limitations we’ve seen with other anti-aliasing options, that’s a relatively good ratio, especially since it works with the newest DirectX versions of these game engines.

Now it's time for AMD's turn in the hot seat.

The Radeon Override controls work in five of the 14 gaming scenarios, with five of nine games. This is better than what the GeForce cards offer, but we need to point out that in three of those games the Override only works with DirectX 9 and not the newer DirectX 10/11 code paths. This means that if you want to Override the DirectX mode on your Radeon, you’re making a tradeoff in many cases by losing DirextX 10/11-based enhancements.

For Radeon HD 6900-series board owners who are interested in EQAA, we have good news: the enhance feature always works in our tests, the only exceptions being when anti-aliasing is not available at all. The conclusion is that Radeon HD 6900 owners can employ EQAA with confidence when using the Enhance setting, and do not have to concern themselves with matching coverage sample levels with the appropriate MSAA level as Nvidia owners have to do in DirectX 10 and 11 games.

We’re also impressed with the Radeon’s edge-detect mode, as this feature works in all the viable scenarios except one: Metro 2033 in DirectX 11 mode. However, it does work in Metro 2033 using DirectX 9, strangely enough.

How about morphological anti-aliasing? Whether you're talking about DirectX 9, 10, or 11, MLAA just plain works (that wasn't the case when AMD first exposed the feature). This makes it an attractive option for folks who’d like to set it and forget it, although MLAA can cause visual artifacts on the edge of text, making it less desirable in games that have a lot of small type, like MMOs.

The final two settings are closely related because they’re both tied to supersampling. Pure supersampling works in four out of 12 possible scenarios here, as it cannot be forced unless Override is possible. As we’ve mentioned previously, supersampling improves not only polygon edges, but textures as well. Unfortunately, it incurs a hefty performance premium that quickly increases along with resolution.

Adaptive anti-aliasing is very similar to Nvidia’s transparent supersampling, but it only works on two or three out of 12 possible scenarios, and only with older DirectX 9 code paths. This severely limits the feature’s usefulness, which is quite unfortunate since transparent texture anti-aliasing is important when it comes to improving image quality and alleviating aliasing problems.

React To This Article