Presentation is loading. Please wait.

Presentation is loading. Please wait.

Raytracing and Global Illumination Intro. to Computer Graphics, CS180, Fall 2008 UC Santa Barbara.

Similar presentations


Presentation on theme: "Raytracing and Global Illumination Intro. to Computer Graphics, CS180, Fall 2008 UC Santa Barbara."— Presentation transcript:

1 Raytracing and Global Illumination Intro. to Computer Graphics, CS180, Fall 2008 UC Santa Barbara

2 Rasterization vs. Raytracing Rasterize: - Project polygons onto picture plane - Efficient hardware. OpenGL, DirectX Raytrace: - Cast light rays into scene through picture plane. project cast

3 Inverse View Matrix - Compute ray directions using Inverse Projection and Camera matrix - Loop over all pixels in image. Start with 3D ray extending from camera p = Cam Cam Proj p’(x,y) p’(x,y) = clip ( P V M p(x,y,z) ) = Proj View p TR p p

4 Inverse Projection Matrix - Where else have we see the Inverse Projection Matrix? - Just draw a line from the origin to the pixel (x, y) p x y

5

6 Ray-Sphere Intersection r p(t) = R + t R t > 0 Ray definition p: (x – xc) + (y – yc) + (z – zc) = r Sphere definition 2 2 22 0dir Solve for p: p 0 R dir R A t + B t + C = 0 2 A = Rx + Ry + Rz B = 2 * (Rx (Rx0–Sx) + Ry (Ry0-Sy) + Rz(Rz0-Sz) ) C = (Rx0–Sx) + (Ry0–Sy) + (Rz0–Sz) 22 2 2 2 2

7

8 - What do we do when we hit an object? - Warn lighting model. Trace rays to each light source, and also new terms for reflected and trasmitted light Raytracing – Illumination Model

9 First application of Raytracing: Rene Descarte, Geometry of Rainbows, 1641 - Rainbows are caused by refraction of light in a spherical water dropplet - Proved that rainbows always occur at 42 degs between viewer & sun

10 Raytracing - History Turner Whitted An improved illumination model for shaded display Communications of the ACM, v.23 n.6, p.343-349, June 1980 ABSTRACT To accurately render a two-dimensional image of a three-dimensional scene, global illumination information that affects the intensity of each pixel of the image must be known at the time the intensity is calculated. In a simplified form, this information is stored in a tree of “rays” extending from the viewer to the first surface encountered and from there to other surfaces and to the light sources. Consideration of all of these factors allows the shader to accurately simulate true reflection, shadows, and refraction, as well as the effects simulated by conventional shaders.

11

12

13 Monte Carlo Raytracing - Multiple rays per pixel = Anti-aliasing - Multiple rays per light = Soft shadows - Multiple rays per reflect = Diffuse reflections - Multiple rays per frame = Motion blur

14

15 What might be some limitations of raytracing?

16 1.Performance 2.Light propagation - no caustics 3.Memory – All geometry must fit in memory 10 million rays, simple scene Solution: Acceleration structures: k-d Tree, Octree Monsters, Inc. (Pixar) 13 hours per single frame, most of that is spent raytracing individual hairs of fur.

17 Acceleration: k-d Tree Special case of BSP Tree.. Axis-aligned BSP Tree Geometry is inserted in tree. Rays traverse through it.

18

19

20

21

22

23 Daniel Horn, Jeremy Sugerman, Mike Houston, Pat Hanrahan “Interactive k-D Tree GPU Raytracing”, 2007 GPU Raytracing 18x 8x 4x 16.3 million rays/sec CPU (AMD 2.4ghz) 2.4 fps GPU (ATI X1900): 14.2 fps PS3 (Cell Proc): 20.0 fps Free source code

24


Download ppt "Raytracing and Global Illumination Intro. to Computer Graphics, CS180, Fall 2008 UC Santa Barbara."

Similar presentations


Ads by Google