“Fast Phong shading” by Bishop and Weimer

  • ©Gary Bishop and David M. Weimer




    Fast Phong shading



    Computer image generation systems often represent curved surfaces as a mesh of planar polygons that are shaded to restore a smooth appearance. Phong shading is a well known algorithm for producing a realistic shading but it has not been used by real-time systems because of the 3 additions, 1 division, and 1 square-root required per pixel for its evaluation. We describe a new formulation for Phong shading that reduces the amount of computation per pixel to only 2 additions for simple Lambertian reflection and 5 additions and 1 memory reference for Phong’s complete reflection model. We also show how to extend our method to compute the specular component with the eye at a finite distance from the scene rather than at infinity as is usually assumed. The method can be implemented in hardware for real-time applications or in software to speed image generation for almost any system.


    1. Duff, T. 1979. “Smoothly Shaded Renderings of Polyhedral Objects on Raster Displays,” ACM Computer Graphics, vol. 13, no. 2, pp. 270-275. 
    2. Foley, J. D. and A. Van Darn. 1983. Fundamentals of Interactive Computer Graphics, Addison Wesley, Reading, MA. 
    3. Gouraud, H. June 1971. “Continuous Shading of Curved Surfaces,” IEEE Transactions on Computers, vol. 20, no. 6, pp. 623-628.
    4. Newman, W. N. and R. F. Sproull. 1979. Principles of Interactive Computer Graphics, McGraw-Hill, New York, NY. 
    5. Phong, B. T. July 1973. Illumination for Computer- Generated Images, Ph.D. Dissertation, Department of Computer Science, University of Utah, Salt Lake City. Gov. ordering no. AD-A008 786. 
    6. Whitted, T. and D. Weimer. 1982. “A Software Testbed for the Development of 3D Raster Graphics Systems,~’ ACM Transactions on Graphics, vol. 1, no. 1, pp. 43-58. 

ACM Digital Library Publication:

Overview Page: