I’ve done a comparison between Q3Map2’s radiosity implementation, Half-Life’s (with Zoner’s compile utilities), and a Blender3D’s render quality “pseudo radiosity”.
I did this by rigging up a simple scene that is well known for measuring simulated lighting, the Cornell box. (More info here: http://www.graphics.cornell.edu/online/box). First I made a simple Q3 map with an area light. Then I duplicated this scene exactly in Valve’s Hammer editor (with custom textures and a custom rad file for the light). Finally, I recreated the scene unit per unit accurately in Blender3d (2.27), compiled everything, waited, rendered out the scene and wa-la!
The results are interesting:
Blender3d

Using the default radiosity settings and gour shading mode, this calculated very quickly. Nice subtle colors all around. Good soft shadowing (well good enough for vertices, as blender calculates a mesh from a hemicube if I recall correctly).
Half-Life

This compiled lightning quick using -extra, -smooth 90, and -bounce 128 (overkill, but very smooth). I’ve always been impressed with Half-Life’s lighting. Easy to get great looking results with a custom .rad file for ZHLT.
Finally…
Quake 3

Used q3map2 v2.5.4 and these settings:
-bsp
-meta
-vis
-light
-bounce 16
-bouncescale 1.5
-filter
-samplesize 1
-shadeangle 270
-super 8
as well as a _lightmapscale of 0.25 in the worldspawn (compile time even for this small map sucked, but those settings were just asking for it
). It was very difficult and took a lot of trial and error just to get it looking comparable - but this isn’t something you’d include in a real map anyway (insane settings).
It seems q3map2 uses a different implementation of radiosity compared to Q2, Half-Life, or other games. And it’s not the brute force method employed by Blender (certainly not something like Splutterfish’s Brazil or the Messiah GI renderer).
Is there anything to be done to improve radiosity in q3map2, possibly give it that softer, more “bounced” look, where surrounding walls inherit more of their neighbor’s color?
This is probably most suited for ydnar, but how does q3map2’s radiosity differ from other games? Are there several known methods for doing it? What would be the advantages/disadvantages to a new algorithem or method?
The full sources to my maps and shaders are found here if you’re curious -
http://duralisis.tripod.com/RadComparison.zip
Edit: Cleaned up links, posted pics to Tripod page. Text links if you can’t see the pics.
http://duralisis.tripod.com/b3drender.jpg
http://duralisis.tripod.com/hlrender.jpg
http://duralisis.tripod.com/q3render.jpg



)





