Silicon.gif (19885 bytes)
Logo by Tom Purves


How to choose a video card (2D & 3D) (preliminary!)

  AccelStar_II_front.jpg (49738 bytes)   3dexPlorer_3000_board_front.JPG (82455 bytes)  Stealth_II_front.jpg (71997 bytes)


Proceed to the January 1998 Video Roundup for 2D and 3D performance comparisons of today's most popular chipsets, as well as visual quality assessments and links to individual reviews.

Or choose a review of an individual video card:

Introduction

Your video card is without a doubt one of the most crucial components of your system.   It provides the visual link between you and the computer.

Recently, the pace of innovation in the traditional 2D Windows acceleration field has slowed, but manufacturers have now shifted their focus to the realm of 3D acceleration.   Make no mistake, new developments in the video card industry are as rapid as they've ever been.

Driver support

The drivers for your video card are essential to making that card something you can actually use.  Good companies will continue to provide you with frequent driver updates that resolve problems, improve performance, and provide more features.  Bad companies will leave you out in the cold trying to scrape enough money together to buy another company's video card.

Of course, you still have to worry about whether your card manufacturer is responsible enough to provide you with drivers for all the operating systems you might like to run.   Many companies, for example, allow their Windows NT support to lag behind their 95 support.  Perhaps you would like to run OS/2, but don't have the drivers?  The feature set of drivers in these "alternative" OS's can also lag behind the other more popular OS's, to the point where you are frustrated that you even bought the product in the first place.

Features

DOS performance

Once this actually meant something, but today it's been relegated to the backburner by the dominance of Windows.  The speed at which an application or, most likely, a game is able to draw graphics on the screen in DOS is a measure of its performance.

Windows/2D acceleration

What is typically meant by 2D acceleration is the ability of your video card to accelerate certain drawing operations, like drawing a window, moving it, scrolling though a document, rotating a picture, etc.  With a good 2D card, you will find that working in Windows 95/NT (or other operating systems) is much faster and more responsive.  The speed at which your card could do this used to be the major point of differentiation for companies, but not any more.  Most cards are so fast now in 2D/Windows acceleration that the speed at which a card can do this is not as relevant as it used to be.  Almost every card is fast enough.

Video playback acceleration

Playing back videos on your computer can be pretty intensive on the processor, but the real work comes when you have to change the size of the playback window or play back MPEG video streams.

Most videos are smaller in resolution than your actual screen.  Obviously, watching a video in a tiny little window can be unpleasant and hard on the eyes.   A card that performs hardware scaling will allow you to blow the video window up to full screen without slowing down the frame rate of the video tremendously.

Blowing up a lower resolution video to a higher resolution, however, means that each pixel becomes bigger and more visible.  Hence, the image can look blocky and unrefined.  However, if your video card can perform filtering on the video, each pixel will be averaged with its neighbors to eliminate that blockiness and produce a smoother and more natural looking image.

Most video cards on the market now are capable of accelerating MPEG-1 video streams so that they will playback at full speed, and most can also resize the video with little or no speed loss as well.  In general, you don't really need to worry about video acceleration much if you buy a modern video card.

A point of differentiation that is sure to come up in the future is the ability of your video card to accelerate MPEG-2 stream playback.  For most people, that means the ability to playback DVD video.  There is a whole lot of stuff involved in accelerating MPEG-2 playback and I won't get into all of it here...but you should know that few, if any, video cards can help accelerate MPEG-2 video today...most need help in the form of an add-on card.

3D acceleration

Quake_2_bilinear_filtering.JPG (61274 bytes)
Quake 2 - one of the most popular 3D accelerated games on the market

This is the category where video card makers are concentrating all their efforts now, and you can probably be pretty sure that it will continue to stay that way for a very long time.  You only need to lood at every game out on the market today to realize that 3D acceleration is the way of the future for games and perhaps even applications, although its usefuleness in that segment of the market still needs a little more definition.

 

 

Bilinear filtering

Let's say you have a texture of a certain size that you'd like to apply to a polygon.   What happens when you get too close to that polygon and the texture needs to be blown up so that it covers almost all of your screen?

Bilinear_example_original_texture.jpg (5005 bytes)  Bilinear_example_resized_not_filtered.jpg (9611 bytes)  Bilinear_example_resized_not_filtered_2.jpg (12744 bytes)

Without filtering, you can see the picture/texture become increasingly blocky and pixelated.   Now what bilinear filtering does is take a good guess at what pixels are supposed to be there when the picture gets blown up by averaging together neighboring pixels in the original texture.   Here is the result.

Bilinear_example_resized_not_filtered.jpg (9611 bytes) Bilinear_example_resized_filtered.jpg (8373 bytes)

No bilinear filtering

Bilinear filtering enabled

In most cases, this increases the amount of visual detail and makes the 3D scene more pleasant to look at.

Note that the algorithm for bilinear filtering is not necessarily the same across all cards/chipsets.  Thus, it is possible for the filtering on two different cards to look different.  In most cases, however, you won't notice that much of a difference.

Mipmapping

Mipmaps are created for a number of reasons.  First let's see what mipmaps are.

Mipmap_example_128.jpg (10402 bytes)  Mipmap_example_64.jpg (6861 bytes)  Mipmap_example_32.jpg (4632 bytes)

Let's say the original texture is the first and largest texture, 128x128 pixels in size.  The 3D accelerator creates smaller copies of this texture, 64x64, 32x32, etc., and stores them in memory as well.  These copies are mipmaps.

Why is this done?  Let's say you have a object very far in the distance with this texture on it.  Instead of having to load an entire copy of the 128x128 texture from memory, the 3D accelerator can refer to a smaller precalculated mipmap like a 32x32 or 16x16 copy in order to conserve memory bandwidth.

The other reason has to do with the way 3D accelerators calculate the value of a pixel far away in the distance.  Let's say, for example, that the above texture is on a square so far in the distance that it only takes up 4 pixels on your screen.  In order to properly calcalute the value of each pixel, the 3D accelerator would have to load the entire 128x128 texture and average the whole thing down to just 4 pixels to display the image correctly.  In fact, many accelerators would simply take a few pixels out of the original texture and average them together to get the value of a pixel in the distance, creating an inaccurate representation of that pixel.  A precalculated mipmap has already preaveraged these pixels together, so that when the accelerator samples a point it is actually working with pixels which represent what ought to show up at that spot.  This is quite hard to explain with words but maybe I'll be able to illustrate with more pictures later.

You may have heard of trilinear mipmapping.  You obviously can't have a mipmap for every possible distance, so what trilinear mipmapping does is sample values from the two closest appropriate mipmaps and average them together to obtain the value for the final pixel.

 

Amount of RAM

Basically, the more RAM you have, the higher resolutions and color depths you can run at. 

Let's say, for example, that you want to run at a resolution of 1024x768 in 32-bit color.

1024 x 768 x 32 bits = 25,165,824 bits

Now, at 8 bits per byte, you have:

25,165,824 bits = 3,145,728 bytes = about 3.2 MB

So you need at least 3.2MB of video memory to get a 1024x768 x 32-bit desktop on your computer.

But since 2D and 3D are now being integrated on the same card, your video card needs more RAM than ever.  You will find that you not only need RAM to display the image on the screen, you need more RAM to store all the textures for each 3D object, you need more RAM to double buffer each screen for smooth playback, and you need more RAM to Z-buffer objects for depth calculations.  If you don't have enough RAM, you might find that a game is thrashing the onboard texture memory and  having to load textures from system memory constantly, slowing your 3D accelerator to a crawl.

Type of RAM

EDO RAM

SGRAM

VRAM

WRAM

RAMDAC

This chip is what converts the digital representation of your screen stored in your video card's RAM into a signal that your monitor can display on the screen.  The faster your RAMDAC is, the faster your screen can be refreshed and the easier on the eyes looking at your monitor will be.  The "DAC" in "RAMDAC" stands for Digital to Analog Convertor.  This is because the RAMDAC is converting the signal from a digital representation of bits in your video card's RAM into an analog signal that can be displayed on your monitor.

Because the RAMDAC is outputting an analog signal to the screen, you can't always determine the visual quality of a RAMDAC from its MHz rating.  In many cases, you might have to rely on first-hand experience or word of mouth to figure out if the image is acceptable for you.

AGP/PCI

What kind of slot do you want your graphics card to be in?  AGP stands for Accelerated Graphics Port.  AGP 1.0 is basically a separate slot running at 66 MHz as opposed to PCI's 33 MHz.  Future revisions of AGP may support 2 or even 4 times the current speed of AGP 1.0.

The primary reason that you want to put all that bandwidth on your video card is so that you can lessen the impact of having to transfer textures from system memory when the onboard memory of your 3D accelerator isn't large enough to store them all.  Make no mistake, however, AGP isn't a way to get around having more memory on your 3D accelerator.   Having more memory onboard is a much better way to do things.

So far, AGP has not proven itself to be of much benefit in 2D performance, although it usually helps a little.

There is also another issue to consider...one which, were it not for the incredible effect of 3Dfx on the PC 3D accelerator market, might not even be an issue.  Because the upcoming Voodoo 2 is expected to again raise the bar for 3D performance and will be coming in AGP versions, you might want to opt for a PCI video card now and leave the AGP slot open for an AGP Voodoo 2.  Otherwise, you might end up having to get rid of your AGP 2D/3D card when Voodoo 2 rolls around.

Performance

Proceed to the January 1998 Video Roundup for 2D and 3D performance comparisons of today's most popular chipsets, as well as visual quality assessments and links to individual reviews.

Overall, it's probably most important to remember that the major point of differentiation in today's cards is in 3D performance, not 2D performance.  It's unlikely that you'll be dissatisfied with the 2D performance of any modern video card.

Summary


Richard Kuo,
rkuo@eniac.seas.upenn.edu
Last updated 06/02/98 08:33 PM -0400