Pixels vs. Texels

All fill-rate numbers (whatever definition is used) are expressed in Mpixels/sec or Mtexels/sec. The per second is often not written but it should be there. However with the introduction of the second generation boards companies started to use Mtexels instead of Mpixels. Why is that?

Well the original idea behind fill-rate was the number of finished pixels written to the frame buffer. This fits with the definition of Theoretical Peak fill-rate. So in the good old days it made sense to express that number in Mpixels.

However with the second generation of 3D accelerators a new feature was added. This feature allows you to render to an off screen surface and to use that as a texture in the next frame. So the values written to the buffer are not necessarily on screen pixels anymore, they might be texels of a texture. This process allows several cool special effects, imagine rendering a room, now you store this picture of a room as a texture. Now you don't show this picture of the room but you use the picture as a texture for a mirror or even a reflection map.

Another reason to use MTexels is that games are starting to use several layers of multi-texture effects, this means that a on-screen pixel is constructed from various sub-pixels that end up being blended together to form the final pixel. So it makes more sense to express the fill-rate in terms of these sub-results, and you could refer to them as texels.

Basically you shouldn't worry to much about whether it says texels or pixels. Just keep in mind that pixels usually refers to values written to the frame buffer (that are the pixels shown on your screen, pixel = picture element). Texels refer to the pixels that construct a texture . The word texels comes from texture elements.