I'm not going to go into much detail here simply because I'd like to focus on those areas that have maximal impact on your everyday gaming experience. With that said, the Parhelia is a DirectX 8 class graphics accelerator and obviously supports the required DirectX 8 specifications. The Parhelia also supports some features that aren't called for in DirectX 8 such as displacement mapping. Anyhow, let's touch on the most important features.
Quad-Texturing - Each pipeline has 4 texture units
Super Sample Texture Filtering - Provides up to 64 texture samples per clock, supporting up to 16-sample anisotropic texture filtering.
16X Fragment Antialiasing (FAA) - Provides 16-sample antialiasing (Super Sample) to polygon edges.
Full Scene Antialiasing (FSAA) - Supports traditional 4X antialiasing (Super Sample).
I'll briefly cover the filtering and antialiasing features, since these will have the most impact on day to day usage.
ANISOTROPIC TEXTURE FILTERING
When the Parhelia debuted, one feature absent from the shipping drivers was the ability to force a higher level of anisotropic texture filtering. At the time, it was believed to be an issue with the drivers, which would be addressed at a later point. More on this on a minute. For now, feel free to click on images below to get an idea for the difference that anisotropic texture filtering makes with the Parhelia.
Based on the comparison, you can see that anisotropic filtering does help sharpen textures. However, it's also clear that this feature is handicapped due to the low number of samples that are currently being used by the driver. I sent an e-mail to Matrox asking why they haven't increased the number of samples and/or the ability to adjust the number of samples. The following was their response.
We feel that Parhelia's 2-tap anisotropic filtering is a significant improvement over both bilinear and trilinear filtering and by us enabling any higher setting we would effectively hit that law of diminishing returns in terms of quality improvement / performance reduction."
Let me restate my position on this issue. Matrox needs to completely re-think this due to the fact that it's not competitive with other graphics chipsets. What's the point of limiting the capability of the hardware? Why not give the consumer a choice? Quite frankly, this has been one of my few sore spots with the Parhelia.
16X FRAGMENT /4X SUPERSAMPLE ANTIALIASING
Fragment antialiasing (FAA) could go down as one of the biggest strengths in the Parhelia arsenal. I use the word "could", because it's not an easy feature to assess. In layman's terms, 16X FAA applies 16X supersampling to the polygon edges. An algorithm on the chip attempts to determine when to process polygon fragments and when not to do anything but write the data out to the framebuffer. When the algorithm determines a fragment exists, the pixels are sent to a fragment buffer to be processed. The result of the fragment buffer is eventually written to the framebuffer.
Matrox has taken an interesting stance when dealing with antialiasing. The way they see it is that you only need to perform antialiasing on a given amount of data and it should be done at the highest possible quality. Ultimately, this implementation is dependent on detecting polygon fragments and this is where that word "could" comes into play. On the whole, FAA is a great feature. It does handle the task of cleaning up the jagged edgesies better than any other implementation I've used. On the other hand, any Parhelia owner can tell you about the growing pains FAA has undergone.
This isn't really such a bad thing, is it? Again, it's a double-edged sword. Matrox continues to improve FAA through driver updates, but there are known limitations that simply cannot be addressed in the current hardware. It's my personal belief that a future Matrox part will be required to fully rectify these limitations.
Let's try and make heads or tails out of this feature, and see if we cannot draw a couple of specific conclusions. I have also tossed in some 4X FSAA screenshots for comparison.
Quake 3 - 1
Quake 3 - 2
Nascar Racing 2002
Let's focus on the FAA positives:
When compared to the 4X sample mode, FAA does a better job on the edges.
Performance impact of FAA is relatively minor.
Works in both OpenGL and Direct3D with no API tradeoffs.
Very effective in flight and racing simulations.
And now on the negatives:
Doesn't work 100% of the time, across the board. You can spot areas in the provided screenshots that not working.
Will not work on stencil buffers.
Because it only works on edges, you must apply anisotropic filtering to address textures. Not really a negative per-se, but is a consequence of the implementation.
For the most part, FAA is an effective antialiasing method. It allows for a large number of samples to be used with a minimal penalty on performance. Matrox has had some difficulties over the months in trying to eliminate bugs with FAA, but should be commended for diligently getting it up to par. At the present time, there are no serious issues with this feature.
When actually playing a game, you don't tend to notice some of the imperfections, but they are imperfections nonetheless. It likely that the next generation Parhelia part will eliminate these issues altogether. If Matrox can achieve this, they could end up with the most effective antialiasing feature available in the consumer market.