Introduction

By now you probably know what the T-Buffer is, if not you must have missed the tons of articles already written months ago. They were all based on the same presentation given by 3dfx at the special tech briefings in San Jose and at ECTS 99 (London). Most of the articles have said pretty much the same things, with the exception of a few that have offered additional information (such as the one originally published here). Actually, most were just a summary based on the PowerPoint presentation given by 3dfx and the white paper they published. Now, I don't want to put you through more of the same so I'll try to write something a bit different.

First of all, I will introduce the difference between computer-generated images and images generated using a Video Camera set-up. The next part will explain the basic working of the T-Buffer. Now, those two parts might be a repetition, but I need to get this thing started in some way.

The really new stuff starts with a look at how this technique actually works and what is actually needed to make this possible. I'll be highlighting some good points. But as we all know, all good things have dark sides that nobody wants to talk about. So, after all the nice blahblah I will introduce one of the huge problems involved with the T-Buffer: bandwidth. As you might know, one of my basic rules is that nothing comes for free, and the T-Buffer effects definitely don't come for free. This will be followed by some suggestions about how we can really use these effects in games. 3dfx talked about cinematic effects during the presentation, which is nice, but most of the time they are plain useless in game situations, so I'll talk about how the T-Buffer can create a better gaming experience.

I will conclude with a subject for discussion: T&L or T-Buffer: which one is the right way to go? Or do we need both?


TV versus Computer Generated Graphics


I am sure you noticed that TV still looks much more realistic than the image generated by your 3D card. There are various reasons for this, but for this article I'll concentrate on the fact that movement (animation) looks much better, smoother, more fluent, and continuous on the TV than in computer generated graphics.

The reason for this is actually because computer generated graphics are "too" perfect. A frame generated by your 3D card is a picture, a picture that shows the game world in a very specific situation. This situation conforms to a specific isolated point in time. In the real world an animation of a car passing by is actually a car moving from one position to another position, the car moves through all (infinite number of) positions between those two points. The animation of the car is continuous. A video camera can capture this continuous motion because it records 30 frames per second. Such a frame is a recording of the world during a period of time. Actually, during a time period of (approximately) 1/30th of a second. So, basically, each frame records the world situation during 1/30th of a second. A CCD chip does this by building up an electric charge during this time period. If that period is finished the voltage is measured which is relative to the amount of light that hit that specific pixel cell. So, each pixel is a summation of the amount of light during a period of (more or less) 1/30th of a second.

Notice that computer generated graphics are different. Your 3D card, as I said, only captures the world situation on a very specific point in time. It's like a snapshot, a situation during a VERY small amount of time. It's a bit like taking a photo with a camera using a very quick shutter time. So, instead of a summation over a "period" of time you have a "perfect" snapshot. Let me illustrate this with an example.

Assume we want to show an animation of a fast car passing by. We have a normal home video camera and a photo camera with a very short shutter time. We use both to capture the animation at 30 frames per second. The video camera uses a summation over time for each frame; the camera uses a short shutter time (approaching an infinitely small amount of time, a snapshot). So, on one side we have a video film and on the other side we have a stack of photos. Assume we digitize the video film and the photos and play them back using a computer. The result of that test would reveal that the animation in the video film would look much more realistic than the animation formed by the series of photos. The photo animation will suffer from a stop-and-go-effect. If we compare those frames we would notice that the video film still images look very blurry while the photos look very sharp. The blurry effect is caused by the fact that the video camera sums all the world situations during 1/30th of a second while the photo takes a snapshot at maybe 1/1000th of a second. You could say that the video camera combines a huge number of photos into one video frame. You would actually need to combine 33 photos to approximate a single video frame.