logistics
play

Logistics Paper summaries on Ray Tracing Any takers? Advanced - PDF document

Logistics Paper summaries on Ray Tracing Any takers? Advanced Ray Tracing About the Animation Course Announcement 12-hour programming competition Tenatively scheduled for: Sponsored by Computer Science House & Redbull


  1. Logistics • Paper summaries on Ray Tracing – Any takers? Advanced Ray Tracing About the Animation Course Announcement • 12-hour programming competition • Tenatively scheduled for: – Sponsored by Computer Science House & Redbull – MW – Friday, January 17 – 4:00 – 5:50pm – 7pm – 7am – Spring 2003 – Teams of 3 – 5 – objectives will be based around an 'energy' theme – Will be cross listed for grads/undergrads – Free Redbull and pizza – http://www.csh.rit.edu/redbull – http://www.csh.rit.edu/redbull/info.html Schedule change Assignments • Tuesday, Feb 11 • Assignment #1 – Write-up and sample input on Web site – Prof. Peter Anderson (CS) will be here talking – Slight change about his research in Linear Pixel Shuffling • k r and k t now associated with each sphere – Reading list has been updated appropriately • New input format • Paper available only via Web site, not at library • Assignment #2 – Write-up and sample input up by Thursday. • Any problems or questions with assignments?

  2. Assignments Assignments • Assignment #1 • Assignment #1 – Questions on • Netppm • Focal length and frame size Logistics Logistics • Projects • Project roll call! – Please sign up for presentation time – 20 minutes/presentation – E-mail day/time • 1 st , 2 nd , 3 rd preference Before we begin Computer Graphics as Virtual Photography • Any questions? real camera photo Photographic Photography: scene (captures processing print light) processing camera Computer 3D tone synthetic model Graphics: models image reproduction (focuses simulated lighting)

  3. Today’s Class Ray Tracing - Basics • Advanced Ray Tracing – Light rays are traced from the eye, through a viewing plane, into scene – Spatial Subdivision – When rays strike an object, further rays are – Alternate approaches to the ray spawned representing reflection and refraction. – Stochastic Ray Tracing – These newly spawned rays can strike objects and spawn more rays, etc… – Light emitted is the sum or contributions from reflected and refracted rays Ray Tracing - Basics Ray Tracing - Basics • Illumination at each intersection point = + + I I k I k I local r reflected t transmitte d Local Illumination Determined using your favorite shading model Do only if shadow ray reaches a light source. k r & k t may be wavelength dependent Sometimes you don’t hit an object Ray Tracing - Basics Ray Tracing - Practical Considerations • Problems with Ray Tracing – Object - Ray Intersection – Ray traced images are point sampled • “Too sharp” • Sharp shadows • Sharp Reflection/Refraction • Aliasing

  4. Ray Tracing - Bounding Volumes Ray Tracing - Object - Ray Intersection • For each ray, intersection test needs to be • Place simple objects (i.e sphere or box) made for each object around complex objects – This could costly if you have may • Do initial intersection tests on bounding objects…consider if object == n polygons objects. – Solutions • If ray intersects bounding volume, then test • Bounding Volume complex bounded object • Spatial Subdivision Ray Tracing - Spatial Subdivision Ray Tracing - Spatial Subdivision • Subdivide your scene volume into • Motivation hierarchical regions – Without spatial subdivision, for each ray, you will need to query all objects/polygons and test • Create a tree structure that indicates for for intersection each region: – With spatial subdivision, you know which – if the region is empty objects are in which volume so you only test – the object present at that particular region objects that are in the volumes where a ray is • Test ray intersection with region volume traveling. Ray Tracing - Spatial Subdivision Ray Tracing - Spatial Subdivision • Octrees – Recursively subdivide volume into equal regions. – If subregion is empty, then stop – Otherwise further subdivide subregion. – Continue until each subregion is empty or Foley/Van Dam contains a single object.

  5. Ray Tracing - Spatial Subdivision Ray Tracing - Spatial Subdivision • Subdivisions represented as a tree • Let’s see how this is done in 2D – Quadtree applet – http://njord.umiacs.umd.edu:1601/users/brabec/ quadtree/points/pointquad.html Ray Tracing -- Octrees Ray Tracing -- Octrees • Images from flipCode.com Ray Tracing -- Octrees Ray Tracing -- Octrees

  6. Ray Tracing -- Octrees Ray Tracing - Spatial Subdivision • Questions? • Binary Space Partitioning Trees (BSP Trees) – Like Octrees but divides space into a pair of subregions – Subregions need not be equally spaced – Planes separating regions can be placed at object boundaries. Ray Tracing - Spatial Subdivision Ray Tracing - Spatial Subdivision • Octrees vs BSP Trees • BSP Trees Watt/Watt Watt/Watt Ray Tracing - Spatial Subdivision Ray Tracing - Spatial Subdivision • Advantages • BSPTree applet – Efficient means for finding objects within your space – Compact representation • Disadvantages – Preprocessing required – If scene changes, must rebuild your tree – Not foolproof

  7. Ray Tracing - Spatial Subdivision Ray Tracing - Spatial Subdivision • Potential Problems • Octrees vs BSP trees – BSP Trees are generally more balanced than Octrees – BSP Traversal more efficient – BSP Trees have additional storage overhead (must story subdivision planes) Watt/Watt Ray Tracing Ray Tracing - Spatial Subdivision • Any questions? • Avoid that “ray traced look” – Ray tracing is point sampling • 1 ray per pixel • Let’s break – assumes pixel is a single point • 1 ray for transmission & reflection – Assumes all reflection is specular – Assumes that BRDF for all incoming directions is single out going direction Ray Tracing Tracing things other than rays • Avoiding that “ray traced look” • Beam tracing – pyramidal beams – Two approaches • Cone tracing – cones • Trace objects other than rays • Pencil Tracing – bundle of rays • Stochastic sampling

  8. Tracing things other than rays Tracing things other than rays • Same as traditional ray tracing except – Intersection is a surface – Surfaces spawn more cones, beams, pencils – Intersection mathematics far hairier than traditional ray tracing Stochastic Ray Tracing Distributed Ray Tracing • Introduce randomness in ray spawning • Introduced by Cook, Porter, Carpenter in 1984. • Kajiya’s means for solving rendering equation • Uses stochastic sampling to get rid of ray traced look. – Either reflection or refraction is spawned – Can reflection can be spawned in diffuse • Performs anti-aliasing by introduction of direction noise (by using “jittering”) – Multiple “paths” per pixel Distributed Ray Tracing Distributed Ray Tracing • “Jitter” sampling • Poisson jittering – Use Poisson “noise” to jitter values from original “fixed” position – Using “jittering” in • initial ray generation • reflection/transmission ray generation • show ray generation • jitter over time. Foley/Van Dam

  9. Distributed Ray Tracing Distributed Ray Tracing • Initial ray generation – supersample - instead of 1 ray per pixel, shoot 16 rays per pixel. – Initial ray positions are not evenly spaced, rather distributed stochastically within pixel using “jittering” Foley/Van Dam Distributed Ray Tracing Distributed Ray Tracing � Focal length • Jittered ray generation – Using a lens/camers model – Simulation of depth of field – First use on non-pinhole camera model in ray tracing Distributed Ray Tracing Distributed Ray Tracing • Jittered ray generation • Depth of field example [Cook84] Watt/Watt

  10. Distributed Ray Tracing Distributed Ray Tracing • Jittered Reflection • Jittered Reflection – Send out multiple rays jittered about the real reflection direction – Contribution of each ray to intensity weighted by a predefined “Importance” function (associated with the object’s reflectance properties) Watt/Watt Distributed Ray Tracing Distributed ray tracing • Jittered shadow rays • Soft Shadows – Multiple jittered rays sent out toward light sources – Contribution of each determined by a predefined importance function (associated with the light) – Shadow rays return fraction of light seen rather than yes/no – Results in soft shadows [Cook84] Distributed Ray Tracing Distributed Ray Tracing • Jittering in time • Motion blur – Do ray tracing over a duration of time in which objects may move. – Uses same rays repeatedly over time interval – Results in motion blur [Cook84]

  11. Distributed Ray Tracing Advanced Ray Tracing • Summary • Summary – Object-Ray Intersection – Stochastic sampling (“jitter sampling”) • Space Partitioning – Apply jittering to: – Sampling problem • Initial ray selection • Cone / Pencil / Beam tracing – Jittering on image plane + use of camera/lens model • Stochastic Ray Tracing • Reflection / Transmittance – Distributed Ray Tracing • Shadow Rays • Over time • Questions? Next Time Remember • Advanced Radiosity • Class Web Site: – http://www.cs.rit.edu/~jmg/cgII

Recommend


More recommend