Schlick's approximation

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In 3D computer graphics, Schlick's approximation, named after Christophe Schlick, is a formula for approximating the contribution of the Fresnel factor in the specular reflection of light from a non-conducting interface (surface) between two media.[1]

According to Schlick's model, the specular reflection coefficient R can be approximated by:

R(\theta) = R_0 + (1 - R_0)(1 - \cos \theta)^5
R_0 = \left(\frac{n_1-n_2}{n_1+n_2}\right)^2

where \theta is the angle between the direction from which the incident light is coming and the normal of the interface between the two media, hence \cos\theta=(N\cdot V). And n_1,\,n_2 are the indices of refraction of the two media at the interface and R_0 is the reflection coefficient for light incoming parallel to the normal (i.e., the value of the Fresnel term when \theta = 0 or minimal reflection). In computer graphics, one of the interfaces is usually air, meaning that n_1 very well can be approximated as 1.

In microfacet models it is assumed that there is always a perfect reflection, but the normal changes according to a certain distribution, resulting in a non-perfect overall reflection. When using Schlicks's approximation, the normal in the above computation is replaced by the halfway vector. Either the viewing or light direction can be used as the second vector.[2]

See also[edit]


  1. ^ Schlick, C. (1994). "An Inexpensive BRDF Model for Physically-based Rendering" (PDF). Computer Graphics Forum 13 (3): 233. doi:10.1111/1467-8659.1330233. 
  2. ^ Hoffman, Naty (2013). "Background: Physics and Math of Shading." (PDF). Fourth International Conference and Exhibition on Computer Graphics and Interactive Techniques.