Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bug report: wrong radius update in SPPM due to the photons in opposite side #145

Open
hchoi405 opened this issue Jun 17, 2021 · 0 comments

Comments

@hchoi405
Copy link

Problem

The SPPM integrator accidentally updates the radius when photons arrive at the opposite side of the surface.

Cause

It's because there are no exception codes to prevent the photons on the opposite side to be stored in KD-tree.
Once they are stored, SPPM integrator finds them and reduces the radius of the corresponding pixel.
The final color value is not severely corrupted because their flux is filtered out at BSDF evaluation stage, but still causes higher noise than normal due to the unexpectedly reduced radius.

Below is the image showing the sign of dot product (green:+, red:-) of geometric normal of the surface with the incoming direction of photon found at the hit point.
(Breakfast Room from link, iteration=1, photons=250K)
image

Red dots indicate the photon is coming from the opposite side of the surface.

Possible Solution

I will make a PR with simple workaround

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant