Don't give a frag about ATI's Quake III driver tweaks
Software is just one factor among many
Comment What is it with all this fuss about ATI's Quake III-optimised drivers? A number of online game-geeks appear to have gotten all hot and bothered about it, and we've even had ATI's rivals trying to grab the moral high ground - and, presumably, the headlines - by hinting at how underhand ATI's behaviour has been.
At issue is how the company optimised its Radeon 8500 drivers for specific applications, in particular Quake III Arena. Essentially, ATI's engineers decided to sacrifice a little texture quality for frame-rates. Nothing wrong with that, you might think - it's what most Quake players do with the game's own setting. But what's got some gamers up in arms is that ATI hadn't, until challenged, told anyone about it. That, they say, is cheating.
But what exactly does the optimisation do? Essentially, ATI's drivers detect that Quake III is running and modifies the game's visuals to maximise frame-rate. Web site HardOCP discovered the effect when it modified the game's code to change its name. ATI's drivers didn't detect the change, and ran the modified version as if it were any other application. The upshot: better visuals but lesser frame-rates.
Tweaking textures, fiddling with frame-rates
The drivers improve Quake III performance by reducing the quality of the textures, probably by increasing the level of texture compression used. As a result, the textures are smaller, take up less memory and are thus easier to move in and out of RAM and across system buses. That means less time spent juggling textures and more time rendering, and so higher frame-rates.
You can see what difference it makes over at Firing Squad, here. There's no doubt that the drivers do increase Quake III frame-rates, but what about the downside, the dip in image quality? This is, of course, a highly subjective criterion, but we reckon the difference between driver-'enhanced' Quake III and the same game running without the drivers' optimisations is minimal.
Look at two full-size screen shots and yes, you can see a difference - if you know what you're looking for. To really see the difference, you need to blow up the image by 400 per cent. There's no doubt: at four times normal scale, the display of a version of Quake III hacked to fool the driver is sharper than that produced by a driver-adjusted standard version of the game.
But who plays Quake at 400 per cent? No doubt some clever-dick will write in and say that he does, but we'd venture that the vast majority of Quake III players don't. And in the hurly-burly of frenzied fragging, we doubt very much whether any gamer will detect the minimal difference in visual quality.
Card != Hardware - Card = Hardware + Driver
Would anyone have complained about the visual quality of Quake III played on a Radeon 8500 had they not known about the driver optimisation? We suspect not. Let's assume that the visual impact of the driver is rather more obvious than it is. Reviewers would almost certainly have credited the 8500's high frame-rate but (rightly) lambasted its poor image quality, just as they have done for countless previous products from ATI, Nvidia, 3dfx et al.
Essentially, then, ATI has tweaked one factor among many to enhance the Radeon 8500's Quake III performance. The trade off - as always - is image quality, not that you'd notice.
Finding the balance between visuals and frame-rate is a key part of designing a graphics platform. Choosing how your driver interacts with software, OS and hardware is as core a decision in the graphics card development process as selecting the source of your on-card RAM. No one would know if the same effect resulted from the bundling of a cheaper VGA connector or the use of less-expensive resistors, to take two extreme examples to stress the point.
There's more to graphics than Quake
So hardware and the software (the drivers) should be treated as two components of a single package. Running Quake III out of the box on an out-of-the-box Radeon 8500 will produce a certain level of performance and a specific degree of image quality. As HardOCP discovered, you can hack the system to alter performance, but that's no more a more 'real' measure of the 8500's performance than claiming benchmarking an overclocked Athlon XP 1800+ is a more 'real' way of measuring that chip's performance.
Or measuring the Athlon XP's performance with a single application. Few users would trust a benchmark based on a single test. Equally, no one should evaluate a graphics card on the basis of a single application, in this case Quake III.
Or by considering frame-rates alone. The ATI controversy exposes not only a over-reliance on Quake III as the be-all and end-all of graphics performance testing, but of frame-rates over all over considerations, such as image quality.
If the gaming community doesn't like ATI's attempt to improve its Quake III frame-rates, perhaps it shouldn't place such a heavy emphasis on the game as the ultimate benchmark. It's not particularly scientific, after all. Quake's best graphical settings don't provide a base level of image quality across all cards - they simply provide a comparable number of graphical features that the cards have to deliver during the test. Claiming otherwise is like saying two televisions' have the same picture quality because they can both show the same channel.
Had ATI sent reviewers far better drivers than those on general release, we'd be right behind anyone complaining about the company's underhand behaviour. But not in the case of driver optimisations that, provided no hacks have been employed, affects everyone equally.
As we say, if you like the 8500's Quake III frame-rate but aren't willing to put up with the dip in image quality, buy a different card. Or wait for ATI to change its drivers, which, we understand, it's in the process of doing. Either way, the driver optimisations for Quake III are just one of the (many) factors that differentiate different vendors' products. ®