Advertisment

A Programmable Graphics Chip

author-image
PCQ Bureau
New Update

GeForce3 is the latest addition to NVIDIA’s family of video cards. The new GPU has many new features. To whet your appetite, here are a few numbers:

Advertisment
  • 0.15 micron manufacturing process
  • 57 million transistors
  • Four textures in a single pass
  • core frequency 200 MHz
  • memory frequency 230 MHz
  • Memory interface width 128 bits

Better performance from same frequency

The GeForce3 is clocked at the same frequencies as the GeForce2 Ultra. The company has focused on pushing performance purely by enhancing other features of the GPU. The GeForce3 GPU is made using a 0.15-micron process, and has 57 million transistors; while even the Pentium 4 processor is manufactured using an older process (0.18 micron) and has fewer transistors. This should help the GPU stay cool and reduce power consumption. Finally, the GeForce3 is able to apply four textures to every pixel in every pass, unlike the two textures that GeForce2 could process on every pass.

Advertisment

First programmable 3D graphics chip 

This is NVIDIA’s first programmable 3D graphics chip. In the past, game developers were stuck with palettes and effects implemented by the video card manufacturer. With the GeForce3, they have the option of programming the GPU to perform the computations they want it to, much the same way as one programs a CPU. In fact, the command set is quite similar to assembly language. This gives the game developer more flexibility, and should result in more advanced graphics. The nfiniteFX engine has three basic components: Hardware T&L unit, a Vertex Shader and a Pixel

Shader.

Vertex Shader

Advertisment

A Vertex Shader is a graphics processing function used to add special effects in a 3D environment by performing mathematical operations on the object’s vertex data. Each 3D surface is composed of thousands of little polygons, usually triangles. A vertex is the corner of the triangle where two edges meet. When passing data to the video card, each vertex carries a huge amount of information–from its precise co-ordinates in 3D space, to the textures and fog that needs to be applied to it. The Vertex Shader in the GeForce3 gives the programmer the ability to alter this vertex information using little programs that are limited to a maximum of 128 instructions. This is done completely by the GPU itself. Using these little programs, one can tell the GPU exactly how the polygons will behave under certain conditions. The example NVIDIA likes to use is that of facial expressions. Using the Vertex Shader, a wrinkle on the face can cast a realistic shadow if light falls on it from an angle. The potential for this technology is awesome and ranges from motion blur to deformations, and blending.

Pixel Shader

The Pixel Shader produces the pixels that you see on your screen when running a 3D game like QuakeIII. Its basic responsibility is accepting data from the Vertex Shader and combining the color and lighting information with texture data, so as to pick the correct color for each pixel. Like the Vertex Shader, this component is also programmable, but can accept only 12 instructions, four texture address operations and eight blending operations. Also to be noted is that the GeForce3 can apply four textures in a single pass using two clock cycles. GeForce2 could apply two textures per clock cycle. This might suggest that GeForce2 is at par with GeForce3. However, this is untrue as a lot more calculations are required to make two passes on a single pixel compared to applying four textures in a single pass on every pixel. Finally, GeForce3 Pixel Shader has advanced features like Shadow Mapping and Blinn Bump Mapping.

Advertisment

Memory architecture

Memory access is a huge restraining factor in video cards and primarily prevents them from delivering the same kind of frame rates at high resolutions like 1,280x1,024 than, at 640x480. Keeping this in mind, the GeForce3’s memory controller has been changed drastically.

Four 32-bit memory controllers are interleaved, which adds up to the 128-bit controller. In traditional controllers, a lot of bandwidth goes waste when the chip requests for data that is smaller than 128 bits. This is where the new memory controller scores over the older one. By having four different controllers, it is able to preserve bandwidth in such situations by simply using as many controllers as is required. This will have an immediate effect even on current games unlike the Vertex and Pixel

Shaders. 

What can the GeForce3 do? 

Since most of its new features are implemented through DirectX 8, and very few games have such support, we can’t really say. But remember the old Pixar animation called Luxo Jr where two lamps play with a ball? The award-winning animation was created using a Cray supercomputer. Each frame took three hours of computation, and that meant about 75 hours (at 24 frames/sec) to render each second of animation. The GeForce3 can do the same in real time.

Advertisment