Description This demo loads a Doom-3 level (using the .proc format) and renders the level using portal-based visibility culling. I use the OpenGL Shading Language (GLSL) to render the levels using the light-data loaded from the .map files.

This demo is not a 'perfect' Doom-3 mapviewer, but more of an experiment to find out how to use GLSL and render a lot of lights in realtime.

The standard shader renders the geometry using bumpmapping, diffuse and specular lighting using specularmaps (no shadows!).

During the demo you can use the following keys: B - shows the bounding boxes of the lights. N - shows the bounding quads of the lights in screenspace. M - cycles through the shaders defined in de scene.

You need GLSL capable hardware such as the Radeon 9500 and up and GeForce FX 5200 and up to run this demo.