# CPSC GLOBAL ILLUMINATION

Size: px
Start display at page:

Transcription

1 CPSC GLOBAL ILLUMINATION Textbook: 20 UGRAD.CS.UBC.CA/~CS314 Mikhail Bessmeltsev

2 ILLUMINATION MODELS/ALGORITHMS Local illumination - Fast Ignore real physics, approximate the look Interaction of each object with light Compute on surface (light to viewer) Global illumination Slow Physically based Interactions between objects

3 ILLUMINATION MODELS/ALGORITHMS Local illumination - Fast Ignore real physics, approximate the look Interaction of each object with light Compute on surface (light to viewer) Global illumination Slow Physically based Interactions between objects

4 ILLUMINATION MODELS/ALGORITHMS Local illumination - Fast Ignore real physics, approximate the look Interaction of each object with light Compute on surface (light to viewer) Global illumination Slow Physically based Interactions between objects How?

5 WHAT WAS NON-PHYSICAL IN LOCAL ILLUMINATION?

6 HOW SHOULD GLOBAL ILLUMINATION WORK?

7 HOW SHOULD GLOBAL ILLUMINATION WORK? Simulate light As it is emitted from light sources Eye Image Plane Light Source As it bounces off objects / get absorbed / refracted Reflected Ray As some of the rays hit the camera Refracted Ray

8 PROBLEM?

9 RAY TRACING: IDEA Eye Image Plane Light Source Reflected Ray Refracted Ray

10 RAY TRACING: IDEA Eye Image Plane Light Source Reflected Ray Shadow Rays Refracted Ray

11 RAY TRACING Invert the direction of rays! Shoot rays from CAMERA through each pixel Trace the rays back Simulate whatever the light rays do: Reflection Refraction Each interaction of the ray with an object adds to the final color Those rays are never gonna hit the light source, so Shoot shadow rays to compute direct illumination

12 REFLECTION Mirror effects Perfect specular reflection n 2010 Jules Berman,

13 REFRACTION Interface between transparent object and surrounding medium E.g. glass/air boundary c Snell s Law 2 sin 1 c1 sin 1 n 2 2 Light ray breaks (changes direction) based on refractive indices c 1, c 2

14 BASIC RAY-TRACING ALGORITHM RayTrace(r,scene) obj = FirstIntersection(r,scene) if (no obj) return BackgroundColor; else { if (Reflect(obj)) reflect_color = RayTrace(ReflectRay(r,obj)); else reflect_color = Black; if (Transparent(obj)) refract_color = RayTrace(RefractRay(r,obj)); else refract_color = Black; } return Shade(reflect_color, refract_color, obj);

15 WHEN TO STOP? Algorithm above does not terminate Termination Criteria No intersection Contribution of secondary ray attenuated below threshold each reflection/refraction attenuates ray Maximal depth is reached

16 SUB-ROUTINES ReflectRay(r,obj) computes reflected ray (use obj normal at intersection) RefractRay(r,obj) - computes refracted ray Note: ray is inside obj Shade(reflect_color,refract_color,obj) compute illumination given three components

17 SIMULATING SHADOWS Trace ray from each ray-object intersection point to light sources If the ray intersects an object in between point is shadowed from the light source shadow = RayTrace(LightRay(obj,r,light)); return Shade(shadow,reflect_color,refract_color,obj);

18 RAY TRACING: IDEA Eye Image Plane Light Source Reflected Ray Shadow Rays Refracted Ray

19 RAY-TRACING: PRACTICALITIES Generation of rays Intersection of rays with geometric primitives Geometric transformations Lighting and shading Speed: Reducing number of intersection tests E.g. use BSP trees or other types of space partitioning

20 RAY-TRACING: GENERATION OF RAYS Camera Coordinate System Origin: C (camera position) Viewing direction: w Up vector: v u direction: u= w v Corresponds to viewing transformation in rendering pipeline! C v w x

21 RAY-TRACING: GENERATION OF RAYS Distance to image plane: d Image resolution (in pixels): N x, N y Image plane dimensions: l, r, t, b Pixel at position i, j (i = 0,, N x 1; j = 0,, N y 1) O = C + dw + lu + tv C v w u P i, j = O + i r l N x u j t b N y v = O + i Δu u j Δv v

22 RAY-TRACING: GENERATION OF RAYS Parametric equation of a ray: R where t= 0 i, j ( t ) C t ( Pi, j C) C t vi, j

23 RAY-TRACING: PRACTICALITIES Generation of rays Intersection of rays with geometric primitives Geometric transformations Lighting and shading Speed: Reducing number of intersection tests E.g. use BSP trees or other types of space partitioning

24 RAY-OBJECT INTERSECTIONS In OpenGL pipeline, we were limited to discrete objects: Triangle meshes In ray tracing, we can support analytic surfaces! No problem with interpolating z and normals, # of triangles, etc. Almost

