Cs 551 651 advanced computer graphics
This presentation is the property of its rightful owner.
Sponsored Links
1 / 15

CS 551/651: Advanced Computer Graphics PowerPoint PPT Presentation


  • 34 Views
  • Uploaded on
  • Presentation posted in: General

CS 551/651: Advanced Computer Graphics. Accelerating Ray Tracing. Ray-Sphere Intersection. Ray R = O + tD x = O x + t * D x y = O y + t * D y z = O z + t * D z Sphere at ( l, m, n ) of radius r is: ( x - l ) 2 + ( y - m ) 2 + ( z - n ) 2 = r 2

Download Presentation

CS 551/651: Advanced Computer Graphics

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


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

Presentation Transcript


Cs 551 651 advanced computer graphics

CS 551/651: Advanced Computer Graphics

Accelerating Ray Tracing

David Luebke 111/17/2014


Ray sphere intersection

Ray-Sphere Intersection

  • Ray R = O + tD

    x = Ox + t * Dx

    y = Oy + t * Dy

    z = Oz + t * Dz

  • Sphere at (l, m, n) of radius r is:

    (x - l)2 + (y - m)2 + (z - n)2 = r 2

  • Substitute for x,y,z and solve for t…

David Luebke 211/17/2014


Ray sphere intersection1

Ray-Sphere Intersection

  • Works out as a quadratic equation:

    at2 + bt + c = 0

    where

    a = Dx2 + Dy2 + Dz2

    b =2Dx(Ox - l) + 2Dy(Oy - m) + 2Dz(Oz - n)

    c = l2 + m2 + n2 + Ox2 + Oy2 + Oz2 - 2(l Ox + m Oy + n Oz + r2)

David Luebke 311/17/2014


Ray sphere intersection2

Ray-Sphere Intersection

  • If solving for t gives no real roots: ray does not intersect sphere

  • If solving gives 1 real root r, ray grazes sphere where t = r

  • If solving gives 2 real roots (r1, r2), ray intersects sphere at t = r1& t = r2

    • Ignore negative values

    • Smallest value is first intersection

David Luebke 411/17/2014


Ray sphere intersection3

Ray-Sphere Intersection

  • Find intersection point Pi = (xi, yi, zi) by plugging t back into ray equation

  • Find normal at intersection point by subtracting sphere center from Pi and normalizing:

    (When might we need the normal? When not?)

David Luebke 511/17/2014


Ray polygon intersection

Ray-Polygon Intersection

  • Polygons are the most common model representation (Why?)

  • Basic approach:

    • Find plane equation of polygon

    • Find intersection of ray and plane

    • Does polygon contain intersection point?

David Luebke 611/17/2014


Ray polygon intersection1

y

N

P2

P1

d

x

Ray-Polygon Intersection

  • Find plane equation of polygon:ax + by + cz + d = 0

  • How?

    N = [a, b, c]

    d = N  P1

    (How to find N ?)

David Luebke 711/17/2014


Ray polygon intersection2

Ray-Polygon Intersection

  • Find intersection of ray and plane:

    t = -(aOx + bOy + cOz + d) / (aDx + bDy + cDz)

  • Does poly contain intersection point Pi ?

    • Book’s algorithm:

      • Draw line from Pi to each polygon vertex

      • Measure angles between lines (how?)

      • If sum of angles between lines is 360°, polygon contains Pi

David Luebke 811/17/2014


Ray box intersection

Ray-Box Intersection

  • Often want to find whether a ray hits an axis-aligned box (Why?)

  • One way:

    • Intersect the ray with the pairs of parallel planes that form the box

    • If the intervals of intersection overlap, the ray intersects the box.

David Luebke 911/17/2014


Shadow ray problems too much computation

Shadow Ray Problems:Too Much Computation

  • Light buffer (Haines/Greenberg, 86)

    • Precompute lists of polygons surrounding light source in all directions

    • Sort each list by distance to light source

    • Now shadow ray need only be intersected with appropriate list!

ShadowRay

Light Buffer

Occluding Polys

Current Intersection Point

David Luebke 1011/17/2014


Shadow ray problems sharp shadows

Shadow Ray Problems:Sharp Shadows

  • Why are the shadows sharp?

  • A: Infinitely small point light sources

  • What can we do about it?

  • A: Implement area light sources

  • How?

David Luebke 1111/17/2014


Shadow ray problems area light sources

Shadow Ray Problems: Area Light Sources

  • Could trace a conical beam from point of intersection to light source:

  • Track portion of beam blocked by occluding polygons:

30% blockage

David Luebke 1211/17/2014


Shadow ray problems area light sources1

Shadow Ray Problems:Area Light Sources

  • Too hard! Approximate instead:

  • Sample the light source over its area and take weighted average:

50% blockage

David Luebke 1311/17/2014


Shadow ray problems area light sources2

Shadow Ray Problems:Area Light Sources

  • Disadvantages:

    • Less accurate (50% vs. 30% blockage)

    • Oops! Just quadrupled (at least) number of shadow rays

  • Moral of the story:

    • Soft shadows are very expensive in ray tracing

David Luebke 1411/17/2014


The end

The End

David Luebke 1511/17/2014


  • Login