One benefit of using a true radiosity solution for indirect lighting is that self-emitting surfaces can easily be simulated. In traditional lighting pipelines, emission effects are very local only, and mostly do not contribute to the global illumination at all, if not faked otherwise. I have recently added an emissivity feature to the demo, further showing what the technology is capable of.
The beauty of the approach I’m using lies in the fact that adding self-emitting surfaces to the system does not increase the time needed to calculate the lighting solution. The simulation of the indirect lighting transfer is exactly the same as before, the only thing that has been changed is the addition of emissive properties of surfaces being fed into the radiosity system.
Additionally, unlike other approaches which try to simulate bounced light from self-emitting surfaces using local fill lights, this approach is completely independent on the number of emissive surfaces. It literally only is a single term which needs to be added to the direct lighting.
In the following screenshots, one of the blue curtains has been painted with a fluorescent green color, making it emit green light. The curtain still reflects blue light though, resulting in (blue) color bleeding onto surrounding surfaces – keep in mind that reflectivity and emissivity are two distinct properties!
Curtain emitting a strong, green light.
Self-emitting curtain, giving off green light while reflecting blue light.
As can be seen in the second screenshot, emission can of course be combined with any other means of direct lighting. In this case, bright sunlight hits the curtain, resulting in a turquois appearance.
Like the albedo (reflection coefficient) of a surface, emission of a surface can also be changed in real-time, without changing the performance characteristics of the radiosity system. In the hands of a good game designer, I believe that this allows for interesting gameplay mechanics akin to the real-time painting of surface properties in Epic Mickey.