Page 1 of 1

Out-Scattering problem

Posted: Mon Apr 06, 2015 7:27 am
by koiava
Hello everyone, I'm really new in participating media rendering, experimenting around this last few weeks(here is my example of single scattering in homogeneous medium) and I'm encountered some problems.
I'm using inverse square law for light attenuation from point light sample, but this law is correct when light traced in vacuum, but when we have some media between scattering events and if this media scatters light, then we have both in-scattering and out-scattering. In my Single Scattering example I'm calculating scattering for nearest surface and in-scattering for volumetric particle, but in shadowing part I have included only surfaces, this means that I'm ignoring out-scattering phenomena and violating energy conservation. What is most common way to calculate out-scattering correctly? :)

Re: Out-Scattering problem

Posted: Tue Apr 07, 2015 12:39 am
by shocker_0x15
Let's consider the eye point x0, the nearest surface point x1, the point sampled on a light source y0.
You mean your renderer samples a few points(xp) along x0x1 and connects xp and y0, add a contribution attenuated by the factors T(y0, xp) and T(xp, x0), followed by adding contribution from the surface scattering attenuated by the factors T(y0, x1) and T(x1, x0), right?

Out-scattering effects are included as T (which consists of absorption and out-scattering).
Single scattering only decreases energy gain (compared to full consideration of scattering) along a path, so I think it does not violate energy conservation.

Re: Out-Scattering problem

Posted: Tue Apr 07, 2015 7:52 am
by Dade
You can also find a quite detailed explanation of the topic in PBRT book.

Re: Out-Scattering problem

Posted: Tue Apr 07, 2015 8:47 am
by koiava
shocker_0x15 wrote:Let's consider the eye point x0, the nearest surface point x1, the point sampled on a light source y0.
You mean your renderer samples a few points(xp) along x0x1 and connects xp and y0, add a contribution attenuated by the factors T(y0, xp) and T(xp, x0), followed by adding contribution from the surface scattering attenuated by the factors T(y0, x1) and T(x1, x0), right?

Out-scattering effects are included as T (which consists of absorption and out-scattering).
Single scattering only decreases energy gain (compared to full consideration of scattering) along a path, so I think it does not violate energy conservation.
energy conservation is definitely violated. Lets look at more clear example.
for example we have some plate illuminated from top and we have some dense non-homogeneous participating media(cloud) between light and plate, This case you must get shadow of this media on plate. Reason of shadow is actually out-scattering because light coming from emitter is scattered on volume particle in different directions and couldn't received on plate.
In my example volumetric and surface shadows are caused only by surfaces which occludes light.
One way to detect volumetric occluders is ray marching but it's dependent on marching step and is biased.
Dade wrote:You can also find a quite detailed explanation of the topic in PBRT book.
Yeah, I will definitely look. :)

Re: Out-Scattering problem

Posted: Tue Apr 07, 2015 10:00 am
by shocker_0x15
The paper for Residual Ratio Tracking will be a good reference for you.
http://drz.disneyresearch.com/~jnovak/p ... index.html

If you want to compute transmittance in in-homogeneous media in unbiased way, you can use Woodcock tracking. Furthermore, in the paper a better method RRTracking is proposed.

Re: Out-Scattering problem

Posted: Tue Apr 07, 2015 11:42 am
by koiava
shocker_0x15 wrote:The paper for Residual Ratio Tracking will be a good reference for you.
http://drz.disneyresearch.com/~jnovak/p ... index.html

If you want to compute transmittance in in-homogeneous media in unbiased way, you can use Woodcock tracking. Furthermore, in the paper a better method RRTracking is proposed.
Thanks! :) It is exactly what I was looking for :)

Re: Out-Scattering problem

Posted: Thu Apr 09, 2015 4:52 pm
by citadel
You may take a look at this,

http://www.cs.cornell.edu/Courses/cs663 ... olpath.pdf

if you are doing path tracing. But I don't see how you can "ignore" out-scattering, since it does not contribute in the spherical integration of the radiative transfer equation, but only works for computing transmittance.

BTW, as far as I can see ratio/residual tracking is something for evaluating transmittance, but does it help when it comes to sampling distance for indirect illumination? It's vaguely put in the second part of section 5.2.