Modern Real-time Lighting

Started by
14 comments, last by Deebo 19 years, 6 months ago
Theory is needed to understand the implementation :)

I'd be very interested in such a series of articles, go for it! :)
Advertisement
Brisco: To solve the recursive reflection effect you can just use the environment maps from the previous frame - they'll be a slight "lag" effect but you probably won't notice unless you move one of them very quickly.
Moagly,
Would you please explain the "if you have more than one shadow caster, when the objects radiance volume intersect there will be inaccuracies" in more detail?
This is difficult to explain without a picture, but i'll try anyway!

With neighbourhood transfer, what you are trying to do is figure out for a sample of points around an object which directions of incident light are being blocked by the object and which directions of incident light are not being blocked. This is stored as a spherical function, or transfer function, the actual representation of this function is not important to answering your question, but spherical harmonics and haar wavelets are good choices for real-time performance.

Now if some other object intrudes into this volume of light 'transfer' points, the spherical functions which have been pre-computed are no longer valid, because directions which according the spherical function are not blocked will now be blocked, which means that there will be more light arriving at these points than there should be.

Hope that this helps.
Sneftel, if you don't mind me asking how do you represent your transfer functions if your not using SH, can you get real-time performance?
At the rate CPUs and GPUs are advancing, realtime raytracing will be (hopefully) possible in the near future. I am currently writing coding one in hopes that when it is up and running, hardware will be able to handle the lighting calculations in realtime. When I have a working demo I will update my website. Right now my web site barely explains the networking project that evolved to the full fledge engine I am working on now.

This topic is closed to new replies.

Advertisement