3D Graphics Cards

Introduction

Scope of this assignment: As very little could be found on the web about the actual hardware implementation of 3D graphics cards, this assignment explains a few concepts associated with 3D graphics cards on the PC, describes three different cards and mainly compares their performances and features.

Applications of 3D Graphics Cards: There are two main streams of 3D graphics cards on the PC market. The first is the really expensive high-end cards designed primarily for extremely fast 3D rendering for professional users. They often only operate under Windows NT using OpenGL. The second is the more flexible, less expensive, lower performance cards for the average Joe in the street who wants to make games look cool, play MPEG video files, and perhaps dabble a little with creating 3D graphics. Additional features of the latter type of graphics card often include option of connecting TV-tuner or video-capture daughtercards, so that you can watch television on your monitor, or grab and manipulate video stills. As memory, higher performance processing etc become cheaper and cheaper, more people will be able to afford 3D graphics cards for their PCs and competition between manufacturers is pretty fierce.

Features Of 3D Video Cards Explained (by Malky)

3D graphics cards use various techniques which add reallity to the graphics and henceforth allows better interaction between user and the system , independant of the type of system it may be. some of the techniques used are as follows:
Alpha Blending
This allows various degrees of transparency, from completely see through to solid colour, on each pixel. Which, leads to more realism for the user in the use of the system as items can be of a see through nature, or can alternate depending on the users view point.i.e. could be used to teach people in the handling of aquatic life by using semi transparent water, in the simulation program.
Anti-aliasing
Smooths out the edges of lines as they are drawn on the computer screen to make it look less blocky and more like real life.
Double Buffering
This is a technique which uses two buffers , one to actually hold the output to the screen and one to be updated with the new screen. This means that when the new screen is ready it can be outputed to the screen by switching it with the screen buffer. This means that all the output data that has to be put through some algorithms can actually be done before it is output to the screen.
Gouraud Shading
This makes the surfaces of objects look slightly different by altering the colour across the object, again this is to make it more lifelike as not all objects are the same colour over there whole surface.
Lighting, materials
This computes the colour at any point on a object dependant on its reflective properties and refrative index.
Texture Mapping
Allows a texture to be put onto a object (duh ) , again this is to add more realism to the system by possibly giving more information as to how a specific object may react to being moved.
Transforms
This keeps objects in the correct place according to the position of the user so that it always looks real. i.e. no chairs hanging in mid air when the user switches to a floor perspective.
Trilinear Texture Mapping
Allows gradual modification to a surface as the users perspective changes to again allow more realism. for example if your are in an office, as you move towards a wall the pattern may change as you can pick out more detail, This change would happen gradually and wouldn't really be noticable. Trilinear texture maping allows a computer to do the same by modifying the pixels gradually to allow the change to happen but not really let the user know that it had changed.
Z-buffering
The z-buffer holds information on the depth of objects, this allows the graphics card the ability to only render objects which can be seen. This saves processing information which is not required.
Rasterization
This is the first process of 3D rendering ( described later) and is used to decide which pixels the edge of a polygon lie on ( the basic level description) or which pixels the polygon covers ( the more complex level).
Rendering
Basically this is taking 3D objects and placing them on a 2D screen in such a fashion as they look lifelike.

[ If your system does not support MalkySpeak™ click here for an interpreter ]

PCI versus AGP

Until the Pentium II came out, the only real choice for 3D graphics was to buy a PCI card. The PCI bus was OK in the past, but as increasing demands are put upon the system it just can't handle the bandwidth requirements. There are a couple of main problems with PCI:
  • It is limited to running at half the memory bus speed (usually 33MHz) This means a bandwidth of 133MB/s
  • There will be other devices competing for this bandwidth, such as hard disk controllers. This severely limits what can actually be used for video, affecting the performance of the whole system.

With the Pentuim II, Intel brought in a whole new graphics port: AGP (Accelerated Graphics Port). This has many advantages over PCI, but perhaps the most important is that it is purely for graphics adapters. This means that the PCI problem of competing for bus bandwidth no longer exists, allowing the graphics card to transfer much more data than before.

