I've been trying to implement a disney styled principle bsdf lately, and I have read http://blog.selfshadow.com/publications ... _notes.pdf and https://disney-animation.s3.amazonaws.c ... tes_v2.pdf
I got the basic idea. One thing that confuses me a little is the layer system.
Arnold takes the approximation that all layers have zero thickness, and energy conservation is done directly with fresnel term. Here is my question.
When evaluating the bsdf, I assume we can simply loop over all layers and sum up contributions from each layer. However, when evaluating layers not on top, which in and out directions should we use? Should we take into account the refraction from upper layers?
When sampling the scattered directions however, which layer do we pick? If we have a specular layer on top of a diffuse layer, I think we can again use the fresnel to select layers randomly, but what if we have 3 layers, random select twice with fresnel? Lastly, if we select one of the lower layers, and sampled a scattered direction, should we also reduce the throughput of the sampled ray based on fresnel from upper layers?
Seems quite complicated to me, hope that someone can help

Thanks,