Here is a node diagram for the specular transmission function (BTDF) from Walter, et al, from “Microfacet Models for Refraction through Rough Surfaces." Also known as the “GGX” model (or Trowbridge-Reitz).
You can see how the node graph comes in handy for debugging a shader function like this. It’s useful to visualize each term and see it’s effects. For example, the “D” term of the BTDF is a node on the diagram. And we can visualize the effects of that term independent of everything else.
In this case, the diagram saves a HLSL function, and that function is called by text-based HLSL code. This will become part of some new functionality for specular transmission through thin surfaces.
I’ll pop this in a new “experimental” branch.
See the post from yesterday, Material and Node Diagram Tool, for more information.