Skip to content

GLQuake

The same world, a different way to draw it

GLQuake brought Quake’s world to an OpenGL renderer. It connected the game’s geometry, textures and lighting to the growing role of 3D graphics hardware on PCs.

GLQuake is the OpenGL-rendered version of Quake. It keeps the game’s three-dimensional world while changing the machinery that turns that world into pixels. The renderer can send drawing work through OpenGL to supported graphics hardware.

Shape, surface and light

Quake’s world contains more than its polygon shapes. A stone wall needs its surface texture, and it also needs lighting that makes the space readable. GLQuake’s released surface code keeps those contributions distinct.

World geometry receives a surface texture and a separate lightmap. The renderer combines surface detail and lighting to produce the visible wall.
Original schematic of surface texture and lightmap contributions. These are inputs to a rendered wall, not separate objects in the game world.

A texture supplies the repeated detail of the wall. A lightmap supplies a lower-resolution pattern of illumination across its surface. The renderer combines them, and its code also accounts for changing lights. The result can retain the same stone pattern while brightness varies across the room.

The related OpenGL QuakeWorld release notes describe drawing world textures and lightmaps in separate passes, then supporting hardware able to combine them with multitexturing. That later change illustrates why the number of passes depended on the renderer and hardware in use.

One branch among several

QuakeWorld changes the networking side of Quake. GLQuake changes its drawing side. The released source includes versions combining those developments, so an OpenGL client need not imply a particular network model.

John Carmack’s source-release notes identify all four preserved branches: WinQuake, GLQuake, QuakeWorld and GLQuakeWorld. They also distinguish engine source from the original game’s data. Releasing the machinery did not turn every map, sound and texture into freely redistributable material.

For a reader following texture mapping, GLQuake makes the next question concrete: once the world and its surfaces are described, which work does the CPU perform, and which work can the graphics hardware take over?

Sources

Checked. Verified against primary sources and signed off by a person.