Faster Phong Shading via Angular Interpolation
Abstract
One of the most successful algorithms that brought realism to the world of 3D image generation is Phong shading. It is an algorithm for smooth shading meshes of planar polygons used to represent curved surfaces. The level of realism and depth perception that can be obtained by Phong shading is attractive for 3D CAD applications and related areas. However, per pixel computation costs which were too high and/or artifacts, introduced by some of the more efficient evaluation methods and apparent only when displaying moving objects, are major factors mat blocked the common usage of Phong shading in highly interactive applications.In this paper we present angular interpolation for Phong shading planar polygons. Angular interpolation was a method especially designed to meet requirements as imposed by special purpose hardware we developed1, but turned out to be generally applicable. The angular interpolation method appears to be very efficient and reduces artifacts when displaying moving objects. Ideally a shading algorithm imposes no need for subdivision of patches as presented by the solid modelling system. Shading calculation via angular interpolation yields such an ideal algorithm. We will describe two alternative evaluation methods that trade off evaluation cost against level of accuracy. They both can handle light source and view point at arbitrary distances, but differ in level of accuracy. As a consequence these alternative evaluation methods do impose restrictions on the topology of patches and light sources. However, generally, the limitations imposed by these alternative shading methods are much more liberal than the limitations on patch size imposed by the geometry.The most economic evaluation method we present can incrementally compute the colour intensity along a scanline by two additions per pixel. The methods presented are generally applicable and can easily be implemented in hardware.
BibTeX
@article {10.1111:j.1467-8659.1989.tb00513.x,
journal = {Computer Graphics Forum},
title = {{Faster Phong Shading via Angular Interpolation}},
author = {Kuijk, AAM. and Blake, E.H.},
year = {1989},
publisher = {Blackwell Publishing Ltd and the Eurographics Association},
ISSN = {1467-8659},
DOI = {10.1111/j.1467-8659.1989.tb00513.x}
}
journal = {Computer Graphics Forum},
title = {{Faster Phong Shading via Angular Interpolation}},
author = {Kuijk, AAM. and Blake, E.H.},
year = {1989},
publisher = {Blackwell Publishing Ltd and the Eurographics Association},
ISSN = {1467-8659},
DOI = {10.1111/j.1467-8659.1989.tb00513.x}
}