No doubt, if you're the average Quake player, you know how cool GLQuake and VQuake are. You probably know that this is because the accelerators in question have something called MIP mapping, and gouraud Shading, anti-aliasing, and this Buffer with a Z, or something like that. Sure, you can tell on those comparison charts which one's better: the one with the higher numbers.
Let's start with the weirder sounding ones. Now then. Quake is an engine that works off of polygons. I.E.: each of those monsters is made up of a whole bunch of angular surfaces. Now then gouraud shading is a method of shading where rather than shade the object as a whole in one single calculation, it checks each of the vertices (for each color), and then calculates the shading between them, and smoothes the colors together. The result is a much more accurate shading method.
MIP mapping is the key thing that makes GLQuake as breathtaking as it is. Essentially, MIP mapping is a sequence where rather than show pixels (or actually texels at this point), the GLQuake engine will pre-compute the texture at all angles, and depending on your distance from an object, it will then display that version. This is why in GLQuake, you can walk up to any object and at no point will you ever actually see pixels (it's a beautiful sight).
Anti-Aliasing (readers of my page will note that this applies to sound editing as well) is something that occurs in digital editing. Because digital editing is a binary sequence (I.E.: a sequence of zeroes and ones) there is a point in which you get a "jagged edge" or a "staircase" sequence of pixels instead of a smooth curve. Check out this shot from WinQuake:
See how jagged those edges are? With GLQuake those pixels get shaded together for a much smoother edge.
Z-Buffering is something that fixes a serious problem with a lot of games. When you enter a room in Quake, you want to make sure that the engine knows not to render all of the objects you can't see (slowing the game down immensely). Z-Buffering solves this problem. The buffer puts the objects to be rendered on a list along the Z-axis, and arranges them as the engine requests them. Z-Buffering speeds up a game, and allows for a much faster frame rate on cards that support it.
A texture map (or skin, since QuakeWorld came out) is a flat image that is wrapped around a 3D object. Frames Per Second (or FPS) is the number of separate frames of animation that zip by each second that you're playing. When the game slows down, for whatever reason, the framerate drops, hence the game looks choppy. The average television program transmits at 30 FPS. GLQuake, on the other hand, has been reported as reaching up to 57 FPS!
So hey, the next time you see someone playing GLQuake, comment on how "the Z-Buffering on this accelerator is really quite impressive" and you'll actually know what that means!
Well, that's all for this week. Come back next week, when I'll get Direct With Microsoft. In the meantime, send me those tech questions! I'm planning on devoting a column to Q&A every few weeks, so if you've got a question, send it in!