Jump to content
  • Advertisement
Sign in to follow this  
gfxnomad

Photon Mapping

This topic is 3824 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

So I'm trying to implement photon mapping in my ray tracer. I think I've got the basic algorithm down, but I'm missing a few details. Does anyone have links to a good resource with some examples of both the photon shooting and irradiance estimate steps? I'm sure I'm missing some details, and I can't find any really good examples for the tracing step. For instance, when a photon strikes a surface (I'm using Russian Roulette for the tracing step), how do I calculate the color and flux of the stored photon? Then, if the photon is reflected, how do I alter this color and flux (do I even alter the flux of the reflected photon)? Then, in the irradiance estimate stage, when I use the kernel estimator to estimate the density, how to I account for all of the photons within a given radius? Are all photons added equally as long as their incoming direction is above the target surface, or do I scale a photon's contribution by the cosine falloff term? Finally, how do I combine photon mapping for diffuse inter-reflectance with normal whitted style integration for direct illumination estimation? Thanks, Rob

Share this post


Link to post
Share on other sites
Advertisement
for the last part of your post in combining the results of photon mapping with the usual direct lighting calculations; what i do for this, is that i simply do not store primary photons (By that i mean photons that have been directly emmited from light source without any interaction, no bouncing, reflection, transmission etc). That way the photon map only stores information on indirect lighting.

Share this post


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

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!