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

Slides:



Advertisements
Similar presentations
Real-Time Rendering 靜宜大學資工研究所 蔡奇偉副教授 2010©.
Advertisements

Graphics Pipeline.
Lecture 14 Illumination II – Global Models
Ray Tracing CMSC 635. Basic idea How many intersections?  Pixels  ~10 3 to ~10 7  Rays per Pixel  1 to ~10  Primitives  ~10 to ~10 7  Every ray.
ATEC Procedural Animation Introduction to Procedural Methods in 3D Computer Animation Dr. Midori Kitagawa.
Christian Lauterbach COMP 770, 2/11/2009
Rasterization and Ray Tracing in Real-Time Applications (Games) Andrew Graff.
CSCE 641: Photon Mapping Jinxiang Chai. Outline Rendering equation Photon mapping.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 15: Ray Tracing/Global Illumination Ravi Ramamoorthi Slides.
18.1 Si31_2001 SI31 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Light Maps What We Did Not Cover Learning More...
Computer Graphics (Fall 2005) COMS 4160, Lecture 21: Ray Tracing
Admission to CS 184 Enrollment priorities are 1. CS/EECS majors, 2. CS/EECS minors (this category includes applied math majors) 3. anyone else with a declared.
Interreflections and Radiosity : The Forward Problem Lecture #11 Thanks to Kavita Bala, Pat Hanrahan, Doug James, Ledah Casburn.
3D Graphics Processor Architecture Victor Moya. PhD Project Research on architecture improvements for future Graphic Processor Units (GPUs). Research.
Parallelizing Raytracing Gillian Smith CMPE 220 February 19 th, 2008.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 14: Ray Tracing
1 7M836 Animation & Rendering Global illumination, ray tracing Arjan Kok
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 2: Basic Ray Tracing Ravi Ramamoorthi Some slides courtesy.
Interactive k-D Tree GPU Raytracing Daniel Reiter Horn, Jeremy Sugerman, Mike Houston and Pat Hanrahan.
Basic Ray Tracing CMSC 435/634. Visibility Problem Rendering: converting a model to an image Visibility: deciding which objects (or parts) will appear.
CSC418 Computer Graphics n Raytracing n Shadows n Global Illumination.
Cornell CS465 Fall 2004 Lecture 3© 2004 Steve Marschner 1 Ray Tracing CS 465 Lecture 3.
Direct Illumination with Lazy Visibility Evaluation David Hart Philip Dutré Donald P. Greenberg Cornell University SIGGRAPH 99.
Ray Tracing Primer Ref: SIGGRAPH HyperGraphHyperGraph.
Interactive Ray Tracing: From bad joke to old news David Luebke University of Virginia.
Ray Tracing and Photon Mapping on GPUs Tim PurcellStanford / NVIDIA.
Computer graphics & visualization Ray-Tracing – A Quick review.
1. 2 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)
Today More raytracing stuff –Soft shadows and anti-aliasing More rendering methods –The text book is good on this –I’ll be using images from the CDROM.
Advanced Computer Graphics March 06, Grading Programming assignments Paper study and reports (flipped classroom) Final project No written exams.
-Global Illumination Techniques
Ray Tracing Sang Il Park SEjong University With lots of slides stolen from Jehee Lee, Doug James, Steve Seitz, Shree Nayar, Alexei Efros, Fredo Durand.
09/11/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Graphics Pipeline Texturing Overview Cubic Environment Mapping.
Ray Tracing Chapter CAP4730: Computational Structures in Computer Graphics.
Basic Ray Tracing CMSC 435/634. Visibility Problem Rendering: converting a model to an image Visibility: deciding which objects (or parts) will appear.
Global Illumination with a Virtual Light Field Mel Slater Jesper Mortensen Pankaj Khanna Insu Yu Dept of Computer Science University College London
Shadow Mapping Chun-Fa Chang National Taiwan Normal University.
Gene Au-yeung, Daniel Quach, Jeffrey Su, Albert Wang, Jessica Wang, David Woo.

M. Jędrzejewski, K.Marasek, Warsaw ICCVG, Multimedia Chair Computation of room acoustics using programable video hardware Marcin Jędrzejewski.
Basic Ray Tracing CMSC 435/634.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Surface Rendering Methods 고려대학교 컴퓨터 그래픽스 연구실.
Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
Ray Tracing Fall, Introduction Simple idea  Forward Mapping  Natural phenomenon infinite number of rays from light source to object to viewer.
VLF Rendering & Implementation Details Virtual Light Field Group University College London GR/R13685/01 Research funded by: Jesper.
Advanced topics Advanced Multimedia Technology: Computer Graphics Yung-Yu Chuang 2006/01/04 with slides by Brian Curless, Zoran Popovic, Mario Costa Sousa.
From Turing Machine to Global Illumination Chun-Fa Chang National Taiwan Normal University.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
What are Computer Graphics Basically anything that is on you Monitor – This includes the text that you will see Text isn’t Advanced Graphics But…. Understanding.
1. Ray Casting Surface intersection Visible surface detection Ray Tracing Bounce the ray Collecting intensity Technique for global reflection and transmission.
Ray Tracing by GPU Ming Ouhyoung. Outline Introduction Graphics Hardware Streaming Ray Tracing Discussion.
More on Ray Tracing Glenn G. Chappell U. of Alaska Fairbanks CS 481/681 Lecture Notes Wednesday, April 14, 2004.
RENDERING : Global Illumination
Global Illumination (3) Path Tracing. Overview Light Transport Notation Path Tracing Photon Mapping.
Ray Tracing I. Reading Hill, Chapter 14, Sections 14.1 to 14.5 Hill, Chapter 14, Sections and
CS552: Computer Graphics Lecture 36: Ray Tracing.
Basic Ray Tracing CMSC 435/634.
Advanced Computer Graphics

CSE 167 [Win 17], Lecture 15: Ray Tracing Ravi Ramamoorthi
From Turing Machine to Global Illumination
Understanding Theory and application of 3D
Jim X. Chen George Mason University
© University of Wisconsin, CS559 Fall 2004
(c) 2002 University of Wisconsin
Image synthesis using classical optics
An Algorithm of Eye-Based Ray Tracing on MATLAB
Ray Tracing on Programmable Graphics Hardware
Frame Buffer Applications
CSC418 Computer Graphics Raytracing Shadows Global Illumination.
Presentation transcript:

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

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

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

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

Ray-Sphere Intersection r p(t) = R + t R t > 0 Ray definition p: (x – xc) + (y – yc) + (z – zc) = r Sphere definition dir 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)

- 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

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

Raytracing - History Turner Whitted An improved illumination model for shaded display Communications of the ACM, v.23 n.6, p , 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.

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

What might be some limitations of raytracing?

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.

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

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