Jump to content
• Advertisement

# Photon Tracing: Absorption Probability

This topic is 4939 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 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)?

#### Share this post

##### Share on other sites
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.

#### Share this post

##### Share on other sites
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?

#### Share this post

##### Share on other sites
Quote:
 Original post by Max_PayneWhat 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.

#### Share this post

##### Share on other sites

• Advertisement
• Advertisement

• ### Popular Contributors

1. 1
2. 2
Rutin
21
3. 3
A4L
15
4. 4
5. 5
• Advertisement

• 13
• 26
• 10
• 11
• 44
• ### Forum Statistics

• Total Topics
633742
• Total Posts
3013638
×

## 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!