3D graphics eBook - Course Materials Repository
3D graphics eBook - Course Materials Repository 3D graphics eBook - Course Materials Repository
Phong shading 105 Phong shading Phong shading refers to an interpolation technique for surface shading in 3D computer graphics. It is also called Phong interpolation [1] or normal-vector interpolation shading. [2] Specifically, it interpolates surface normals across rasterized polygons and computes pixel colors based on the interpolated normals and a reflection model. Phong shading may also refer to the specific combination of Phong interpolation and the Phong reflection model. History Phong shading and the Phong reflection model were developed by Bui Tuong Phong at the University of Utah, who published them in his 1973 Ph.D. dissertation. [3] [4] Phong's methods were considered radical at the time of their introduction, but have evolved into a baseline shading method for many rendering applications. Phong's methods have proven popular due to their generally efficient use of computation time per rendered pixel. Phong interpolation Phong shading improves upon Gouraud shading and provides a better approximation of the shading of a smooth surface. Phong shading assumes a smoothly varying surface normal vector. The Phong interpolation method works better than Gouraud shading when applied to a reflection model that has small specular highlights such as the Phong reflection model. Phong shading interpolation example The most serious problem with Gouraud shading occurs when specular highlights are found in the middle of a large polygon. Since these specular highlights are absent from the polygon's vertices and Gouraud shading interpolates based on the vertex colors, the specular highlight will be missing from the polygon's interior. This problem is fixed by Phong shading. Unlike Gouraud shading, which interpolates colors across polygons, in Phong shading a normal vector is linearly interpolated across the surface of the polygon from the polygon's vertex normals. The surface normal is interpolated and normalized at each pixel and then used in a reflection model, e.g. the Phong reflection model, to obtain the final pixel color. Phong shading is more computationally expensive than Gouraud shading since the reflection model must be computed at each pixel instead of at each vertex. In modern graphics hardware, variants of this algorithm are implemented using pixel or fragment shaders. Phong reflection model Phong shading may also refer to the specific combination of Phong interpolation and the Phong reflection model, which is an empirical model of local illumination. It describes the way a surface reflects light as a combination of the diffuse reflection of rough surfaces with the specular reflection of shiny surfaces. It is based on Bui Tuong Phong's informal observation that shiny surfaces have small intense specular highlights, while dull surfaces have large highlights that fall off more gradually. The reflection model also includes an ambient term to account for the small amount of light that is scattered about the entire scene.
Phong shading 106 Visual illustration of the Phong equation: here the light is white, the ambient and diffuse colors are both blue, and the specular color is white, reflecting a small part of the light hitting the surface, but only in very narrow highlights. The intensity of the diffuse component varies with the References direction of the surface, and the ambient component is uniform (independent of direction). [1] Watt, Alan H.; Watt, Mark (1992). Advanced Animation and Rendering Techniques: Theory and Practice. Addison-Wesley Professional. pp. 21–26. ISBN 978-0201544121. [2] Foley, James D.; van Dam, Andries; Feiner, Steven K.; Hughes, John F. (1996). Computer Graphics: Principles and Practice. (2nd ed. in C). Addison-Wesley Publishing Company. pp. 738 and 739. ISBN 0-201-84840-6. [3] B. T. Phong, Illumination for computer generated pictures, Communications of ACM 18 (1975), no. 6, 311–317. [4] University of Utah School of Computing, http:/ / www. cs. utah. edu/ school/ history/ #phong-ref Photon mapping In computer graphics, photon mapping is a two-pass global illumination algorithm developed by Henrik Wann Jensen that solves the rendering equation. Rays from the light source and rays from the camera are traced independently until some termination criterion is met, then they are connected in a second step to produce a radiance value. It is used to realistically simulate the interaction of light with different objects. Specifically, it is capable of simulating the refraction of light through a transparent substance such as glass or water, diffuse interreflection between illuminated objects, the subsurface scattering of light in translucent materials, and some of the effects caused by particulate matter such as smoke or water vapor. It can also be extended to more accurate simulations of light such as spectral rendering. Unlike path tracing, bidirectional path tracing and Metropolis light transport, photon mapping is a "biased" rendering algorithm, which means that averaging many renders using this method does not converge to a correct solution to the rendering equation. However, since it is a consistent method, a correct solution can be achieved by increasing the number of photons.
- Page 59 and 60: Graphics pipeline 54 References 1.
- Page 61 and 62: Hidden surface determination 56 imp
- Page 63 and 64: High dynamic range rendering 58 Hig
- Page 65 and 66: High dynamic range rendering 60 Ton
- Page 67 and 68: High dynamic range rendering 62 Fro
- Page 69 and 70: High dynamic range rendering 64 •
- Page 71 and 72: Irregular Z-buffer 66 Applications
- Page 73 and 74: Lambert's cosine law 68 than would
- Page 75 and 76: Lambertian reflectance 70 Lambertia
- Page 77 and 78: Level of detail 72 Well known appro
- Page 79 and 80: Level of detail 74 Hierarchical LOD
- Page 81 and 82: Newell's algorithm 76 Newell's algo
- Page 83 and 84: Non-uniform rational B-spline 78 Us
- Page 85 and 86: Non-uniform rational B-spline 80 of
- Page 87 and 88: Non-uniform rational B-spline 82 ar
- Page 89 and 90: Non-uniform rational B-spline 84 Ex
- Page 91 and 92: Normal mapping 86 How it works To c
- Page 93 and 94: OrenNayar reflectance model 88 Oren
- Page 95 and 96: OrenNayar reflectance model 90 , ,
- Page 97 and 98: Painter's algorithm 92 The algorith
- Page 99 and 100: Parallax mapping 94 • Parallax Ma
- Page 101 and 102: Particle system 96 A cube emitting
- Page 103 and 104: Path tracing 98 History Further inf
- Page 105 and 106: Path tracing 100 Scattering distrib
- Page 107 and 108: Phong reflection model 102 Visual i
- Page 109: Phong reflection model 104 Because
- Page 113 and 114: Photon mapping 108 Rendering (2nd p
- Page 115 and 116: Photon tracing 110 Advantages and d
- Page 117 and 118: Potentially visible set 112 • Can
- Page 119 and 120: Potentially visible set 114 Externa
- Page 121 and 122: Procedural generation 116 increases
- Page 123 and 124: Procedural generation 118 • Softi
- Page 125 and 126: Procedural generation 120 Reference
- Page 127 and 128: Procedural texture 122 Self-organiz
- Page 129 and 130: Procedural texture 124 References [
- Page 131 and 132: 3D projection 126 The distance of t
- Page 133 and 134: Quaternions and spatial rotation 12
- Page 135 and 136: Quaternions and spatial rotation 13
- Page 137 and 138: Quaternions and spatial rotation 13
- Page 139 and 140: Quaternions and spatial rotation 13
- Page 141 and 142: Quaternions and spatial rotation 13
- Page 143 and 144: Quaternions and spatial rotation 13
- Page 145 and 146: Radiosity 140 Overview of the radio
- Page 147 and 148: Radiosity 142 This is sometimes kno
- Page 149 and 150: Radiosity 144 References [1] " Mode
- Page 151 and 152: Ray casting 146 the light will reac
- Page 153 and 154: Ray tracing 148 Typically, each ray
- Page 155 and 156: Ray tracing 150 independence of eac
- Page 157 and 158: Ray tracing 152 On June 12, 2008 In
- Page 159 and 160: Reflection 154 Reflection Reflectio
Phong shading 105<br />
Phong shading<br />
Phong shading refers to an interpolation technique for surface shading in <strong>3D</strong> computer <strong>graphics</strong>. It is also called<br />
Phong interpolation [1] or normal-vector interpolation shading. [2] Specifically, it interpolates surface normals across<br />
rasterized polygons and computes pixel colors based on the interpolated normals and a reflection model. Phong<br />
shading may also refer to the specific combination of Phong interpolation and the Phong reflection model.<br />
History<br />
Phong shading and the Phong reflection model were developed by Bui Tuong Phong at the University of Utah, who<br />
published them in his 1973 Ph.D. dissertation. [3] [4] Phong's methods were considered radical at the time of their<br />
introduction, but have evolved into a baseline shading method for many rendering applications. Phong's methods<br />
have proven popular due to their generally efficient use of computation time per rendered pixel.<br />
Phong interpolation<br />
Phong shading improves upon<br />
Gouraud shading and provides a better<br />
approximation of the shading of a<br />
smooth surface. Phong shading<br />
assumes a smoothly varying surface<br />
normal vector. The Phong interpolation<br />
method works better than Gouraud<br />
shading when applied to a reflection<br />
model that has small specular<br />
highlights such as the Phong reflection<br />
model.<br />
Phong shading interpolation example<br />
The most serious problem with Gouraud shading occurs when specular highlights are found in the middle of a large<br />
polygon. Since these specular highlights are absent from the polygon's vertices and Gouraud shading interpolates<br />
based on the vertex colors, the specular highlight will be missing from the polygon's interior. This problem is fixed<br />
by Phong shading.<br />
Unlike Gouraud shading, which interpolates colors across polygons, in Phong shading a normal vector is linearly<br />
interpolated across the surface of the polygon from the polygon's vertex normals. The surface normal is interpolated<br />
and normalized at each pixel and then used in a reflection model, e.g. the Phong reflection model, to obtain the final<br />
pixel color. Phong shading is more computationally expensive than Gouraud shading since the reflection model must<br />
be computed at each pixel instead of at each vertex.<br />
In modern <strong>graphics</strong> hardware, variants of this algorithm are implemented using pixel or fragment shaders.<br />
Phong reflection model<br />
Phong shading may also refer to the specific combination of Phong interpolation and the Phong reflection model,<br />
which is an empirical model of local illumination. It describes the way a surface reflects light as a combination of the<br />
diffuse reflection of rough surfaces with the specular reflection of shiny surfaces. It is based on Bui Tuong Phong's<br />
informal observation that shiny surfaces have small intense specular highlights, while dull surfaces have large<br />
highlights that fall off more gradually. The reflection model also includes an ambient term to account for the small<br />
amount of light that is scattered about the entire scene.