File:Gouraud shading.png

Gouraud shading 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. The technique was first presented by Henri Gouraud in 1971.

The basic principle behind the method is to calculate the surface normals at the vertices of polygons in a 3D computer model. These normals are then averaged for all the polygons that meet at each point. Lighting computations are then performed to produce colour intensities at vertices. The lighting calculation used by Gouraud was based on the Lambertian diffuse lighting model.

These colour values are then interpolated along the edges of the polygons. To complete the shading, the image is filled by lines drawn across the image that interpolate between the previously calculated edge intensities.

Gouraud shading is much less processor intensive than Phong shading, but does not calculate all desirable lighting effects as accurately. For instance, the white shiny spot on the surface of an apple (called a specular highlight) is highly dependent on the normal within that spot. If a model's vertices are not within that spot, their colors are blended across it, making it disappear altogether. This problem is made more obvious when the light source is relocated, moving the highlight across a vertex. Using Gouraud shading, the specular highlight will appear mysteriously and grow in intensity as the light moves toward a position of reflexion from the observer across the vertex. The desired result would be to see the highlight move smoothly rather than fade out and in between vertices.

Despite the drawbacks, Gouraud shading is much superior to flat shading which requires significantly less processing than Gouraud, but gives low-polygon models a sharp, faceted look.

Original publicationsEdit

Community content is available under CC-BY-SA unless otherwise noted.