PBRT-v3 (the book) wrong microfacet BTDF?
-
- Posts: 5
- Joined: Tue Nov 29, 2016 3:59 am
PBRT-v3 (the book) wrong microfacet BTDF?
Recently I'm implementing path tracing with next event estimation and encounters a nasty bug: refracted radiance is higher than my path traced reference. Then I discovered that the paper by Walter et al. (Microfacet Models for Refraction through Rough Surfaces) writes the microfacet BTDF formula with an eta_o^2 term in the numerator, while in PBRT-v3 P.548 equation 8.20 an eta_i^2 term is used instead. But, the paper and PBRT-v3 both have the same dw_h/dw_o term. This is so weird... or am I missing some important concepts here?
Re: PBRT-v3 (the book) wrong microfacet BTDF?
You can try posting that to the pbrt google group. Matt is generally quite active in there and happy to answer questions and confirm and fix bugs.
https://groups.google.com/forum/#!forum/pbrt
https://groups.google.com/forum/#!forum/pbrt
-
- Posts: 5
- Joined: Tue Nov 29, 2016 3:59 am
Re: PBRT-v3 (the book) wrong microfacet BTDF?
Thanks for your suggestion! But I'm not sure if it is okay to multi-post on several places since I already have posted a GitHub issue on PBRT-v3's repository. Actually I'm more confused than before after digging into this problem further. It looks like non of PBRT-v3, LuxRender, Mitsuba, Tungsten are consistent on the microfacet BTDF formula (they all seem to be slightly different from one another!), especially on the eta & wi/wo thing... 

Re: PBRT-v3 (the book) wrong microfacet BTDF?
I guess this is related to the asymmetry of the BTDF (c.f. chapter 5 in Eric Veach's thesis). When evaluating the BTDF as radiance, there is a factor of (eta_o / eta_i)^2 between the transmitted and incident radiance. According to Walter's paper, they treat the BTDF as radiance (see the end of Section 2). And while I don't have the pbrt-v3 book, I assume they track radiance / eta^2 as suggested below Equation 18 in Walter's paper, which makes things more symmetric. So I would say both of them are correct.
Return to “General Development”
Who is online
Users browsing this forum: No registered users and 3 guests