Regarding directional dipole

Practical and theoretical implementation discussion.
Post Reply
citadel
Posts: 21
Joined: Fri Oct 17, 2014 4:19 am

Regarding directional dipole

Post by citadel » Wed May 04, 2016 7:38 pm

Following the shader code from http://people.compute.dtu.dk/jerf/code/dirsss/,
I have compared bssrdf using dipole (Jensen'01) and dirpole (Hachisuka'15),
cdipole.jpg
cdirpole.jpg
Both are sufficiently converged using a very small solid angle threshold(<0.25^2 sr) for hierarchical integration.
The problem is that dipole is noticeably darker than dirpole. And they both look quite far from volumetric path tracing.
But I have not tried single scattering, so the error may largely come from that.

ingenious
Posts: 282
Joined: Mon Nov 28, 2011 11:11 pm
Location: London, UK
Contact:

Re: Regarding directional dipole

Post by ingenious » Thu May 05, 2016 11:41 pm

If I remember correctly, the dirpole model includes single scattering, so in theory its result should be closer to the path traced reference. Can you actually please post that reference here for completeness?

citadel
Posts: 21
Joined: Fri Oct 17, 2014 4:19 am

Re: Regarding directional dipole

Post by citadel » Fri May 06, 2016 5:48 am

ingenious wrote:If I remember correctly, the dirpole model includes single scattering, so in theory its result should be closer to the path traced reference. Can you actually please post that reference here for completeness?
You're right, the directional solution has included single scattering.

I had some problem with normalization, in the environment sampling PDF.
Now I think I get it working right, as I made a comparison between BRDF and light sampling,
compare_sampling.jpg
I then compared between dipole, dirpole and vpt (~1k spp):
compare_buddha.jpg
But the medium is not thick enough for the diffusion approximation to work efficiently, both for dipole and dirpole.
My volume path tracing routine is not unbiased. I limit the tracing depth to int(log(0.03)/log(albedo)) for each channel.
FYI, the material is skin2 from Jensen'01, and scaled by 30. The index of refraction is 1.49 for all channels.

And I used 32^2 samples for irradiance with a very naive sampler, without stratification, so that may also add to the error.
Last edited by citadel on Fri May 06, 2016 6:24 am, edited 2 times in total.

citadel
Posts: 21
Joined: Fri Oct 17, 2014 4:19 am

Re: Regarding directional dipole

Post by citadel » Fri May 06, 2016 6:17 am

Comparing using the XYZ dragon model (up to down, dipole, dirpole and vpt):
compare_dragon.jpg
Mitsuba in (almost) the same setting:
mts_ref.jpg

citadel
Posts: 21
Joined: Fri Oct 17, 2014 4:19 am

Re: Regarding directional dipole

Post by citadel » Sat May 07, 2016 3:05 pm

Tonemapped using Reinhard '05 Dynamic Range Reduction Inspired by Photoreceptor Physiology
tonemapped_dipole.jpg
tonemapped_dirpole.jpg

Post Reply