Rendering (彩現 渲染) Content • Light-Material Interaction • Phong Reflection model • Gouraud vs. Phone Shading Fall 2013 2 Rendering • The computation required to convert 3D scene to 2D display photo-realistically Fall 2013 3 Shading • the gradation (of color) that give the 2D images the appearance of being 3D Fall 2013 4 Light-Material Interaction specular diffuse Fall 2013 translucent 5 Light • point, spot, directional lights • ambient light: to account for uniform level room lighting • describe a light source through a threecomponent (RGB) intensity Fall 2013 6 Phong Reflection Model • Diffuse (漫射) • Specular Fall 2013 • Ambient 7 Those Were the Days… “In trying to improve the quality of the synthetic images, we do not expect to be able to display the object exactly as it would appear in reality, with texture, overcast shadows, etc. We hope only to display an image that approximates the real object closely enough to provide a certain degree of realism.” – Bui Tuong Phong, 1975 Fall 2013 8 Lambert’s Cosine Law • The reflected luminous intensity in any direction from a perfectly diffusing surface varies as the cosine of the angle between the direction of incident light and the normal vector of the surface. • Intuitively: cross-sectional area of the “beam” intersecting an element of surface area is smaller for greater angles with the normal. Fall 2013 9 Lambert’s Cosine Law • Ideally diffuse surfaces obey cosine law. – Often called Lambertian surfaces. • Id = kd Iincident cos = kd Iincident (N·L). – kd is the diffuse reflectance of the material. Fall 2013 N L 10 Phong Lighting Model • Phong adds specular highlights. • His original formula for the specular term: – W(i)[cos s ]n • s is the angle between the view and specular reflection directions. • “W(i) is a function which gives the ratio of the specular reflected light and the incident light as a function of the the incident angle i.” – Ranges from 10 to 80 percent. • “n is a power which models the specular reflected light for each material.” – Ranges from 1 to 10. Fall 2013 11 Phong Lighting Model • More recent formulations are slightly different. – Replace W(i) with a constant ks independent of the incident direction. • What do we lose when we do this? – Is= ks Iincident cosn = ks Iincident (V·R)n R = 2(N·L)N – L Fall 2013 12 Ambient Reflection • Local illumination models account for light scattered from the light source only • Light may be scattered from all surfaces in the scene. We are missing a lot of light, typically over 50% • Ambient term = a coarse approximation to this missing flux • This is a constant everywhere in the scene Fall 2013 13 Diffuse Reflection Johann Heinrich Lambert (1728 – 1777) was a Swiss mathematician, physicist and astronomer. • Lambertian scatters (wikipedia): the irradiance landing on the area element is proportional to the cosine of the angle between the illuminating surface and the normal. • When a Lambertian surface is viewed from any angle, it has the same radiance. Fall 2013 14 Specular Reflection a Effect of Shininess Coefficient a. v Fall 2013 15 Phong Reflection Model • L: light source property (RGB) • R: material property (RGB) • ambient reflection • diffuse reflection To consider distance attenuation • specular reflection a: shininess coefficient • final result Fall 2013 16 Phong Model (cont) • For multiple light sources: Fall 2013 17 Blinn-Phong Model • Popular variation of Phong model. • Uses the halfway vector, H. • Is = ks Iincident (N·H)n. – H = (L+V) / | L+V | L N H V • What are the advantages? Fall 2013 18 Blinn-Phong Model • Popular variation of Phong model. • Uses the half vector, H. • Is = ks Iincident (N·H)n. – H = (L+V) / | L+V | L Jim Blinn (1949 - now) N H V • Faster to compute than reflection vector. • Still view-dependent since H depends on V. Fall 2013 19 Blinn-Phong Model I s ks Ls r v a n r l n l n An alternate formulation employs the half vector H h h v l , hˆ h l n l n r n l n l n l n 2n l n l I s k s Ls n h a Time-Consuming! Fall 2013 20 20 Blinn-Phong Highlights • Does using N.H vs. R.V affect highlights? – Yes, the highlights “spread” (Wikipedia) – Why? • Is this bad? Fall 2013 21 Blinn-Phong Highlights • Does using N.H vs. R.V affect highlights? – Yes, the highlights “spread”. – Why? • Is this bad? – Not really, for two reasons. • Can always adjust the exponent. • Phong and Blinn-Phong are not physically based, so it doesn’t really matter! Fall 2013 22 Target of Shading: Polygon, Vertex or Fragments Recall the rendering (OpenGL) pipeline Fall 2013 23 Shading Modes • Flat vs. Smooth – Flat: single color per face – Gouraud (intensity interpolation) – Phong (normal interpolation) • Local vs. Global Fall 2013 24 Gouraud vs. Phong • Most h/w implement Gouraud shading • Phong shading can better imitate specular effects (∵normals are interpolated) Fall 2013 25 Fall 2013 26 Compare: Flat, Gouraud, Phong Fall 2013 27 Rendering Pipeline Tutorial No longer on line [local copy] Rendering Pipeline (Foley and van Dam) Fall 2013 29