This screen shot is a result of a couple years' fiddling around with basic
Radiosity rendering algorithms. What's different about this algorithm is
the use of procedural, angle-of-incidence dependent textures to model light
reflection. The program takes as input a scene of polygonal mesh objects
and texture definitions, and outputs "baked" textures which contain color
and diffuse lighting information. A very simple OpenGL rendering engine can
then display these textures on the geometry without any additional lighting
calculations at run-time. The drawback: 25 megabytes of output textures in
a (relatively simple) scene. This problem will probably be circumvented
using multitexturing and compression.
By using radiosity lighting methods, many sophisticated effects are
achieved automatically: light attenuation, soft shadows, color bleeding.
Instead of using point light sources, lights are represented by emissive
geometry, allowing for more realistic light casting effects.
The scene itself was modelled by hand in Milkshape in an afternoon,
contains 8133 vertices and 13934 triangles in 126 objects, and uses 8
distinct textures. Lighting for this scene (first iteration only --
subsequent iterations are painfully slow) takes about 40 minutes to
calculate on a 1 Ghz / 256Meg machine with decent graphics card.
Comments welcome at firstname.lastname@example.org. Go Bears!