Comparing the Cook-Torrance BRDF Model with Diffuse Reflection Simulation
As Wolfgang Pauli said, “God made the bulk; the surface was invented by the devil.” This Demonstration illustrates the diabolical characteristics of surfaces in the case of reflection. In this specific case, we show how reflection is affected by surface roughness. The latter is described by means of the root mean square (RMS) average of profile height deviations from the mean, recorded within the evaluation length. On smooth surfaces, light is reflected according to Snell's law, in terms of the angle between the incident ray and the surface normal. This law also applies in the case of rough surfaces; however, the inclination of each facet now needs to be accounted for. This gives rise to complications, such as interferences, multiple reflections, etc. We have analyzed only the diffuse reflection, which applies when the wavelength is much greater than RMS (Rayleigh criterion ). The incident angle has been set to 45 degrees.[more]
We consider the Cook–Torrance bidirectional reflectance distribution function (BRDF), which is a physically based model of a reflecting surface. It assumes that a surface is a collection of planar microscopic facets—microfacets—with each microfacet acting as a perfectly smooth reflector. Accordingly,
which describes the distribution of microfacet orientations, with RMS as the root-mean-square slope of the microfacets; is the angle between the normal surface vector and the halfway angle vector (vector sum of the incident vector and the radiant vector at angle ); is the geometric attenuation factor that accounts for microfacet shadowing. The factor is in the range of 0 (total shadowing) to 1 (no shadowing). In this case, we have not considered either multiple reflection phenomena or shadowing, and it is determined as equal to 1. is a Fresnel reflection term related to the material’s index of refraction. Here again, it is determined to be equal to 1, consistent with the assumption that the surface is totally reflective .
The "Model" window shows the behavior of reflected rays when varying the surface roughness. The surface roughness has been modeled by randomly picking points from a normal distribution having a zero mean and a standard deviation equal to the RMS control. The "number of points" slider helps to get the microfacets closer or farther by increasing or decreasing the number of points considered on the axis. It is possible to increase the number of incident rays with the "beam diameter" slider, as well as to thicken them with the "beam intensity" slider.
The "Distributions" window shows the comparison of the theoretical Cook–Torrance distribution (colored orange) with the experimental one obtained using the "Model" window model (colored blue).[less]
Snapshot 1: in the case of low RMS values, good agreement between the theoretical and experimental models is observed
Snapshot 2: in the case of higher RMS values, we begin to detect discrepancy between the theoretical and experimental models
Snapshot 3: a reflection simulation (Snell's law) on a rough surface
 I. Hajnsek and K. Papathanassiou. "Rough Surface Scattering Models." earth.esa.int/documents/653194/656796/Rough_Surface_Scattering _Models.pdf.
 R. L. Cook and K. E. Torrance, "A Reflectance Model for Computer Graphics," ACM Transactions on Graphics, 1(1), 1982 pp. 7–24. doi:10.1145/357290.357293.