|Antialiasing Performance - OpenGL
We begin our look at antialiasing under OpenGL on the GeForce3 with a series of visual and performance tests along with a comparison against the GeForce2 Ultra. High quality screenshots are used to illustrate the quality of antialiasing offered by each graphics card.
Antialiasing methods are varied in their implementation as to how they eliminate the affects of aliasing. It wasn't too long ago that NVIDIA brought antialiasing to the table with the GeForce and GeForce2. Known as supersampling, this method of antialiasing was straightforward to implement, but required large amounts of memory to operate. With memory bandwidth being a limiting factor, performance at high resolutions with the highest supersampling settings wasn't very good.
With the GeForce3, NVIDIA implemented a variety of multisampling techniques to provide increased antialiasing performance. With multisampling, the graphics processing unit is aware that antialiasing is being used and carries with it the samples needed to generate a final pixel color. In other words, multisampling is done in hardware on the GeForce3.
Antialiasing is a subjective topic. Not only are there discussions on whether one should use antialiasing, but there are arguments on which type of antialiasing is preferred. We've polled forum members regarding image quality and antialiasing, as did Reverend's 3D Pulpit, and the responses were varied enough to conclude that there isn't always a right answer. In some cases, antialiasing can generate high quality images, but performance is so poor that it's not usable. On the other hand, performance can be improved by using a lesser quality of antialiasing but then image quality is compromised.
Reference Non-Antialiased Image - 1024x768
The screenshots that have been supplied for this comparison were saved in the Portable Network Graphics (PNG) format which provides fully lossless compression and supports up to 48-bit truecolor. The images are very close to the quality of the native Truevision Targa (TGA) screenshot format used by Quake 3.
While the size of each image is around 800KB, you will be able to get a good look at the quality of the various methods of antialiasing. I suggest that you save the images on your PC and use the slideshow feature of Irfanview to form your own opinions. Unfortunately screenshots can only show so much and the ultimate solution is to try before you buy which is easier said than done with computer hardware.
Note that maximum texture detail with texture compression disabled was used for the screenshots. The benchmark results are based on the default texture detail with texture compression enabled.
It's critical that the images be viewed at their native resolution of 1024x768 to see the effects of antialiasing. This can be done by using the display properties to change the Windows desktop resolution to 1024x768 and preferably 32-bit, or true color.
With the Deonator version 11.01 drivers, the following options are available for antialiasing on the GeForce3.
GeForce3 Antialiasing Properties
Since the GeForce3 uses a multisampling technique for antialiasing, the Quincunx option is not present for the GeForce and GeForce2 which perform antialiasing via supersampling.
GeForce/GeForce2 Antialiasing Properties
NVIDIA claims that High Resolution Antialiasing requires a minimum of 60 frames per second. Let's look at the benchmark results from the Quake 3 demo001 which are based on high quality settings with sound disabled.
|Quake 3 Arena - 2X Antialiasing
These following screenshots illustrate the multisampling antialiasing modes that are available on the GeForce3 in comparison to the supersampling technique used on the GeForce2 Ultra. Each screenshot was taken from the same viewpoint, give or take a few pixels. When viewing the images, be sure to focus your attention on the following areas:
- Straight surfaces - edges of stairs, grating on floor, window ledges
- Curved surfaces - on roof and windows (sky disabled intentionally)
- Quality of textures - floor, right wall, under center window
The action in Quake 3 is fast and furious and it's unlikely that you will notice the detailed graphics when playing. However, this preview will compare antialiasing under Direct3D and OpenGL and Quake 3 is often recognized for its highly detailed textures.
2X Supersampling vs 2X Multisampling
|GeForce2 Ultra - 2X Antialiasing
||GeForce3 - 2X Antialiasing
2X Antialiasing Performance
|Quake 3 Arena - Quincunx Antialiasing
In this section, the performance of Quincunx on the GeForce3 is compared to the 4X mode on the GeForce2 Ultra.
4X Supersampling vs Quincunx
|GeForce2 Ultra - 4X Antialiasing
||GeForce3 - Quincunx Antialiasing
Quincunx Antialiasing Performance
|Quake 3 Arena - 4X Antialiasing
The final test compares the performance of 4X antialiasing modes on both cards.
4X Supersampling vs 4X Multisampling
|GeForce2 Ultra - 4X Antialiasing
||GeForce3 - 4X Antialiasing
4X Antialiasing Performance
|Quake 3 Arena - Conclusion
I've looked at hundreds of screenshots and spent hours playing Quake 3 using the antialiasing modes on the GeForce2 Ultra and GeForce3. The generalized conclusions I have come up with at this time are based on Quake 3 (although I plan to do a similar comparison with Counter-Strike and Direct3D games) are as follows:
- Supersampling offers the best overall image quality, but is the slowest in performance. Textures even appear sharper and with more definition compared to the non-antialiased reference image. Edge antialiasing is good, especially on curved surfaces.
- Multisampling provides better performance than supersampling at the expense of a slight loss in image quality. Edge antialiasing with multisampling is comparable to that of supersampling although it's not as effective as supersampling on curved surfaces. When comparing the multisampling images to the non-antialiased reference image, it's hard to distinguish the difference in texture quality.
- Quincunx antialiasing offers the best performance and the edge aliasing is very close to that of 4X multisampling. However, textures are slightly more blurred compared to 2X and 4X multisampling. Overall, Quincunx is a good compromise between balancing image quality and performance.
The effects of edge crawling were kept to a minimum due to the high antialiasing resolution that was used and only occurred in extreme cases such as rendering stairs.
I also tested antialiasing in Alice which is based on Quake 3's graphics engine and didn't see a need to use antialiasing at a resolution of 1024x768. Although the game contains colorful textures that blend together nicely, images are darker than those in Quake 3 which helps hide the effects of aliasing. The point here is that the effectiveness of antialiasing can also vary by game.
What happens to the texture quality when multisampling antialiasing is used in conjunction with anisotropic filtering?
Quincunx Antialiasing with Anisotropic Filtering
Notice any difference? Compare the above screenshot with the first Quincunx screenshot or even to the GeForce2 Ultra 4X supersampling screenshot. We'll have to examine the effect and performance of the various levels of anisotropic filtering on the GeForce3 at a later time, but it looks promising.
Next Page: Antialiasing Under Direct3D