25 RAY-OBJECT INTERSECTIONS Core of ray-tracing must be extremely efficient Usually involves solving a set of equations Using implicit formulas for primitives Example: Ray-Sphere intersection x( t) p v t, y( t) p v t, z( t) p v t ray: (unit) sphere: x y z quadratic equation in t : x x y y z z ( p v t) ( p v t) ( p v t) 1 x x y y z z t ( v v v ) 2t( p v p v p v ) x y z x x y y z z ( p p p ) 1 x y z p v

26 RAY INTERSECTIONS WITH OTHER PRIMITIVES Implicit functions: Spheres at arbitrary positions Same thing Conic sections (hyperboloids, ellipsoids, paraboloids, cones, cylinders) Same thing (all are quadratic functions!) Higher order functions (e.g. tori and other quartic functions) In principle the same But root-finding difficult Numerical methods

27 RAY INTERSECTIONS WITH OTHER PRIMITIVES Polygons: First intersect ray with plane linear implicit function Then test whether point is inside or outside of polygon (2D test) For convex polygons Suffices to test whether point in on the right side of every boundary edge

28 RAY-TRACING: PRACTICALITIES Generation of rays Intersection of rays with geometric primitives Geometric transformations Lighting and shading Speed: Reducing number of intersection tests E.g. use BSP trees or other types of space partitioning

29 RAY-TRACING: TRANSFORMATIONS Note: rays replace perspective transformation Geometric Transformations: Similar goal as in rendering pipeline: Modeling scenes convenient using different coordinate systems for individual objects Problem: Not all object representations are easy to transform This problem is fixed in rendering pipeline by restriction to polygons (affine invariance!)

30 RAY-TRACING: TRANSFORMATIONS Ray Transformation: For intersection test, it is only important that ray is in same coordinate system as object representation Transform all rays into object coordinates Transform camera point and ray direction by inverse of model/view matrix Shading has to be done in world coordinates (where light sources are given) Transform object space intersection point to world coordinates Thus have to keep both world and object-space ray

31 RAY-TRACING: PRACTICALITIES Generation of rays Intersection of rays with geometric primitives Geometric transformations Lighting and shading Speed: Reducing number of intersection tests E.g. use BSP trees or other types of space partitioning

32 RAY-TRACING: DIRECT ILLUMINATION Light sources: For the moment: point and directional lights More complex lights are possible Area lights Fluorescence

33 RAY-TRACING: DIRECT ILLUMINATION Local surface information (normal ) For implicit surfaces F(x,y,z)=0: normal n(x,y,z) is gradient of F: F(x, y, z)/ x n x, y, z = F x, y, z = F(x, y, z)/ y F(x, y, z)/ z Example: F ( x, y, z) x y z r n( x, y, z) 2x 2y 2z Needs to be normalized!

34 RAY-TRACING: DIRECT ILLUMINATION For triangle meshes Interpolate per-vertex information as in rendering pipeline Phong shading! Same as discussed for rendering pipeline Difference to rendering pipeline: Have to compute Barycentric coordinates for every intersection point (e.g plane equation for triangles)

35 RAY-TRACING: PRACTICALITIES Generation of rays Intersection of rays with geometric primitives Geometric transformations Lighting and shading Speed: Reducing number of intersection tests

36 OPTIMIZED RAY-TRACING Basic algorithm is simple but VERY expensive Optimize Reduce number of rays traced Reduce number of ray-object intersection calculations Parallelize Cluster GPU Methods Bounding Boxes Spatial Subdivision Visibility, Intersection/Collision Tree Pruning

37 SPATIAL SUBDIVISION DATA STRUCTURES Goal: reduce number of intersection tests per ray Lots of different approaches: (Hierarchical) bounding volumes Hierarchical space subdivision Octree, k-d tree, BSP tree

38 BOUNDING VOLUMES: IDEA Don t test each ray against complex objects (e.g. triangle mesh) Do a quick conservative test first which eliminates most rays Surround complex object by simple, easy to test geometry (e.g. sphere or axis-aligned box) Reduce false positives: make bounding volume as tight as possible!

39 HIERARCHICAL BOUNDING VOLUMES Extension of previous idea: Use bounding volumes for groups of objects

40 SPATIAL SUBDIVISION DATA STRUCTURES Bounding Volumes: Find simple object completely enclosing complicated objects Boxes, spheres Hierarchically combine into larger bounding volumes Spatial subdivision data structure: Partition the whole space into cells Grids, octrees, (BSP trees) Simplifies and accelerates traversal Performance less dependent on order in which objects are inserted

41 SOFT SHADOWS: AREA LIGHT SOURCES So far: All lights were either point-shaped or directional Both for ray-tracing and the rendering pipeline Thus, at every point, we only need to compute lighting formula and shadowing for ONE direction per light In reality: All lights have a finite area Instead of just dealing with one direction, we now have to integrate over all directions that go to the light source

