Ray Tracing The Final Chapter - PowerPoint PPT Presentation

1 / 35
About This Presentation
Title:

Ray Tracing The Final Chapter

Description:

CSG is a way to make complex solids from simple primitives and operations. Slide 5 ... Purcell, Ray Tracing on Programmable Graphics Hardware. Carr, The Ray Engine ... – PowerPoint PPT presentation

Number of Views:88
Avg rating:3.0/5.0
Slides: 36
Provided by: anselmo9
Category:

less

Transcript and Presenter's Notes

Title: Ray Tracing The Final Chapter


1
Ray TracingThe Final Chapter
2
Administrivia
  • Reminder No class next week

3
Topics
  • CSG
  • Ray tracing optimizations
  • Utah work on parallelization
  • Frameless rendering

4
CSG
  • Constructive Solid Geometry
  • CSG is a way to make complex solids from simple
    primitives and operations

5
Basics on 2D Examples
  • Consider two simple objects below left
  • Position as shown on right

6
Union (A C)
7
Intersection (A C)
8
Difference (A - C)
9
CSG Trees
  • Operations can be thought of as tree
  • Primitives are leaves
  • Result is at root

10
Ray Tracing CSG Models
  • Pretty easy using the method of Roth (Ray
    Casting for Modeling Solids, Computer Graphics
    and Image Processing 18, 1982
  • I put a copy in class notebook).

11
(No Transcript)
12
Example
  • Trace ray through our two objects
  • Call arch object A and circle B

13
Operations
  • This shows how Ill illustrate in parametric
    coordinates on ray

14
Algorithm
  • Trace ray to each component and log the
    intersections into in-out lists.
  • Perform the Boolean operations on these lists as
    follows
  • Merge the lists of intersections.
  • Classify the merged points as in or out (see
    table next slide).
  • Combine adjacent segments.

15
Table of Boolean Combinations
16
Example with Substeps
  • Add

17
Ray Tracing Optimizations
  • Whitted wrote 95 of time spent computing
    intersections
  • Exhaustive ray tracing intersect each ray with
    all objects.
  • Too Slow
  • Presentation mostly after Arvo and Kirk, A Survey
    of Ray Tracing Acceleration Techniques, in
    Glassner, ed., An Introduction to Ray Tracing

18
Arvo Kirk Present a Taxonomy of Acceleration
Approaches
  • Faster intersections
  • Faster ray/object intersections
  • Fewer of them
  • Fewer rays
  • Generalized rays

19
Faster intersections
  • Bounding volumes for objects
  • Test ray on volume first
  • Sphere is simple used by Whitted

20
Hierarchical Bounding Volumes
  • Still a topic of interest, mostly for polygonal
    rendering.
  • Bound the ray length and a tree of volumes.
  • Only follow branches that the ray intersects and
    if a ray hits, you can cut the length (dont care
    about further intersections).

21
Bounding Primitives
  • What should the bounding primitives be?
  • boxes, spheres?
  • and how should they be aligned?
  • axis aligned or oriented to the objects.
  • bounding sphere, axis-aligned box, oriented box.
  • See Stefan Gottschalk publications and thesis on
    oriented bounding boxes

22
Spatial Subdivision
  • Instead of building a hierarchy bottom-up, divide
    space top-down.
  • The former selects volumes based on sets of
    objects.
  • This one selects objects based on volumes.

23
Octrees
  • Built so that list of objects intersecting (or
    contained in) a node is kept at each node.
  • Test for intersection with faces
  • Follow ray through octrees, node by node, and
    only test with objects that are in nodes that ray
    traverses.

24
Non-uniform subdivision
  • BSP trees.
  • Axis aligned planes instead of Henrys
    arbitrarily planes for visibility determination.
  • Rays are cut into segments by crossings of
    partitioning planes and if theres a hit the
    farther ones are not searched.

25
Uniform Subdivision
  • Not adapted to objects, but may be easier.
  • Problem if primitives are sparsely distributed
  • Can use DDA to trace ray through cells

26
Watch Out For
  • Repeated tests with same object. Can keep
    intersection info with object.
  • Missing an object
  • In cell 3 test B
  • Notice hit
  • Will you ignore C?
  • Make sure hit in cell

27
Generalized Rays
  • Trace volumes instead of rays
  • cones, beams, pencils.
  • Seems awfully complicated
  • Here just to stimulate thought

28
Beam Tracing
  • Beams are polygonal and intersect polygonal
    objects only. As a polygon is intersected, parts
    of the end of the beam are clipped away.

29
Parallelization
  • Ray tracing very parallelizable, if you can
    replicate database or keep memory network traffic
    down
  • Recent papers from Utah
  • Parallel on SGI
  • Groups of eye rays given to processors as tasks.

30
Load Balancing
  • Cant predict the amount of work required for
    each group
  • they use a work queue and each processor takes
    items from queue.
  • To reduce load imbalance and idle time at end of
    frame, they have different task granularities and
    start out with larger ones.

31
Illustration
  • Note that size of tasks (granularity) directly
    affects load balancing, but small tasks incur too
    much overhead.

32
Speedup
  • Reasonable speedup.
  • Load balancing and synchronization time limits
    final speedup.

33
Frameless Rendering
  • Dont update all pixels at once.
  • They update a pseudo-random set every frame.
    Screen updated constantly.
  • New samples are blended. They can use 4 jittered
    samples and update only some of the samples.
  • Frameless rendering not as useful for
    conventional polygon rendering because coherence
    is what makes it fast!
  • They also implemented progressive refinement.

34
Ray Tracing Machines
  • One at Duke for CAD work
  • ART ray tracing hardware
  • http//www.art-render.com/index.ihtml
  • Not for interactive work

35
Next Time
  • No class next week
  • 9/10 Three paper presentations
  • Wald paper on ray tracing at interactive rates on
    a cluster
  • Purcell, Ray Tracing on Programmable Graphics
    Hardware
  • Carr, The Ray Engine
Write a Comment
User Comments (0)
About PowerShow.com