Create Presentation
Download Presentation

Download Presentation

Illumination Model & Surface-rendering Method

Download Presentation
## Illumination Model & Surface-rendering Method

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -

**Illumination Model & Surface-rendering Method**2001.07.25 박 경 와**Contents**• ILLUMINATION MODELS • Ambient light, Diffuse reflection, Specular reflection • Illumination in the Phong model • POLYGON-RENDERING METHODS • Flat shading • Gouraud shading • Phong shading • Comparision each methods • Ray Tracing • Basic Algorithm • Methods for getting better quality**Ambient Light**• Color does not depend on the position, only on the object I=IaKa ( Ia : ambient light intensity, Ka: ambient reflection coefficient) • Very Crude Model • Object shape is in invisible • But user nevertheless to hide other models artifacts**Ambient Light**• Example Increasing Ka**Diffuse Reflection**• Light from the light source is sent in every direction • Object aspect independent from viewer position • Only depends on relative position of light source I = Ip Kd cos Ø (Ip : point light source intensity Kd : Diffuse reflection coeffcient)**Diffuse Reflection**• Example Increasing Kd ( Ka=0)**Diffuse + Ambient**Increasing ka Increasing Kd**Specular Reflection**• Light reaching the object is reflected in the direction having the same angle • With point light source, effect is visible only at the one point on the surface • Useful for indirect illumination (reflection and shadows)**Specular Reflection**• In the Phong model • Imperfect specular reflector • I = IpKs(cosα)nα : angle between reflection and view point Figure. Left and right Imperfect Specular reflector**Phong Model**• Treats point light sources only • Models three types of reflected light • Ambient + diffuse + imperfect specular reflector • I = IaKa + Ip {Kdcosθ + Ks(cosα)n} • No physical meaning model**Phong Model**Ks Increasing n**N2**N3 N1 V N4 Constant-Intensity Shading • Flat Shading • A fast and simple method • Assign all pixels inside each polygon same color Figure. The normal vector at vertex V calculated as the average of the surface normals for each polygon sharing that vertex**Constant-Intensity Shading**Example 1) Image with flat shading**RGB 1**Scan line J K Interpolated colors RGB 3 RGB 2 Gouraud Shading • Take the colors at the vertices • Interpolate these colors across the edges and across the scan lines • Typically linear interpolation**Gouraud Shading**Example 2) Image with Gouraud shading and specular highlights.**normal 1**Interpolated nomals Scan line J K normal 3 normal 2 Phong Shading • Take the normals at the vertices • Interpolate these normals across the edges and Across the scan lines**Phong Shading**Example 3) Image with Phong shading and specular highlights.**Comparision**• Flat shading • The simplest shading method • Difference of two shading models • Phong shading is more accurate way of shading a polygon since the illumination model is applied to every point • More computationally intensive than the Gouraud • Illumination model is applied more often • Interpolated normals need to be normalized**Comparision**a) Flat shading b) Gouraud shading c) Phong shading**Ray Tracing**• One of the shading method • To create several kinds of effects • Very difficult or even impossible to do with other methods • Include three items • Reflection • Transparency • Shadow**Basic Ray-Tracing Algorithm**• For each pixel ray • Test each surface if it is intersected • Intersected • Calculated the distance from the pixel to the surface intersection point • The smallest value is visible surface for that pixel • Reflection ray • Secondary ray • Along specular path • Transparent • Send a ray through the surface in the refraction direction Figure. Ray Tracing**Basic Ray-Tracing Algorithm**• Each secondary ray (reflection or refraction ray) • Repeated the same procedure • Objects are tested for intersection • The nearest surface along secondary ray path is used to recursively production the next generation of reflection and refraction path • Ray tracing tree • Each successively intersected surface is added to a binary ray- tracing tree Figure. Ray Tracing**Ray-Tracing Tree**• Left branch Reflection • Right branch Transmission • Terminated • Reach the preset maximum • Strike a light source • Pixel intensity • Sum of intensities at root node • Start at terminal node • Background intensity • If tree is empty Figure. Ray Trace and Ray-Tracing tree**Reducing Object-Intersection Calculation**• Ray surface intersection calculation • 95 percent of the processing time in a ray tracer • Spent most of processing time checking objects that are not visible along the ray path • Enclose groups of adjacent objects within a bounding volume • Check larger boundary volume and ,if necessary, smaller boundary volume; and so on.**Space-Subdivision Method**• The other way to reduce intersection calculation • Enclose a scene within a cube • Uniform subdivision – (a) • Subdivided the cube into eight equal-size octants at each step • Adaptive subdivision – (b) • Only subdivided cube containing objects Example - a Example - b**Anti-aliased Ray Tracing**• Two basic techniques • Supersampling • The pixel is treated as a finite square area instead of a single point • Adaptive sampling • Uses unevenly spaced rays in some reason of the pixel area • Ex. More rays can be used near object edges to obtains a better estimate of the pixel intensities**Intensity Function**• IE : Emitted Intensity • KA, KD, Ks : Ambient /Diffuse /Specular reflection coefficient • IAL : Ambient-light Intensity • N : Unit normal vector • Li : Unit direction vector to the I-th point light source from a position on the surface • Ii : the intensity of the I-th point light source • V : Unit viewing direction vector • R : Specular-reflection direction vector P14 P16