• Advertisement
Sign in to follow this  

deferred light volumes question

This topic is 3008 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I´m applying the light volumes optimization to my deferred renderer (instead of drawing one full screen quad per light) and i have one question: In point lights, the light volume is usually a sphere where radius = light radius. However the specular and ambient terms of the light can affect pixels outside of this radius. What´s the usual approach for this? Use the stencil values to somehow cull only diffuse lighting? Another question...do you think that using dynamic branching to avoid calculations for pixels outside the radius (instead of using stencil to cull them out) can pay off when the lights are very big? EDIT: I read here: http://www.gamedev.net/community/forums/topic.asp?topic_id=533102 that what is done is to just: 1.- take the most important lights and do another pass for their spec/ambient only 2.- use attenuation for spec too. But i think both of them defeat the purpose of specular... :(. Maybe for "fill" diffuse only lights i can apply the volumes, but for the rest of my lighting, it´s just a no-no. Can anyone help me? Are there other ways around this?

Share this post


Link to post
Share on other sites
Advertisement
In deferred rendering, it's best to simply not give your lights an ambient component! Treat ambient lights as a separate category of light, which must use the full-screen-quad approach.

As for specular, you could simply apply distance attenuation to it so that it doesn't appear outside of the light's radius.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement