Abstract
When using precomputed lighting on the static elements of a scene, it is important to light dynamic elements, such as animating characters, in a manner that is consistent with the static elements. One technique used in games is to project the external lighting into spherical harmonics (SH) from the center of each dynamic character, every frame, and then to use this SH vector to relight the character. For distant lights or small characters this approximation works well; however, if a light source is close to the character, or if the character is large (e.g., a dinosaur or large vehicle), this approach can breakdown. We present a technique that uses more sophisticated local lighting representations, which explicitly model spatial variation and error-driven criteria to determine whether light sources should be evaluated analytically or in a custom rig. This can increase the efficiency of deferred rendering techniques by minimizing the fill rate required for analytic light sources. Least squares techniques can be used to efficiently compute the coefficients of a spatial rig model based on the actual geometry of each dynamic mesh.
Acknowledgments
This work was motivated by discussions with developers at Propaganda Studios. We would like to acknowledge Peter Shirley and Ladislav Kavan for constructive comments and discussion. The soldier model is from the DirectX SDK.