Original Post
I'm currently doing some research into SH lighting in its various forms, in particular PRT. While looking, I found this article, The Lighting and Material of Halo 3, where the author discusses the use of SH lighting in Halo 3. They talk about how they use a technique similar to lightmapping for level geometry, except instead of varying a final radiance color in a texture, they store SH coefficients for the incoming radiance, based on a GI solver, and use this information per-pixel, together with the normal map information, to calculate diffuse lighting. However, maybe its lack of sleep,or maybe I'm misunderstanding the approach here, but I'm failing to see the advantage of doing things this way compared to standard lightmapping. If the incoming light is precomputed (static) and diffuse (no view dependence), and the level geometry and the normal maps on that geometry are also static, the final diffuse lighting value should also be static, and should be able to be captured by a standard lightmap with less computational hassle at runtime. SH Lightmaps also take up a ton more memory per-texel depending on the number of coefficients you're using. Am I missing something?
Link: http://ati.amd.com/developer/SIGGRAPH08/Chapter01-Chen-Lighting_and_Material_of_Halo3.pdf
Link: http://ati.amd.com/developer/SIGGRAPH08/Chapter01-Chen-Lighting_and_Material_of_Halo3.pdf