Photon Tracing: Absorption Probability

Started by
2 comments, last by cwhite 18 years, 10 months ago
I have question regarding photon tracing (used in the photon mapping algorithm). It seems that when a ray hits a surface, the "russian roulette" technique is used to decide if it gets absorbed (stored in the photon map at full power), or reflected at full power. The rr technique is used again to decide whether it will be specularly or diffusely reflected at full power. So far, that seems fairly easy. However, I don't see what the absorption probability is supposed to be. Normally, I would say its the color... But we represent the color as a 3 dimensinal property... And when we reflect the photon, we multiply it by the surface's color, don't we? So, how does this all work, do we even need an absorbtion vs reflection choice? If we do, how does it work? What do we use to decide (what value)?

Looking for a serious game project?
www.xgameproject.com
Advertisement
One thing i would add to that is you'll also need to specify a transmission probability for transparent materials. This is a situation where physically based BRDF's are a necessity, because if any component of the BSDF integrates to more than 1, russian roulette essentially fails.

How you actually implement this depends on what type of BxDFs you are using. If your BSDF is composed of a weighted sum of BRDFs and BTDFs, say for example your material is partially transparent, partially specular, and partially diffuse, then your probability of using a particular component of your BSDF is found by integrating that component over the hemisphere and multiplying that value by the weight for that component in the BSDF. If you're using simple phong shading that's been modified to ensure your BRDF integrates to less than 1, then the simple approach I would recommend would be to integrate over R, G, and B separately and average the answer. If you're using a more physically based BRDF, then there's probably a more physically based way to find the answer.
What are you proposing exactly? That does not seem like a clear answer to my question regarding how to decide whether to emit or to reflect.

Suppose I have an ideal diffuse surface, with a color that is, say (1,0,0) in (R,G,B) notation, being fully red. How do I decide whether to absorb or reflect?

Looking for a serious game project?
www.xgameproject.com
Quote:Original post by Max_Payne
What are you proposing exactly? That does not seem like a clear answer to my question regarding how to decide whether to emit or to reflect.

Suppose I have an ideal diffuse surface, with a color that is, say (1,0,0) in (R,G,B) notation, being fully red. How do I decide whether to absorb or reflect?


You average the R,G, and B values, (0.33 in your case) and that is your probability of reflecting. If you reflect, you multiply the power of the photon by the equation given in Jensen's section on Russian Roulette.

This topic is closed to new replies.

Advertisement