42 AREA LIGHT SOURCES Area lights produce soft shadows: In 2D: Area light Occluding surface Receiving surface Umbra (core shadow) Penumbra (partial shadow)

43 AREA LIGHT SOURCES Point lights: Only one light direction: I reflected V I light Point light V is visibility of light (0 or 1) is lighting model (e.g. diffuse or Phong)

44 AREA LIGHT SOURCES Area Lights: Infinitely many light rays Need to integrate over all of them: I reflected light directions Lighting model visibility and light intensity can now be different for every ray! ( ) V( ) I light ( ) d Area light

45 INTEGRATING OVER LIGHT SOURCE Rewrite the integration Instead of integrating over directions integrate over points on the light source I reflected I reflected light directions ( q) ( p q point on reflecting surface p= F(s,t) point on the area light We are integrating over p s, t ( ) V( ) I light ( ) d q) V ( p q) I light ( p) ds dt

46 INTEGRATION Problem: Except for basic case not solvable analytically! Largely due to the visibility term So: Use numerical integration = approximate light with lots of point lights

47 NUMERICAL INTEGRATION Regular grid of point lights Problem: Too regular see 4 hard shadows Area light Need LOTS of points to avoid this problem Solution: Monte-Carlo!

48 GLOBAL ILLUMINATION ALGORITHMS Ray Tracing Path Tracing Photon Mapping Radiosity Metropolis light transport

University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Shading, Advanced Rendering Week 7, Wed Feb 28 http://www.ugrad.cs.ubc.ca/~cs314/vjan2007 Reading for Today and Tomorrow

### Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project

To do Continue to work on ray programming assignment Start thinking about final project Lighting Course Outline 3D Graphics Pipeline Modeling (Creating 3D Geometry) Mesh; modeling; sampling; Interaction

### Computer Graphics Ray Casting. Matthias Teschner

Computer Graphics Ray Casting Matthias Teschner Outline Context Implicit surfaces Parametric surfaces Combined objects Triangles Axis-aligned boxes Iso-surfaces in grids Summary University of Freiburg

### CS5620 Intro to Computer Graphics

Ra Tracing Ra-Tracing A B C D Photorealism Objective: To generate images that are as close as possible to those perceived b the human ee. Method: Accurate simulation of optical phenomena. Copright Page

### Computer Graphics. Lecture 13. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura

Computer Graphics Lecture 13 Global Illumination 1: Ray Tracing and Radiosity Taku Komura 1 Rendering techniques Can be classified as Local Illumination techniques Global Illumination techniques Local

### Sung-Eui Yoon ( 윤성의 )

CS380: Computer Graphics Ray Tracing Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/cg/ Class Objectives Understand overall algorithm of recursive ray tracing Ray generations Intersection

### Topic 12: Texture Mapping. Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping

Topic 12: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip-mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

### CS354 Computer Graphics Ray Tracing. Qixing Huang Januray 24th 2017

CS354 Computer Graphics Ray Tracing Qixing Huang Januray 24th 2017 Graphics Pipeline Elements of rendering Object Light Material Camera Geometric optics Modern theories of light treat it as both a wave

### Topic 11: Texture Mapping 11/13/2017. Texture sources: Solid textures. Texture sources: Synthesized

Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Texture sources: Photographs Texture sources: Procedural Texture sources: Solid textures

### Topic 11: Texture Mapping 10/21/2015. Photographs. Solid textures. Procedural

Topic 11: Texture Mapping Motivation Sources of texture Texture coordinates Bump mapping, mip mapping & env mapping Topic 11: Photographs Texture Mapping Motivation Sources of texture Texture coordinates

### Effects needed for Realism. Ray Tracing. Ray Tracing: History. Outline. Foundations of Computer Graphics (Spring 2012)

Foundations of omputer Graphics (Spring 202) S 84, Lecture 5: Ray Tracing http://inst.eecs.berkeley.edu/~cs84 Effects needed for Realism (Soft) Shadows Reflections (Mirrors and Glossy) Transparency (Water,

### Computer Graphics. Ray Tracing. Copyright Gotsman, Elber, Barequet, Karni, Sheffer. Page 1. Ray-Tracing. Illumination Models

Ra Tracing Ra-Tracing Illumination Models Local: Depends onl on the model, the light sources and the viewer. Eas to simulate. Eamples: Diffuse and specular illumination models. Flat, Gourard and Phong

### Computer Graphics. Lecture 10. Global Illumination 1: Ray Tracing and Radiosity. Taku Komura 12/03/15

Computer Graphics Lecture 10 Global Illumination 1: Ray Tracing and Radiosity Taku Komura 1 Rendering techniques Can be classified as Local Illumination techniques Global Illumination techniques Local

