Radiosity and the Quake2 Engine

Radiosity and the Quake2 Engine

Radiosity is the measure of light radiated (emitted and reflected) from a surface. Radiosity Methods are procedures that calculate these values between all the surfaces in an environment to produce more realistic lighting.

Lighting calculations, especially those involving radiosity methods, require a large amount of computing power. To ease the burden while playing the game, most of the Quake2-engine's lighting is computed ahead of time by a separate program (qrad3.exe, the last of the three map compiling tools). It's like painting the lighting right onto the map surfaces.

The lighting program starts by creating a mesh of "patches" for every visible surface in the map. Each patch covers a specific portion of their corresponding surface. Temporary point-light entities are created for each patch that must emit light. It then calculates the light cast from all point-lights onto the map surfaces. The light striking each patch is totaled up, and an apropriate amount (based on the texture color) is reflected off onto other patches. This bouncing process can be repeated many times. The bounced light is then added back into the normal lighting, and the finished map is saved.


ArghRad is an enhanced version of the Quake2-engine lighting program. This manual details the many lighting enhancements available in ArghRad. Use the menu on the left to select a category, or consult the index pages for quick access to specific info:


General information and features are described in plain text. Actual keyword settings are displayed in this format:

keyword  value

location: where to put    version: when added  
value: valid values default: default value

Detailed description of the setting.

example image link example map link

Some entries list multiple keywords. The faded keywords are just older, deprecated names for the same setting (they still work, but their use is discouraged).

Some entries list multiple values. This indicates different formats with different behaviors. These are always fully explained in the main description.

example image & map links:
These are active when an example image and/or map is available. The map examples are provided as .zips which contain all relevant .map files, compiled .bsps, and brief .txt descriptions.

This manual assumes you already have a basic knowledge of using compiler command-line switches, and how to add new entity keywords & values in your map editor.