[comp.graphics] Oh, yeah? well Phong this!

mm459504@longs.LANCE.ColoState.Edu (Michael Miller) (07/09/90)

I have heard of several techniques used in 3d modelling, two of which are
Phong a Gouraud shading, but I haven't seen anything that lists their specifics
(i.e. what they do) if anyone can point me in the correct general direction, I 
would be verry much appreciative. <no flaiming, I understand general 3d princi-
ples, I'm just trying to understand some specifics. anyone kind enough to send 
a reply will receive gratuitous Kudos an a pat on the back for a job well
done.>

| ...Now buttle off and tell Baron Brunwald that Lord Clarence MacDonald and |
| His lovely assistant are here to view the tapestries!...		     |
|-------------mm459504@longs.lance.colostate.edu-----------------------------|

jcs@crash.cts.com (John Schultz) (07/10/90)

  Gouraud Shading: For each vertex of the polygon, average all of the
polygon's normal vectors that share the vertex. Now each vertex of the 
model has the average of the normal vectors at each vertex. To scan convert
a polygon, compute the intensity at each vertex using the dot product
(cosine method) of the vector and a normalized vector from the light
source. Linearly interpolate between vertices, horizontally and vertically,
then average those two. The end result is the intensity for a pixel.

  Phong Shading: Works as above, except *normal* vectors are interpolated
between vertices (not shade intensities). This is much more expensive
computationally, but produces better looking results.

  Silicon Graphics workstations have Gouraud shading built into the 
hardware. For real time graphics, Gouraud is most appropriate, where
Phong is better for static images (if you have time to wait for rendering).

  This was a readers digest condensed description.

  For more information see "Principles of Interactive Computer Graphics" by
Newman and Sproull, McGraw Hill.


  John

xanthian@zorch.SF-Bay.ORG (Kent Paul Dolan) (07/13/90)

In article <7834@ccncsu.ColoState.EDU> mm459504@longs.LANCE.ColoState.Edu (Michael Miller) writes:
>
>I have heard of several techniques used in 3d modelling, two of which are
>Phong a Gouraud shading, but I haven't seen anything that lists their specifics
>(i.e. what they do) if anyone can point me in the correct general direction, I 
>would be very much appreciative.

A very nice book for finding out what computer graphics
concepts mean, without drowning in the math, but _with_
the vector diagrams, is Andrew Glassner's 3D Computer
Graphics, A User's Guide for Artists and Designers,
ISBN 0-8306-1003-0.

On pages 79 to 83, he distinguishes three shading
techniques for an object comprised of a polygonal
tiling.

Lambert (Faceted) Shading:  find the appropriate shade for
the surface normal for each polygon, and assign that shade
to each pixel of the entire polygon.  This give a faceted
appearance.

Gouraud (Smooth) Shading:  for each vertex of the polygon,
average the surface normals for all the polygons meeting at
that vertex, and assign the shade appropriate to that
averaged normal to the vertex.  Then shade the polygon by
blending the _colors_ from vertex to vertex at each pixel
of the polygon.  This provides a smooth appearance, but
suffers from "Mach banding" artifacts and unrealistic
looking highlights sometimes.

Phong (Normal Interpolating) Shading:  using the same
averaged normals for each vertex used by the Gouraud
Shading, blend the _normals_ from vertex to vertex, and
compute the appropriate shade for each pixel based on the
normal computed for that pixel.  This gives better
highlights and avoids Mach bands, but is much slower to
compute.

Now, can somebody describe the improvement that "Blinn
Shading" added to Phong's work, in equally simple language?

Thanks.


Kent, the man from xanth.
<xanthian@Zorch.SF-Bay.ORG> <xanthian@well.sf.ca.us>
--
... and don't worry about your deposits; they're insured to the HILT
by Republic Savings and Loan of Lubbock, Texas -- Garrison Keillor,
American Radio Company of the Air, Season Finale, "Prairie Home Companion
Fourth Annual Revival", 16 June 1990.

rick@hanauma.stanford.edu (Richard Ottolini) (07/15/90)

Van Damn's revised book (1990; appeared last week in Stanford Book Store)
has a good, illustrated description of the various rendering methods.