AcademySoftwareFoundation / AcademySoftwareFoundation/OpenPBR
MaterialX: support thin-walled dielectric
- Dominant language
- CSS
- Stars
- 793
- Forks
- 44
- PR merge metrics
- No merged PRs in 30d
Description
In OpenPBR's thin walled mode, we describe the behavior of the base dielectric as follows:
>The translucent-base slab can be considered an infinitesimally thin sheet of dielectric (absorbing but non-scattering), with the BSDF fdielectric on both sides. A ladder of inter-reflections occurs inside this slab producing a reflected lobe and un-deflected refracted lobe. The transmission_color can be assumed to give the transmittance through the thin sheet at normal incidence (due to absorption). In the smooth case the BRDF and BTDF of this sheet can be solved exactly by summing over a geometrical series of terms containing Fresnel and absorption factors, and this can be extended to a good approximation of the rough case by appropriately roughening the transmission lobe (as described in [Kulla2017]). This model of thin-walled glass is a cheaper, much more convenient way to render windows than a finite thickness non-thin-walled mesh.
The "Revisiting Physically Based Shading at Imageworks" [notes](https://blog.selfshadow.com/publications/s2017-shading-course/#course_content) from Kulla and Conty describe their implementation of this:


This is implemented natively in Arnold.
It is not currently available in MaterialX it seems. So thin-walled glass is a missing feature currently in the MaterialX implementation.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing OpenPBR's thin-walled mode description and the linked Kulla and Conty shading notes, then inspect the MaterialX implementation to identify where dielectric transmission is defined. Done means the missing thin-walled dielectric behavior is supported in MaterialX with the reflected and un-deflected refracted lobes described in the issue.
Written by the indexing model from the issue text.
Assessment
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100