Gouraud shading
From Wikipedia, the free encyclopedia

Gouraud shading, named after Henri Gouraud, is a method used in computer graphics to simulate the differing effects of light and colour across the surface of an object. In practice, Gouraud shading is used to achieve smooth lighting on low-polygon surfaces without the heavy computational requirements of calculating lighting for each pixel. Gouraud first published the technique in 1971.
The basic principle behind the method is as follows: An estimate to the surface normal of each vertex in a 3D model is found by averaging the surface normals of polygons which meet at each vertex. Using these estimates lighting computations based on the Phong reflection model are then performed to produce colour intensities at the vertices. Screen pixel intensities can then be bilinearly interpolated from the colour values calculated at the vertices.
Gouraud shading's strengths and weaknesses lie in its interpolating. Interpolating colour values for most pixels between just a few values taken from expensive lighting calculations is much less processor intensive than performing the expensive lighting calculations for each pixel, as is done in Phong shading (not to be confused with the Phong lighting model, which is used in both the Gouraud and Phong shading models). However, highly localised lighting effects (such as specular highlights eg. the glint of reflected light on the surface of an apple) will not be rendered correctly; If a highlight lies in the middle of a polygon, but does not spread to the polygon's vertex, it will not be apparent in a Gouraud rendering; If a highlight occurs at the vertex of a polygon, it will be rendered correctly at this vertex (as this is where the lighting model is applied), but will be spread unnaturally across all neighbouring polygons via the interpolation method. The problem is easily spotted in a rendering which should have a specular highlight moving across the surface of a model. With Gouraud shading, there is instead see a large highlight continuously fade in and out across neighbouring portions of the model, peaking in intensity when the intended specular highlight would be passing a vertex of the model.
Despite the drawbacks, Gouraud shading is greatly superior to flat shading which requires significantly less processing than Gouraud, but gives low-polygon models a sharp, faceted look.
[edit] Original publications
- H. Gouraud, "Continuous shading of curved surfaces," IEEE Transactions on Computers, 20(6):623–628, 1971.
- H. Gouraud, Computer Display of Curved Surfaces, Doctoral Thesis, University of Utah, USA, 1971.
- H. Gouraud, Continuous shading of curved surfaces. In Rosalee Wolfe (editor), Seminal Graphics: Pioneering efforts that shaped the field, ACM Press, 1998. ISBN 1-58113-052-X.