### Effects needed for Realism. Computer Graphics (Fall 2008) Ray Tracing. Ray Tracing: History. Outline

Computer Graphics (Fall 2008) COMS 4160, Lecture 15: Ray Tracing http://www.cs.columbia.edu/~cs4160 Effects needed for Realism (Soft) Shadows Reflections (Mirrors and Glossy) Transparency (Water, Glass)

### Lecture 11: Ray tracing (cont.)

Interactive Computer Graphics Ray tracing - Summary Lecture 11: Ray tracing (cont.) Graphics Lecture 10: Slide 1 Some slides adopted from H. Pfister, Harvard Graphics Lecture 10: Slide 2 Ray tracing -

### So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources.

11 11.1 Basics So far, we have considered only local models of illumination; they only account for incident light coming directly from the light sources. Global models include incident light that arrives

### CS580: Ray Tracing. Sung-Eui Yoon ( 윤성의 ) Course URL:

CS580: Ray Tracing Sung-Eui Yoon ( 윤성의 ) Course URL: http://sglab.kaist.ac.kr/~sungeui/gcg/ Recursive Ray Casting Gained popularity in when Turner Whitted (1980) recognized that recursive ray casting could

### Ray Tracing. Outline. Ray Tracing: History

Foundations of omputer Graphics Online Lecture 9: Ray Tracing 1 History and asic Ray asting Ravi Ramamoorthi Effects needed for Realism (Soft) Shadows Reflections (Mirrors and Glossy) Transparency (Water,

### Ray Tracing. Kjetil Babington

Ray Tracing Kjetil Babington 21.10.2011 1 Introduction What is Ray Tracing? Act of tracing a ray through some scene Not necessarily for rendering Rendering with Ray Tracing Ray Tracing is a global illumination

### Intro to Ray-Tracing & Ray-Surface Acceleration

Lecture 12 & 13: Intro to Ray-Tracing & Ray-Surface Acceleration Computer Graphics and Imaging UC Berkeley Course Roadmap Rasterization Pipeline Core Concepts Sampling Antialiasing Transforms Geometric

### Recollection. Models Pixels. Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows

Recollection Models Pixels Model transformation Viewport transformation Clipping Rasterization Texturing + Lights & shadows Can be computed in different stages 1 So far we came to Geometry model 3 Surface

### Ray Tracing III. Wen-Chieh (Steve) Lin National Chiao-Tung University

Ray Tracing III Wen-Chieh (Steve) Lin National Chiao-Tung University Shirley, Fundamentals of Computer Graphics, Chap 10 Doug James CG slides, I-Chen Lin s CG slides Ray-tracing Review For each pixel,

### Ray Tracing. Cornell CS4620/5620 Fall 2012 Lecture Kavita Bala 1 (with previous instructors James/Marschner)

CS4620/5620: Lecture 37 Ray Tracing 1 Announcements Review session Tuesday 7-9, Phillips 101 Posted notes on slerp and perspective-correct texturing Prelim on Thu in B17 at 7:30pm 2 Basic ray tracing Basic

### Chapter 11 Global Illumination. Part 1 Ray Tracing. Reading: Angel s Interactive Computer Graphics (6 th ed.) Sections 11.1, 11.2, 11.

Chapter 11 Global Illumination Part 1 Ray Tracing Reading: Angel s Interactive Computer Graphics (6 th ed.) Sections 11.1, 11.2, 11.3 CG(U), Chap.11 Part 1:Ray Tracing 1 Can pipeline graphics renders images

### Global Rendering. Ingela Nyström 1. Effects needed for realism. The Rendering Equation. Local vs global rendering. Light-material interaction

Effects needed for realism Global Rendering Computer Graphics 1, Fall 2005 Lecture 7 4th ed.: Ch 6.10, 12.1-12.5 Shadows Reflections (Mirrors) Transparency Interreflections Detail (Textures etc.) Complex

### Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Computer Graphics (CS 543) Lecture 13b Ray Tracing (Part 1) Prof Emmanuel Agu Computer Science Dept. Worcester Polytechnic Institute (WPI) Raytracing Global illumination-based rendering method Simulates

### CS 428: Fall Introduction to. Raytracing. Andrew Nealen, Rutgers, /18/2009 1

CS 428: Fall 2009 Introduction to Computer Graphics Raytracing 11/18/2009 1 Forward ray tracing From the light sources Simulate light transport one ray at a time Rays start from lights + bounce around

### Introduction Ray tracing basics Advanced topics (shading) Advanced topics (geometry) Graphics 2010/2011, 4th quarter. Lecture 11: Ray tracing

Lecture 11 Ray tracing Introduction Projection vs. ray tracing Projection Ray tracing Rendering Projection vs. ray tracing Projection Ray tracing Basic methods for image generation Major areas of computer

### Motivation. Sampling and Reconstruction of Visual Appearance. Effects needed for Realism. Ray Tracing. Outline

Sampling and Reconstruction of Visual Appearance CSE 274 [Fall 2018], Special Lecture Ray Tracing Ravi Ramamoorthi http://www.cs.ucsd.edu/~ravir Motivation Ray Tracing is a core aspect of both offline

### Ray tracing. Computer Graphics COMP 770 (236) Spring Instructor: Brandon Lloyd 3/19/07 1

Ray tracing Computer Graphics COMP 770 (236) Spring 2007 Instructor: Brandon Lloyd 3/19/07 1 From last time Hidden surface removal Painter s algorithm Clipping algorithms Area subdivision BSP trees Z-Buffer

### Spatial Data Structures

15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) April 1, 2003 [Angel 9.10] Frank Pfenning Carnegie