It is still a 32-bit bus (based on the PCI 2.1 spec), but it operates at the full speed of the memory bus, normally 66MHz. There is also a special x2 mode which can transfer data on both the rising and falling edge of the clock, doubling the potential bandwidth from 266MB/s to a huge 533MB/s. There is also a planned x4 mode with a bandwidth of 1.066MB/s, but at present bus speeds this could not actually be utilised properly as the system does not have enough bandwidth to keep it fed with data. This should be enough bandwidth for 3D cards in the foreseeable future, when system bus speeds are inproved enough to use it properly.

Another advantage of AGP is that only the frame buffer has to be stored in expensive video memory, as it can also access system memory to perform calculations upon 3D information. With the PCI bus, this all had to be done in video memmory. The reduced needs for video memory should mean that the frame buffer will have more memory, allowing better screen modes.

The downside to this is that the operations in normal system RAM may slow down the process slightly as access to this RAM is much slower.

All this should mean that an AGP card should operate much faster than a PCI card, although in current systems there doesn't really seem to be much of a benefit. Time will tell...

APIs: OpenGL, Direct3D

First things first. API stands for Application Programming Interface. The two main ones at the moment for PC 3D cards and the relevent applications software are OpenGL and Direct 3D. There are a few more in the pipeline right now, such as the new Fahrenheit APIs being developed by Microsoft and Silicon Graphics Inc. Basically, the maker of the graphics cards provides the user with driver software for the API and relevent Operating System and the applications software calls the functions of the API to use the 3D graphics card. This means that applications are written so that they are independent of the actual hardware of the graphics card. The API presents applications with a uniform interface irrespective of the underlying hardware. This makes the whole hardware-software system much more flexible as if you want to change your 3D card all you need to do is install the right driver software to run the same applications.

OpenGL, for example, makes programming applications much easier by adding functionality in addition to standard rendering such as:

  • transforming coordinates (moving points from once place to another)
  • tesselating polygons (sticking them together to form a 3D object)
  • manipulating images for texture applications
  • rendering canonical shapes (spheres, cylinders, disks etc)
  • error reporting

 

Introducing our 3D Graphics Cards

The three graphics cards we will discuss are the Intense 3D Pro 2200S from Intergraph Computer Systems, the Winfast 3D L2300 from Leadtek Research and Voodoo 2 from 3Dfx. The first two were awarded BYTE Best in the March 1998 edition of BYTE in their comparison of 26 different 3D cards. The first was found to have the highest performance using the Viewperf benchmark for OpenGL performance, and the Bapco Sysmark benchmark for 2D performance both under Windows NT. The second card was found to be the best if performance in the above benchmarks, features, price and technology were taken into consideration. The third card, the Voodoo 2 isn't available as yet in the UK (it was supposed to be available in early March) and is proported by gamers to be the best thing since Giant Smarties and Jolt Cola.

The Intense 3D Pro 2200S uses the PCI bus, has 4 to 16 MB of texture memory (out of the total 16 to 32MB), is compatible with any application that uses OpenGL or Heidi, uses Intergraph's "proprietory graphics processor", and comes with a three-year warranty.

The Winfast 3D L2300 supports OpenGL, Heidi and Direct 3D, accelerates MPEG-2 Video, is based around the Permedia 2 chipset (all the boards based around this chipset performed roughly the same in the BYTE test in March), has 2-8 MB of video memory, has loads of bundled software, and uses the AGP bus system.

The Voodoo 2 is "designed for the serious games player" (giggle) and two Voodoo 2s can be connected together (I assume in parallel) to give double performance, if you have the dosh. It is PCI 2.1 compliant, supports OpenGL, 3Dfx Interactive Glide, Direct 3D, Quickdraw, and 3D Rave, and contains one Pixelfx2 and two Texelfx2 processors.

 

Comparing These Three Cards

It's difficult to compare these three cards as their manufacturers publish different performance specifications in different units and stress different features. I'm sure it's all designed to impress and confuse the ignorant like ourselves (I'm not necessarily including you, the reader, in that pronoun).

I can say that the Intense 3D Pro outperforms the Winfast 3D in the BYTE challenge, but in my opinion the performence difference (around 9.4 Units compared to 8.4 Units) does not really justify the exorbitant price difference (the first card costing $2387 and the second $169). Just guess which one I'd buy for my PC. The Intense 3D Pro is aimed at the professional user, whereas the Winfast 3D is a games card and priced for the competitive games market. Apparently, the Intense 3D Pro outperformed the other cards in the BYTE test by at least 25% in one of the benchmark tests "which emphasizes texturing and modelling". Its overall composite performance score may have been brought down by its 2D performance. This card isn't designed for your average user, it's for the user who renders 3D graphics all day for a living (doesn't that sound like such FUN ?) and 2D performance isn't all that important.

