Hi,
So, a summary of the microfacet BRDFs and why they are implemented.
The microfacet BRDFs were originally implemented as part of the OSL materials to support the default microfacet BRDF closures in OSL. They are also useful to have for importing materials from other applications because microfacet models (especially GGX) is quite widely adopted across different applications, so we can get a much similar look in importing materials than our existing BRDF.
The main difference is that these microfacet models try to mimic the roughness of a surface, reconstructing the bumpiness of a surface at the microgeometry level. That is done by doing the BRDF sampling based on the microfacet normal rather than the light direction in the original Octane BRDF, thus enabling us to achieve material properties like "glossy fresnel", which reduces fresnel effect at grazing angle for high roughness surfaces. These models also allow for anisotropic roughness, so we can also simulate anisotropic surface reflectance with these. Both of these things are something we previously did not have.
OK, now the difference between the three microfacet models. The most obvious difference between the microfacet models are the specular highlight lobe, defined by the microfacet NDF (normal distribution function), the roughness controls the lobe size using this NDF, similar to how Octane's existing BRDF works (albeit without NDF). Generally speaking, the Ward BRDF behaves similar to the Beckmann BRDF model, but is considered to be cheaper to evaluate. While GGX is different visually compared to the two and is known for a longer specular tail. Here are some comparison images:
At roughness = 0.2, you can see the difference between Ward and Beckmann aren't that big, while GGX's lobe is quite different. GGX's lobe tends to have a longer tail near the end of the specular highlight compared to both Ward and Beckmann BRDF.
At roughness = 0.5, the difference between Ward and Beckmann are still very similar, while GGX's lobe remains to be very different from the two. Just as the above case, GGX's specular highlight spreads out more due to the longer tail, thus appears to be brighter in areas around the reflection of the direct light.
To see why this is the case, I have generated a logarithmic graph of GGX's NDF and Beckmann's NDF given their roughness (0.2) with varying angle of surface normal and microfacet normal. You can see that the teal curve (GGX) has a higher NDF value once the angle between surface normal and microfacet normal is greater than 37.5 degrees and never really gets down to 0, unlike the Beckmann's NDF, which goes to 0 before reaching 45 degrees.
For the sake of comparison at a different roughness level, here's the same graph but with roughness = 0.5. The main difference here is that both BRDFs now have a less bright but a wider specular highlight lobe, but this does not change the fact that the GGX's specular tail is longer than the Beckmann, as its NDF never goes to 0 in the hemisphere, while Beckmann's specular tail quickly goes to 0 after 45 degrees.
So that was a simple explanation of the difference in the microfacet BRDF models, hopefully I have explained it clear enough. I would point those who are interested in a more detailed explanation to the original paper of GGX by Walter et al: https://www.cs.cornell.edu/~srm/publications/EGSR07-btdf.pdf.
Thanks,
Wallace