### Computer Graphics. Si Lu. Fall uter_graphics.htm 11/22/2017

Computer Graphics Si Lu Fall 2017 http://web.cecs.pdx.edu/~lusi/cs447/cs447_547_comp uter_graphics.htm 11/22/2017 Last time o Splines 2 Today o Raytracing o Final Exam: 14:00-15:30, Novermber 29, 2017

### Review for Ray-tracing Algorithm and Hardware

Review for Ray-tracing Algorithm and Hardware Reporter: 邱敬捷博士候選人 Lan-Da Van ( 范倫達 ), Ph. D. Department of Computer Science National Chiao Tung University Taiwan, R.O.C. Summer, 2017 1 2017/7/26 Outline

### Spatial Data Structures

Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) [Angel 9.10] Outline Ray tracing review what rays matter? Ray tracing speedup faster

### Graphics 2009/2010, period 1. Lecture 8: ray tracing

Graphics 2009/2010, period 1 Lecture 8 Ray tracing Original plan Finish the basic stuff (book ch 1-9) today: We will not look into signal processing (chapter 4) We will look at triangle rasterization (cf.

### Rendering Part I (Basics & Ray tracing) Lecture 25 December 1, 2015

Rendering Part I (Basics & Ray tracing) Lecture 25 December 1, 2015 What is rendering? Generating an image from a 3D scene model Ingredients Representation of 3D geometry Specification for camera & lights

### Spatial Data Structures

15-462 Computer Graphics I Lecture 17 Spatial Data Structures Hierarchical Bounding Volumes Regular Grids Octrees BSP Trees Constructive Solid Geometry (CSG) March 28, 2002 [Angel 8.9] Frank Pfenning Carnegie

### Topics and things to know about them:

Practice Final CMSC 427 Distributed Tuesday, December 11, 2007 Review Session, Monday, December 17, 5:00pm, 4424 AV Williams Final: 10:30 AM Wednesday, December 19, 2007 General Guidelines: The final will

### 6. Illumination, Lighting

Jorg s Graphics Lecture Notes 6. Illumination, Lighting 1 6. Illumination, Lighting No ray tracing in OpenGL! ray tracing: direct paths COP interreflection: soft shadows, color bleeding. umbra, penumbra,

### Supplement to Lecture 16

Supplement to Lecture 16 Global Illumination: View Dependent CS 354 Computer Graphics http://www.cs.utexas.edu/~bajaj/ Notes and figures from Ed Angel: Interactive Computer Graphics, 6 th Ed., 2012 Addison

### Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1)

Computer Graphics Lecture 14 Bump-mapping, Global Illumination (1) Today - Bump mapping - Displacement mapping - Global Illumination Radiosity Bump Mapping - A method to increase the realism of 3D objects

### Rendering: Reality. Eye acts as pinhole camera. Photons from light hit objects

Basic Ray Tracing Rendering: Reality Eye acts as pinhole camera Photons from light hit objects Rendering: Reality Eye acts as pinhole camera Photons from light hit objects Rendering: Reality Eye acts as

### Level of Details in Computer Rendering

Level of Details in Computer Rendering Ariel Shamir Overview 1. Photo realism vs. Non photo realism (NPR) 2. Objects representations 3. Level of details Photo Realism Vs. Non Pixar Demonstrations Sketching,

### Mach band effect. The Mach band effect increases the visual unpleasant representation of curved surface using flat shading.

Mach band effect The Mach band effect increases the visual unpleasant representation of curved surface using flat shading. A B 320322: Graphics and Visualization 456 Mach band effect The Mach band effect

### Raytracing CS148 AS3. Due :59pm PDT

Raytracing CS148 AS3 Due 2010-07-25 11:59pm PDT We start our exploration of Rendering - the process of converting a high-level object-based description of scene into an image. We will do this by building

### Interpolation using scanline algorithm

Interpolation using scanline algorithm Idea: Exploit knowledge about already computed color values. Traverse projected triangle top-down using scanline. Compute start and end color value of each pixel

### Ray Casting. Outline in Code. Outline. Finding Ray Direction. Heckbert s Business Card Ray Tracer. Foundations of Computer Graphics (Fall 2012)

Foundations of Computer Graphics (Fall 2012) CS 184, Lectures 17, 18: Nuts and bolts of Ray Tracing Heckbert s Business Card Ray Tracer http://inst.eecs.berkeley.edu/~cs184 Acknowledgements: Thomas Funkhouser

### Ray Tracing. Foley & Van Dam, Chapters 15 and 16

Ray Tracing Foley & Van Dam, Chapters 15 and 16 Ray Tracing Visible Surface Ray Tracing (Ray Casting) Examples Efficiency Issues Computing Boolean Set Operations Recursive Ray Tracing Determine visibility

### Ray Tracing Foley & Van Dam, Chapters 15 and 16

Foley & Van Dam, Chapters 15 and 16 (Ray Casting) Examples Efficiency Issues Computing Boolean Set Operations Recursive Determine visibility of a surface by tracing rays of light from the viewer s eye

### Lecture 15: Shading-I. CITS3003 Graphics & Animation

Lecture 15: Shading-I CITS3003 Graphics & Animation E. Angel and D. Shreiner: Interactive Computer Graphics 6E Addison-Wesley 2012 Objectives Learn that with appropriate shading so objects appear as threedimensional

### Virtual Reality for Human Computer Interaction

Virtual Reality for Human Computer Interaction Appearance: Lighting Representation of Light and Color Do we need to represent all I! to represent a color C(I)? No we can approximate using a three-color

### Ray Tracing. CS334 Fall Daniel G. Aliaga Department of Computer Science Purdue University

Ray Tracing CS334 Fall 2013 Daniel G. Aliaga Department of Computer Science Purdue University Ray Casting and Ray Tracing Ray Casting Arthur Appel, started around 1968 Ray Tracing Turner Whitted, started

### Ray Tracing Basics I. Computer Graphics as Virtual Photography. camera (captures light) real scene. photo. Photographic print. Photography: processing

Ray Tracing Basics I Computer Graphics as Virtual Photography Photography: real scene camera (captures light) photo processing Photographic print processing Computer Graphics: 3D models camera model (focuses

Lighting and Shading Today: Local Illumination Solving the rendering equation is too expensive First do local illumination Then hack in reflections and shadows Local Shading: Notation light intensity in,

### COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

COMP 4801 Final Year Project Ray Tracing for Computer Graphics Final Project Report FYP 15014 by Runjing Liu Advised by Dr. L.Y. Wei 1 Abstract The goal of this project was to use ray tracing in a rendering

### Rendering. Converting a 3D scene to a 2D image. Camera. Light. Rendering. View Plane

Rendering Pipeline Rendering Converting a 3D scene to a 2D image Rendering Light Camera 3D Model View Plane Rendering Converting a 3D scene to a 2D image Basic rendering tasks: Modeling: creating the world

### Consider a partially transparent object that is illuminated with two lights, one visible from each side of the object. Start with a ray from the eye

Ray Tracing What was the rendering equation? Motivate & list the terms. Relate the rendering equation to forward ray tracing. Why is forward ray tracing not good for image formation? What is the difference

### Today. Anti-aliasing Surface Parametrization Soft Shadows Global Illumination. Exercise 2. Path Tracing Radiosity

Today Anti-aliasing Surface Parametrization Soft Shadows Global Illumination Path Tracing Radiosity Exercise 2 Sampling Ray Casting is a form of discrete sampling. Rendered Image: Sampling of the ground

### Lighting and Shading Computer Graphics I Lecture 7. Light Sources Phong Illumination Model Normal Vectors [Angel, Ch

15-462 Computer Graphics I Lecture 7 Lighting and Shading February 12, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/ Light Sources Phong Illumination Model

### COMPLETION OF Z-buffer Graphics Pipeline

Z-buffer algorithm for each polygon in model project vertices of polygon onto viewing plane for each pixel inside the projected polygon calculate pixel colour calculate pixel z-value compare pixel z-value

### Questions??? Announcements Assignment 3 due today

Announcements Assignment 3 due today Questions??? Remember that you have late days (if you haven t used them yet ) Problem set 3 out at the end of the day Movie for Assignment 2 at the end of class 1 Ray

Last Time? The Traditional Graphics Pipeline Participating Media Measuring BRDFs 3D Digitizing & Scattering BSSRDFs Monte Carlo Simulation Dipole Approximation Today Ray Casting / Tracing Advantages? Ray

### Single Scattering in Refractive Media with Triangle Mesh Boundaries

Single Scattering in Refractive Media with Triangle Mesh Boundaries Bruce Walter Shuang Zhao Nicolas Holzschuch Kavita Bala Cornell Univ. Cornell Univ. Grenoble Univ. Cornell Univ. Presented at SIGGRAPH

### Ray Tracer Due date: April 27, 2011

Computer graphics Assignment 4 1 Overview Ray Tracer Due date: April 27, 2011 In this assignment you will implement the camera and several primitive objects for a ray tracer, and a basic ray tracing algorithm.

### Introduction to Visualization and Computer Graphics

Introduction to Visualization and Computer Graphics DH2320, Fall 2015 Prof. Dr. Tino Weinkauf Introduction to Visualization and Computer Graphics Visibility Shading 3D Rendering Geometric Model Color Perspective

Advanced Ray Tracing Thanks to Fredo Durand and Barb Cutler The Ray Tree Ni surface normal Ri reflected ray Li shadow ray Ti transmitted (refracted) ray 51 MIT EECS 6.837, Cutler and Durand 1 Ray Tree

### COMPUTER GRAPHICS AND INTERACTION

DH2323 DGI17 COMPUTER GRAPHICS AND INTERACTION INTRODUCTION TO RAYTRACING Christopher Peters CST, KTH Royal Institute of Technology, Sweden chpeters@kth.se http://kth.academia.edu/christopheredwardpeters

### The Rendering Equation & Monte Carlo Ray Tracing

Last Time? Local Illumination & Monte Carlo Ray Tracing BRDF Ideal Diffuse Reflectance Ideal Specular Reflectance The Phong Model Radiosity Equation/Matrix Calculating the Form Factors Aj Ai Reading for

### CS 465 Program 5: Ray II

CS 465 Program 5: Ray II out: Friday 2 November 2007 due: Saturday 1 December 2007 Sunday 2 December 2007 midnight 1 Introduction In the first ray tracing assignment you built a simple ray tracer that

### Ray Casting. To Do. Outline. Outline in Code. Foundations of Computer Graphics (Spring 2012) Heckbert s Business Card Ray Tracer

Foundations of Computer Graphics (Spring 2012) CS 184, Lectures 16, 18: Nuts and bolts of Ray Tracing To Do Finish homework 3 Prepare for Midterm (Monday) Everything before this week (no raytracing) Closed

### 03 RENDERING PART TWO

03 RENDERING PART TWO WHAT WE HAVE SO FAR: GEOMETRY AFTER TRANSFORMATION AND SOME BASIC CLIPPING / CULLING TEXTURES AND MAPPING MATERIAL VISUALLY DISTINGUISHES 2 OBJECTS WITH IDENTICAL GEOMETRY FOR NOW,

### Recursive Ray Tracing. Ron Goldman Department of Computer Science Rice University

Recursive Ray Tracing Ron Goldman Department of Computer Science Rice University Setup 1. Eye Point 2. Viewing Screen 3. Light Sources 4. Objects in Scene a. Reflectivity b. Transparency c. Index of Refraction

### Assignment 6: Ray Tracing

Assignment 6: Ray Tracing Programming Lab Due: Monday, April 20 (midnight) 1 Introduction Throughout this semester you have written code that manipulated shapes and cameras to prepare a scene for rendering.

### COMP371 COMPUTER GRAPHICS

COMP371 COMPUTER GRAPHICS SESSION 15 RAY TRACING 1 Announcements Programming Assignment 3 out today - overview @ end of the class Ray Tracing 2 Lecture Overview Review of last class Ray Tracing 3 Local

### Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007

Problem Set 4 Part 1 CMSC 427 Distributed: Thursday, November 1, 2007 Due: Tuesday, November 20, 2007 Programming For this assignment you will write a simple ray tracer. It will be written in C++ without

Last Time? The Traditional Graphics Pipeline Reading for Today A Practical Model for Subsurface Light Transport, Jensen, Marschner, Levoy, & Hanrahan, SIGGRAPH 2001 Participating Media Measuring BRDFs

### Ray Tracing. CSCI 420 Computer Graphics Lecture 15. Ray Casting Shadow Rays Reflection and Transmission [Ch ]

CSCI 420 Computer Graphics Lecture 15 Ray Tracing Ray Casting Shadow Rays Reflection and Transmission [Ch. 13.2-13.3] Jernej Barbic University of Southern California 1 Local Illumination Object illuminations

### Last Time: Acceleration Data Structures for Ray Tracing. Schedule. Today. Shadows & Light Sources. Shadows

Last Time: Acceleration Data Structures for Ray Tracing Modeling Transformations Illumination (Shading) Viewing Transformation (Perspective / Orthographic) Clipping Projection (to Screen Space) Scan Conversion

### Advanced Graphics. Path Tracing and Photon Mapping Part 2. Path Tracing and Photon Mapping

Advanced Graphics Path Tracing and Photon Mapping Part 2 Path Tracing and Photon Mapping Importance Sampling Combine importance sampling techniques Reflectance function (diffuse + specular) Light source

### Implicit Surfaces & Solid Representations COS 426

Implicit Surfaces & Solid Representations COS 426 3D Object Representations Desirable properties of an object representation Easy to acquire Accurate Concise Intuitive editing Efficient editing Efficient

### CS 325 Computer Graphics

CS 325 Computer Graphics 04 / 02 / 2012 Instructor: Michael Eckmann Today s Topics Questions? Comments? Illumination modelling Ambient, Diffuse, Specular Reflection Surface Rendering / Shading models Flat

### Introduction to Computer Graphics 7. Shading

Introduction to Computer Graphics 7. Shading National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor Textbook: Hearn and Baker, Computer Graphics, 3rd Ed., Prentice Hall Ref: E.Angel, Interactive

### SUMMARY. CS380: Introduction to Computer Graphics Ray tracing Chapter 20. Min H. Kim KAIST School of Computing 18/05/29. Modeling

CS380: Introduction to Computer Graphics Ray tracing Chapter 20 Min H. Kim KAIST School of Computing Modeling SUMMARY 2 1 Types of coordinate function Explicit function: Line example: Implicit function:

### CS 130 Exam I. Fall 2015

S 3 Exam I Fall 25 Name Student ID Signature You may not ask any questions during the test. If you believe that there is something wrong with a question, write down what you think the question is trying

### Photorealism: Ray Tracing

Photorealism: Ray Tracing Reading Assignment: Chapter 13 Local vs. Global Illumination Local Illumination depends on local object and light sources only Global Illumination at a point can depend on any

Final Projects Proposals due Thursday 4/8 Proposed project summary At least 3 related papers (read & summarized) Description of series of test cases Timeline & initial task assignment The Traditional Graphics

Reflection and Shading R. J. Renka Department of Computer Science & Engineering University of North Texas 10/19/2015 Light Sources Realistic rendering requires that we model the interaction between light

### CPSC 314 LIGHTING AND SHADING

CPSC 314 LIGHTING AND SHADING UGRAD.CS.UBC.CA/~CS314 slide credits: Mikhail Bessmeltsev et al 1 THE RENDERING PIPELINE Vertices and attributes Vertex Shader Modelview transform Per-vertex attributes Vertex

### Lecture 11. More Ray Casting/Tracing

Lecture 11 More Ray Casting/Tracing Basic Algorithm For each pixel { } Shoot a ray from camera to pixel for all objects in scene Compute intersection with ray Find object with closest intersection Display

### Announcements. Written Assignment 2 out (due March 8) Computer Graphics

Announcements Written Assignment 2 out (due March 8) 1 Advanced Ray Tracing (Recursive) Ray Tracing Antialiasing Motion Blur Distribution Ray Tracing Ray Tracing and Radiosity Assumptions Simple shading

### Chapter 7 - Light, Materials, Appearance

Chapter 7 - Light, Materials, Appearance Types of light in nature and in CG Shadows Using lights in CG Illumination models Textures and maps Procedural surface descriptions Literature: E. Angel/D. Shreiner,

### Ray Casting. Outline. Similar to glulookat derivation. Foundations of Computer Graphics

Foundations of omputer Graphics Online Lecture 10: Ray Tracing 2 Nuts and olts amera Ray asting Outline amera Ray asting (choose ray directions) Ravi Ramamoorthi Outline in ode Image Raytrace (amera cam,

### 6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, :05-12pm Two hand-written sheet of notes (4 pages) allowed 1 SSD [ /17]

6.837 Introduction to Computer Graphics Final Exam Tuesday, December 20, 2011 9:05-12pm Two hand-written sheet of notes (4 pages) allowed NAME: 1 / 17 2 / 12 3 / 35 4 / 8 5 / 18 Total / 90 1 SSD [ /17]

### The exam begins at 2:40pm and ends at 4:00pm. You must turn your exam in when time is announced or risk not having it accepted.

CS 184: Foundations of Computer Graphics page 1 of 10 Student Name: Class Account Username: Instructions: Read them carefully! The exam begins at 2:40pm and ends at 4:00pm. You must turn your exam in when

### I have a meeting with Peter Lee and Bob Cosgrove on Wednesday to discuss the future of the cluster. Computer Graphics

Announcements Assignment 4 will be out later today Problem Set 3 is due today or tomorrow by 9am in my mail box (4 th floor NSH) How are the machines working out? I have a meeting with Peter Lee and Bob

### CHAPTER 1 Graphics Systems and Models 3

?????? 1 CHAPTER 1 Graphics Systems and Models 3 1.1 Applications of Computer Graphics 4 1.1.1 Display of Information............. 4 1.1.2 Design.................... 5 1.1.3 Simulation and Animation...........

### Ray tracing. EECS 487 March 19,

Ray tracing EECS 487 March 19, 2007 http://radsite.lbl.gov/radiance/book/ 1 Conventional pipeline (rasterization) For each triangle Compute lighting at vertices For each pixel within triangle Compute interpolated