Gouraud Shading Method

In this method the polygon surface is shown by linear interpolating intensity values. Intensity values for each polygon are matched with values of adjacent polygons. By this intensity discontinuities are eliminated. Following calculations are done for displaying polygon surface:

1) Calculate average unit normal vector at each polygon vertex.
2) Determine vertex intensity by applying illumination method at each vertex.
3) Linearly interpolate the vertex intensities.

Normal Vector

Where, N1, N2 and N3 = Surface normals of polygon

V = Vertex of the polygon

Nv = Normal vector at vertex.

For any vertex V,

Normal vector for any vertex

Then, we find the vertex intensities:

Find vertex intensities

Vertex intensities

Where, 1,2,3 are the vertices of the polygon.

p and q are the intersection points of the scan line and the polygon.

Ip = Intensity at point a.

Iq = Intenisty at point q

A is an interior point in the polygon

IA = Intensity at point A

I = Intensity at (x,y)

Intensity for next scan line

Intensity along this edge for next scan line y -1:

Intensity along this edge for next scan line y -1

Intensities at successful horizontal pixels positions along each scan line:


1) This method can be combined with a hidden surface algorithm to fill visible polygons along each scan line.

2) This method removes intensity discontinuities.


1) Sharp drop of intensity values can’t be displayed

2) Highlights on surface are sometimes shown with irregular shapes

3) Dark intensity streaks ( Mach bands) appear on the surface because of linear intensity interpolation.

Leave a Reply