Carmack criticizes GeForce4 MX
After nVidia almost let the cat out of the bag with the GeForce 4 last week, the chief programmer of id Software for the Quake and Doom engine found a few words about the new nVidia chips and the ATis Radeon 8500. Especially for the Geforce4 MX is not exactly positive.
Even if John Carmack still does not go into details of the upcoming Doom3, it should be clear to everyone that the game will make full use of the functions of current graphics cards. ATi Radeon 8500 owners in particular can look forward to excellent support for their card, for which the support routines for the Doom3 engine were written last month. In his current plan file , he also goes into the problems that occurred, which in most cases were due to the relatively new ATi drivers.
Nvidia's OpenGL drivers are my 'gold standard', and it has been quite a while since I have had to report a problem to them, and even their brand new extensions work as documented the first time I try them. When I have a problem on an Nvidia, I assume that it is my fault. With anyone else's drivers, I assume it is their fault. This has turned out correct almost all the time. I have heard more anecdotal reports of instability on some systems with Nivida drivers recently, but I track stability separately from correctness, because it can be influenced by so many outside factors.
ATI had been patiently pestering me about support for a few months, so last month I finally took another stab at it. The standard OpenGL path worked flawlessly, so I set about taking advantage of all the 8500 specific features. As expected, I did run into more driver bugs, but ATI got me fixes rapidly, and we soon had everything working properly.
After numerous driver updates that were made in close cooperation with ATi, the problems quickly disappeared made the world.
The fragment level processing is clearly way better on the 8500 than on the Nvidia products, including the latest GF4. You have six individual textures, but you can access the textures twice, giving up to eleven possible texture accesses in a single pass, and the dependent texture operation is much more sensitive. This wound up being a perfect fit for Doom, because the standard path could be implemented with six unique textures, but required one texture (a normalization cube map) to be accessed twice. The vast majority of Doom light/surface interaction rendering will be a single pass on the 8500, in contrast to two or three passes, depending on the number of color components in a light, for GF3/GF4 (* note GF4 bitching later on) .
With an ATi Radeon 8500 you are on the right side when it comes to support in Doom3, especially because the map can benefit from the numerous texture operations and overlays. It looks like Doom will require an average of seven texture operations per pixel, which would be a significant step forward compared to current games with an average of fewer than three textures overlaid on top of each other. Due to the better memory architecture of the GeForce 3 and GeForce 4, the Radeon also has to admit defeat in some areas.
What Carmack has to say about the GeForce4 MX corresponds to our criticism on the nVidia naming strategy. He finds quite clear words here, with the quintessence that not even the name GeForce 3 MX would be justified for the GeForce 4 MX.
Nvidia has really made a mess of the naming conventions here. I always thought it was bad enough that GF2 was just a speed bumped GF1, while GF3 had significant architectural improvements over GF2. I expected GF4 to be the speed bumped GF3, but calling the NV17 GF4-MX really sucks.
GF4-MX willStill run Doom properly, but it will be using the NV10 codepath with only two texture units and no vertex shaders. A GF3 or 8500 will be much better performers. The GF4-MX may still be the card of choice for many people depending on pricing, especially considering that many games won't use four textures and vertex programs, but damn, I wish they had named it something else.