Specular BRDF (Bidirectional Reflectance Distribution Function)

This tutorial explores various Specular settings found within the Standard shader.

BRDF

A bidirectional reflectance distribution function (BRDF) describes the reflectance properties of a surface by specifying the amount of radiance incident from one direction that is reflected into another direction, with respect to the surface normal. 

The main characteristics of a physically plausible BRDF are the symmetry between incident and reflected directions (Helmholtz reciprocity) and that the total reflected power for a given direction of incident radiation is less than or equal to the energy of the incident light (Energy conservation).

A Specular BRDF model is view dependant and can take into account anisotropy and Fresnel effects at grazing angles. Arnold uses a Cook-Torrance BRDF.

 

The light ray that hits a surface is called the Incident Ray and the angle that at which it hits is called the Angle of Incidence (as shown in the figure below). Light energy reflected back must be less than or equal to light incoming to a surface (we cannot “add” light). On the surface, the ray is either reflected or refracted and it can eventually be absorbed by either medium. 

Angle of incidence, incident and reflected rays

Reflectance at Normal

The Fresnel effect is named after the French physicist Augustin-Jean Fresnel who first described it. This effect states that the strength of reflections on a surface is dependent on the viewing angle. The amount of reflection increases on surfaces viewed at a glancing angle.

When 'Enable Fresnel' check is enabled in the standard shader, the reflectance of the object will be view dependent and vary obeying Fresnel equations. The standard shader uses Schlick's approximation of the fresnel equations and can be controled either with a 'Reflectance at Normal" control or by using the IOR of the material. At low values, around 0.05, the material behaves as a perfect dielectric, like plastic. At 1, the material is a near-perfect conductor, or metallic surface.

Fresnel is present in all materials in some form, being the most common examples glass and water. The example below shows the effect of fresnel on a wooden table. Notice how the reflection on the table appears more reflective as the camera's viewing angle becomes shallower.

Variation of a Specular BRDF with respect to the view direction (rollover to view animation)

In the example below the cube has a Standard shader assigned to it. Fresnel is enabled and 'Reflectance at Normal' is set to 0. The Fresnel effect is clearly visible. The specular glossy reflection appears brighter when the camera's viewing angle becomes shallower.

Rollover to view animation

Micro-Facet Surfaces

Cook-Torrance is a micro-facet BRDF based on Micro-facet Models (See for instance "Microfacet Models for Refraction through Rough Surfaces" by Walter, Marschner, Li and Torrance, Eurographics 2007).

These models consider that surfaces that are not perfectly smooth and are composed of many very tiny facets, each of which is a perfect specular reflector.

These microfacets have normals that are distributed about the normal of the approximating smooth surface. The degree to which microfacet normals differ from the smooth surface normal is determined by the roughness of the surface.

The animations below show how surface roughness can affect specular reflections.

Rollover to view animation

 

In the examples below, you can see that the specular reflection appears stretched when the surface becomes 'bumpy' or 'rougher'.

Rollover to view animation

Anisotropy and Roughness

An example of an anisotropic material would be asphalt concrete. This effect is evident on the surface of a wet road. Notice that the wet surface appears diffusely darker and specularly brighter. When you are far from the surface, the stretched anisotropic reflection is more obvious on the ground. However, when you get closer, the stretched reflection becomes smaller due to the change in viewing angle. The anisotropic highlight size depends on the viewing angle.

Dry diffuse road surface vs wet anisotropic road surface

The example animations below show the effect of specular roughness when using anisotropy (0, 0.5, 1). The roughness values have been animated from 0 to 1 in order to demonstrate the effect.

Anisotropy values left to right: 0, 0.5, 1 (rollover to view animations).

Anisotropy Example

The images below show the difference between rendering with and without anisotropy on a floor surface. Both shaders have Roughness set to 0.2.

  • No labels