The Voodoo 2 retails at between $229 and$299 (8MB to 12MB memory). Judging by the price, its performance should be somewhere between the Winfast 3D L2300 and the Intense 3D Pro 2200S. From the performance specification on the web pages for the Intense 3D Pro 2200S and the Voodoo 2, the Voodoo 2 is seriouly outperforming the much more expensive card. Its manufacturers claim a rate of three million triangles/sec with alpha-blending, Level-Of-Detail MIP-mapping, Z-buffering, filtering, fogging and texturing all enabled, for the Intense pro it's only 1.2 million triangles/sec with 25-pixel Gouraud shading (It's hard to compare these figures as they don't describe the same thing. It seems as though more work is being done by the Voodoo 2 and it's still much faster than the Intense Pro 3D).

What we've got to remember here is that Voodoo 2 is designed to give "Fastest 3D gameplay. Period." There is no mention of any other applications. The website doesn't say anything about playing MPEG2 video files or using the card for graphics creation programs. 3D games cards offer really fast performance at a reasonably affordable price. Only professionals can afford to spent thousands on a graphics card. Although it's fast, the Voodoo 2 probably doesn't have much support for serious graphics software. Both the Intense 3D Pro 2200S and the Winfast 3D L2300 have support for the Heidi API, which many high-end 3D graphics applications use.

If you haven't got much money, the Winfast 3D L2300 is really good value and seems to be very versatile (it can be used for games, MPEG2 video playback and serious applications). The gamer would probably opt for the Voodoo 2 (or 2 of them if he/she has the money). Professionals need something like the Intense 3D Pro 2200S, which supports professional software APIs and is especially talented at modelling and texturing.

 

Where Do The Performance Differences Come From?

All of these cards have a high performance. The Winfast 3D L2300's is mostly due to the highly-pipelined graphics core provided by the Permedia 2 chip, in conjunction with the fast AGP bus. It is let down slightly by only having up to 8MB of video RAM, which limits the resolution and number of colours and it limits the size of the frame buffer. Because it uses the AGP bus, however, main memory can be used to store other values, leaving more room for the frame buffer in video memory. Using main memory may slow it down a bit, though.

The Intense 3D Pro 2200S, because it uses the PCI bus may suffer some performance loss, but it has a large amount of video memory allowing it to have a large frame buffer, and it isn't slowed down by using main memory.

The Voodoo 2 has three processors with their own separate jobs to do within it, which of course speeds it up considerably. It also has more video memory than the Winfast 3D L2300 and therefore doesn't have to use main memory quite so much, making accessing/saving data faster, the tandem card option also allows expandability to the graphics subsystem.

 

Conclusion

Think long and hard before you part with your cash for a 3D graphics card. What do you want it for? What features are important to you? What software does the card need to be compatible with? Speed is not everything, my dear.

 


Disclaimer: All opinions on this page are merely those of three weird-looking long-haired overworked CES students who probably know more about Black Sabbath's discography, nail-painting technique and how to deal with troublesome neds (wear weird clothes, fishnets, chains, handcuffs and loads of makeup and they're more scared of you than you are of them; hopefully they'll leave us alone. Mary's top tip: Wear handcuffs on your clothes in case of harassment by a member of uncouth sections of society. When they approach you pretend you are incredibly attracted to them and suggest a fun little game involving handcuffing them to something sturdy. When they assent to this attach them to the sturdy immovable object, blindfold them, tell them to wait for you to do something nice and proceed to leave very quietly. WARNING: OF COURSE THIS IS NOT A SERIOUS PIECE OF ADVICE, MERELY A JOKE. IT IS CRUEL AND DANGEROUS TO MANACLE SOMEONE AND LEAVE THEM THERE TO SUFFER. It is also rather expensive, as you'll have to buy new handcuffs.) than they know about the relative virtues of PC 3D graphics cards.

We respect the trademarks of any hardware manufacturers and make no claim on them. We are sorry if we upset anyone. We're just trying to pass a class. Please don't sue us -- we have no money anyway.

 

Relevant Links