DOC PREVIEW
UTK CS 594 - Ray Tracing

This preview shows page 1-2-3-18-19-37-38-39 out of 39 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 39 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Ray TracingSlide 2Ray-Tracing PseudocodePseudocode ExplainedReflected and Refracted RaysSlide 6The Phong Reflection ModelAbout Those Calls to ray_cast()...Pros and Cons of Ray TracingAn Aside on AntialiasingReflectionsSlide 12Slide 13Slide 14Glossy ReflectionsTranslucencySlide 17Slide 18Slide 19Calculating the integralsShadowsSoft ShadowsSlide 23Slide 24Camera ModelsPowerPoint PresentationDepth of FieldDepth-of-FieldMotion BlurRendering the SceneRendering a SceneSlide 32SupersamplingSlide 34Slide 35Slide 36Slide 37Rendering the sceneDistributed Ray-TracingRay TracingJian Huang, CS 594, Fall, 2002This set of slides are used at Ohio State by Prof. Roger Crawfis.Ray TracingYXZeyescreenincident rayworldcoordinatesscenemodelnearestintersectedsurfacerefractedrayreflectedrayshadow“feeler” rayRay-Tracing Pseudocode•For each ray r from eye to pixel, color the pixel the value returned by ray_cast(r):ray_cast(r){ s  nearest_intersected_surface(r); p  point_of_intersection(r, s); u reflect(r, s, p); v refract(r, s, p); c  phong(p, s, r) + s.kreflect  ray_cast(u) + s.krefract  ray_cast(v); return(c);}Pseudocode Explained•s  nearest_intersected_surface(r);–Use geometric searching to find the nearest surface s intersected by the ray r•p  point_of_intersection(r, s);–Compute p, the point of intersection of ray r with surface s•u reflect(r, s, p); v refract(r, s, p);–Compute the reflected ray u and the refracted ray v using Snell’s LawsReflected and Refracted Rays•Reflected and refracted rays are computed using Snell’s Lawsurface1Nvurreflectedrayincidentraysurfacenormalrefractedray1212  2121sinsinPseudocode Explained•phong(p, s, r)–Evaluate the Phong reflection model for the ray r at point p on surface s, taking shadowing into account (see next slide)•s.kreflect  ray_cast(u)–Multiply the contribution from the reflected ray u by the specular-reflection coefficient kreflect for surface s•s.krefract  ray_cast(v)–Multiply the contribution from the refracted ray v by the specular-refraction coefficient krefract for surface sThe Phong Reflection Model    akkki RdcsdlcoscosSet to 0 if shadow “feeler” ray to light source intersects any scene geometrybisector ofeye and lightvectorseyelightsourcesurfaceNLHVsurfacenormalAbout Those Calls to ray_cast()...•The function ray_cast() calls itself recursively•There is a potential for infinite recursion–Consider a “hall of mirrors”•Solution: limit the depth of recursion–A typical limit is five calls deep–Note that the deeper the recursion, the less the ray’s contribution to the image, so limiting the depth of recursion does not affect the final image muchPros and Cons of Ray Tracing•Advantages of ray tracing–All the advantages of the Phong model–Also handles shadows, reflection, and refraction•Disadvantages of ray tracing–Computational expense–No diffuse inter-reflection between surfaces–Not physically accurate•Other techniques exist to handle these shortcomings, at even greater expense!An Aside on Antialiasing•Our simple ray tracer produces images with noticeable “jaggies”•Jaggies and other unwanted artifacts can be eliminated by antialiasing:–Cast multiple rays through each image pixel–Color the pixel the average ray contribution–An easy solution, but it increases the number of rays, and hence computation time, by an order of magnitude or moreReflections•We normally deal with a perfectly diffuse surface.•With ray-tracing, we can easily handle perfect reflections.•Phong allows for glossy reflections of the light source.Reflections•If we are reflecting the scene or other objects, rather than the light source, then ray-tracing will only handle perfect mirrors.Jason Bryan, cis782, Ohio State, 2000Reflections•Glossy reflections blur the reflection.Jason Bryan, cis782, Ohio State, 2000Reflections•Mathematically, what does this mean?What is thereflectedcolor?Glossy Reflections•We need to integrate the color over the reflected cone.•Weighted by the reflection coefficient in that direction.Translucency•Likewise, for blurred refractions, we need to integrate around the refracted angle.TranslucencyTranslucencyTranslucencyCalculating the integrals•How do we calculate these integrals?–Two-dimensional of the angles and ray-depth of the cone.–Unknown function -> the rendered scene.•Use Monte-Carlo integrationShadows•Ray tracing casts shadow feelers to a point light source. •Many light sources are illuminated over a finite area.•The shadows between these are substantially different. •Area light sources cast soft shadows–Penumbra–UmbraSoft ShadowsSoft ShadowsUmbraPenumbraSoft Shadows•Umbra – No part of the light source is visible.•Penumbra – Part of the light source is occluded and part is visible (to a varying degree).•Which part? How much? What is the Light Intensity reaching the surface?Camera Models•Up to now, we have used a pinhole camera model.•These has everything in focus throughout the scene.•The eye and most cameras have a larger lens or aperature.Depth-of-FieldDepth of FieldDepth-of-Field•DetailsMotion Blur•Integrate (or sample) over the frame time.Rendering the Scene•So, we ask again, what is the color returned for each pixel?What is thereflectedcolor?Rendering a Scene•For each frame–Generate samples in time and average (t):•For each Pixel (nxn)–Sample the Camera lens (lxl)•Sample the area light source for illumination (sxs)•Recursively sample the reflected direction cone (rxr).•Recursively sample the refracted direction cone (axa).•Total complexity O(p*p*t*l*l*s*s*r*r*a*a)!!!!!•Where p is the number of rays cast in the recursion – n2 primary rays, 3n2 secondary, …•If we super-sample on a fine sub-pixel grid, it gets even worse!!!Rendering a Scene•If we only sample the 2D integrals with a mxm grid, and time with 10 samples, we have a complexity of O(m9p2).Supersampling•1 sample per pixelSupersampling•16 samples per pixelSupersampling•256 samples per pixelRendering the Scene•So, we ask a third time, what is the color returned for each pixel?What is thereflectedcolor?Rendering the Scene•If we were to write this as an integral, each pixel would take the form:•Someone try this in


View Full Document

UTK CS 594 - Ray Tracing

Documents in this Course
Load more
Download Ray Tracing
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Ray Tracing and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Ray Tracing 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?