Shading by Spherical Linear Interpolation using De Moivre’s Formula

Anders Hast
University of Gavle
Creative Media Lab.
S-801 76; Gavle



Keywords: Shading, Normalization, Slerp, De Moivres formula.


In the classical shading algorithm according to Phong, the normal is interpolated across the scanline, requiring a computationally expensive normalization in the inner loop. In the simplified and faster method by Gouraud, the intensity is interpolated instead, leading to faster but less accurate shading. In this paper we use a third way of doing the interpolation, namely spherical linear interpolation of the normals across the scanline. This has been explored before, however, the shading computation requires the evaluation of a cosine in the inner loop and this is too expensive to be efficient. By reformulating the original approach in a suitable way, De Moivre’s formula can be used directly for computing the intensity so that no normalization is needed. Hence, no trigonometric functions, divisions or square roots are necessary to compute in the inner loop. Unfortunately the setup for each scanline will be rather slow unless some efficient reformulation of the necessary trigonometric calculations can be found. We suggest this problem for future research.