ForceWare 56.56 Review

NVIDIA's new Forceware drivers pack in new features worth review and while doing that we compare it to previous generations.

continued...

3D Versions:

There are a lot of components to 3D obviously, and two main API’s to which 3D calls are made. Direct3D, part of Microsoft’s DirectX, is one very popular API, the latest version being DX9.0b. OpenGL is the other API, also popular. The latest version of OpenGL is currently 1.5. OGL 2.0 which brings with it a high level shading language has been ratified and should be out sometime this summer.

The first thing we want to look at is to see if any new Direct3D or OpenGL functionality has been added.

Article Image Article Image

Above we have two screenshots taken from the DirectX Caps Viewer that compares the ForceWare 53.03 driver to the ForceWare 56.56 driver. In the first picture we see a summery list of information about the video card (GeForceFX 5950Ultra). As you can see all the information is the same which means nothing major has changed. The second picture above shows you the Vertex Shader Caps and the Pixel Shader Caps compared, again everything is the same. What is note worthy is the fact that this card actually exceeds PS 2.0 and comes closer to PS 3.0 since it includes Arbitrary Swizzle, Gradients, Prediction and 512 instruction slots. This is why the shader unit is often referred to as PS/VS 2.x indicating it actually goes beyond 2.0 specifications.

Now we will take a look at OpenGL differences between Forceware 53.03 and 56.56.

Article Image

Another program called OpenGL Extension Viewer or glview will let us see with what versions the driver is compliant with and by how much.

Above you will see the 53.03 driver compared to the 56.56 driver and you can see what versions they are compliant with. From this program what we see is that they are compliant with versions 1.1-1.5 and support all extensions required in those versions. However, version 2.0 (OpenGL SL) is not supported be default at all in this new driver.

3D Performance:

This week we have an upcoming review where we have used this new driver on a GeForceFX 5950Ultra and evaluated gameplay and image quality in eleven new games. So keep an eye out for that review and you will see how this new driver actually performs in games. Suffice it to say there is nothing to be worried about on the performance side of the coin.

Filtering Quality:

One thing we did want to look at is the filtering quality with this new driver. As you probably already know NVIDIA has been scrutinized more than a few times concerning the quality of filtering they are doing in games. They have come under fire for performing a lessened form of Trilinear filtering in games. The game this has been most associated with is Unreal Tournament 2003. This method of lessened filtering has even spawned a new nick name for it some are calling "Brilinear". Which basically means a mixture of Bilinear and Trilinear, indicating an "in the middle" kind of filtering. It has also been shown that this "Brilinear" filtering is actually now a standard across many games, even if you select a "pure" Trilinear mode. Apparently even though you select Application Preference the drivers were not really allowing the application to fully decide the filtering. Since there was no way to force Trilinear Filtering we were simply left with the way NVIDIA wanted the games to be filtered and also possibly not the way it was meant to be played in the eyes of the content developer.

Article Image

There still isn’t an option to force full Trilinear filtering in this new driver. But there is a new option under the advanced settings called “Force Mipmaps”. Inside this option you can select None, Bilinear or Trilinear. Unfortunately this isn’t what you think it is. This is not an option to force full Trilinear filtering in games. Rather it is an option that forces mip-maps on in games that don’t support mip-maps. We did try this slider in various games and did not see any change in games that do support mip-maps, like UT2003.

In light of all the filtering issues we wanted to see if anything has changed between the Forceware 53.03 and Forceware 56.56 driver.

Article Image

Using a Direct3D Filtering application we can see the level of filtering the drivers produce with default settings. Above we have the Forceware 53.03 driver compared to the Forceware 56.56 driver with no Anisotropic filtering. What we have done is to cut the image right down the middle and placed the left half from the 53.03 driver on the left and the right half is the 56.56 driver. This way we can see side by side how the filtering compares. If the filtering was exactly the same between both drivers the picture would be seamless and it would look like one complete picture. However, as you can see above the picture does not appear to be 100% seamless. It looks like there is indeed a slight difference. The solid bands of color seem to be slightly smaller with the new driver, indicating slightly tighter default Trilinear filtering is taking place. Though the results aren’t hugely different it is encouraging to see slightly "better" Trilinear filtering.

Article Image

The table turns though when we enable 8X Anisotropic filtering. Notice that there is a difference between the two drivers. In this case it appears the solid bands of color are bigger and more bold with the new 56.56 driver indicating a lesser quality filtering between the mip-maps compared to the 53.03 driver.

Now what we want to see is how this looks in Unreal Tournament 2003.

Article Image

Just as we saw demonstrated with the D3D Filtering application the mip-map bands seem to be smaller giving way to better filtering between mip-maps. This is with the default Application Preference setting in the control panel.

Article Image

Now look what happens when we enable 8XAF from the control panel. The mip-maps are bigger and bolder with a more harsh transition between that blue and green mip-map. So apparently with Anisotropic filtering enabled the filtering has been lessened with the new 56.56 driver. As noted above, later this week we will evaluate specific gameplay.

PixelShader 2.0 Precision:

With PixelShader 2.0 in Direct3D you have the option of running in two precision modes, full precision which is FP24/32 or partial precision which is FP16. We wanted to see if anything in that area had changed with this new driver set.

Article Image

Above you will see the result TXT files after running the PixelShader 2.0 precision test with both drivers side by side. As you can see both driver sets support full FP32 (s23e8) when full precision is called for in temporary registers, constant registers and texture coordinates. However, when the partial precision hints are called for the 53.03 driver will go into FP16 (s10e5) in temporary registers and constant registers, but the texture coordinates remain at FP32. With the new Forceware 56.56 driver constant registers are now set to run in FP32 when partial precision is called for. Temporary registers run at FP16 when partial precision is called for.