It has been really amazing to see some of the articles over the past weeks dealing with T&L and other issues.  I'll probably get flamed for saying this, but very little of the press really seem to have any idea what’s going on.  People are seeing technology demos and are being amazed.  However, you really can't be amazed that much by technology demos because of the fact that they are just that, technology demos.  This means a great deal of work has been done to optimize it for a specific hardware.  It also means that it isn't anything close to the system demands of a game, it is simply a rendered scene. You're probably thinking that I'm talking about back in July at 3dfx. It was interesting because they showed us a technology demo that really impressed a great deal of the journalists there.  While I'm not saying that is wrong, it just must be kept in mind that a tech demo is a tech demo and so it should be taken rather lightly. What really needs to be considered are the games, and so with the case of 3dfx at that time, they also showed us Need for Speed 3. So point being: Don't base your view of a technology based on a tech demo, base it on the real world use. 

Well the primary purpose of this article is to discuss T&L and make some updates on our previous article, which focused on the GeForce. As a quick recap, T&L stands for transformations and lighting.  The transformations are the calculations required to translate a scene through the 3 different "spaces" to finally get a viewable image. As for lighting, it is just that, lighting.  The hardware lighting we are talking about is vertex lighting. Now what we'll be doing here  is looking at T&L itself, the good it brings, the problems associated with it, and some solutions to these problems (random order). What you'll see here are just the plain facts. It should be of real interesting.

One of the first issues that should be addressed is that of landscapes and transformations.  Previously we stated that the terrain engines used in racing and flight sims do not require transformations by using a height map and some simple math. Actually, this is not true.  These engines do require transformations, but only to the eye space. The general idea of having a unified model and transforming that to a "position in the 3D world" is not valid for a terrain engine since the CPU generates the correct 3D world position immediately. So again, there are transformations required, but not to the same extent as within a typical game. 

In our previous article, talking about the problem of fill-rate limits, one of the issues we forgot to address is that of depth complexity, otherwise known as overdraw.  Depth complexity is the problem of triangles overlapping to form additional triangles and pixels. This means that you create extra triangles to be rendered as well as extra pixels. Here is an illustration to better help you understand: