Ray Tracing: Whence and Whither?

Similar documents
Ray Tracing. CPSC 453 Fall 2018 Sonny Chan

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

Intro to Ray-Tracing & Ray-Surface Acceleration

Sung-Eui Yoon ( 윤성의 )

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

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

Photorealism: Ray Tracing

Shadows. COMP 575/770 Spring 2013

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

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

Ray Tracing Foley & Van Dam, Chapters 15 and 16

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

Assignment 6: Ray Tracing

Viewing and Ray Tracing. CS 4620 Lecture 4

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

Viewing and Ray Tracing

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

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

Fog and Cloud Effects. Karl Smeltzer Alice Cao John Comstock

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

Lecture 11: Ray tracing (cont.)

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

The OpenRT Real-Time Ray-Tracing Project

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

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

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

INFOGR Computer Graphics. J. Bikker - April-July Lecture 10: Ground Truth. Welcome!

CPSC GLOBAL ILLUMINATION

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

Recursion and Data Structures in Computer Graphics. Ray Tracing

Ray tracing idea. Ray Tracing. Ray tracing algorithm. Plane projection in drawing. CS 465 Lecture 3

CS 563 Advanced Topics in Computer Graphics Lecture 2: Bare-Bones Raytracer. by Emmanuel Agu

Ray Tracing. Outline. Ray Tracing: History

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

Distribution Ray Tracing

A Little Background. Motivation. Motivation

Distributed Ray Tracing

CS 4620 Midterm, March 21, 2017

Computer Graphics. - Ray Tracing I - Marcus Magnor Philipp Slusallek. Computer Graphics WS05/06 Ray Tracing I

Ray Tracing. CS 4620 Lecture 5

Particle systems, collision detection, and ray tracing. Computer Graphics CSE 167 Lecture 17

Part IV. Review of hardware-trends for real-time ray tracing

CS348B Lecture 2 Pat Hanrahan, Spring Greeks: Do light rays proceed from the eye to the light, or from the light to the eye?

Ray tracing. EECS 487 March 19,

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

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

Computer Graphics Ray Casting. Matthias Teschner

03 RENDERING PART TWO

Lecture 1. Computer Graphics and Systems. Tuesday, January 15, 13

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

Benchmark 1.a Investigate and Understand Designated Lab Techniques The student will investigate and understand designated lab techniques.

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

Homework #2. Hidden Surfaces, Projections, Shading and Texture, Ray Tracing, and Parametric Curves

Ray Tracing COMP575/COMP770

Ray Tracing. Computer Graphics CMU /15-662, Fall 2016

The University of Calgary

EF432. Introduction to spagetti and meatballs

Ray Tracing I: Basics

CS-184: Computer Graphics. Administrative

Computer Graphics and Image Processing Ray Tracing I

Accelerating Geometric Queries. Computer Graphics CMU /15-662, Fall 2016

Lecture 10: Ray tracing

Ray Tracing. Brian Curless CSEP 557 Fall 2016

CS559 Computer Graphics Fall 2015

Advanced Ray Tracing

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

Point based Rendering

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

Photorealistic 3D Rendering for VW in Mobile Devices

Ray Tracing Part 1. CSC418/2504 Introduction to Computer Graphics. TA: Muhammed Anwar & Kevin Gibson

Visual cues to 3D geometry. Light Reflection and Advanced Shading. Shading. Recognizing materials. size (perspective) occlusion shading

Project 1 Simple Ray Tracer

Supplement to Lecture 16

Practical 2: Ray Tracing

Local vs. Global Illumination & Radiosity

Ray Tracing. Shandong University

Ray Tracing. Kjetil Babington

Me Again! Peter Chapman. if it s important / time-sensitive

Programming projects. Assignment 1: Basic ray tracer. Assignment 1: Basic ray tracer. Assignment 1: Basic ray tracer. Assignment 1: Basic ray tracer

3D Rendering and Ray Casting

Ray Tracing. Last Time? Reading for Today. Reading for Today

Com S 336 Final Project Ideas

Ray Tracing CSCI 4239/5239 Advanced Computer Graphics Spring 2018

CSE528 Computer Graphics: Theory, Algorithms, and Applications

Introduction to Ray-tracing Objectives

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

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

Questions??? Announcements Assignment 3 due today

Computer Graphics Global Illumination

Next-Generation Graphics on Larrabee. Tim Foley Intel Corp

Advanced Computer Graphics CS 563: Making Imperfect Shadow Maps View Adaptive. Frederik Clinck lie

Review for Ray-tracing Algorithm and Hardware

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

COMP250: Computer Graphics

Hidden Surface Elimination Raytracing. Pre-lecture business. Outline for today. Review Quiz. Image-Space vs. Object-Space

Enhancing Traditional Rasterization Graphics with Ray Tracing. October 2015

Review. Stephen J. Guy

Simple Nested Dielectrics in Ray Traced Images

CS Computer Graphics: Introduction to Ray Tracing

CS Computer Graphics: Introduction to Ray Tracing

Transcription:

Ray Tracing: Whence and Whither? Dave Edwards April 24, 2008

Introduction Rendering Input: description of a scene (geometry, materials) Ouput: image or images (i.e., movie) Two main components Computing visibility (what objects can I see from a given location?) Shading (what color are those objects?) Two main approaches Rasterization Ray tracing

Rasterization Overview

Rasterization Overview

Rasterization Overview

Rasterization Overview

Rasterization Overview

Rasterization Overview

Rasterization Overview Almost all graphics hardware is raster-based Works almost exclusively with triangles Computes shading first, then visibility Parallel over triangles, except for visibility test Global illumination effects require additional rendering passes

Ray Tracing Overview

Ray Tracing Overview

Ray Tracing Overview

Ray Tracing Overview

Ray Tracing Overview

Ray Tracing Overview Introduced by Turner Whitted in 1980 Computes visibility first, then shading Implemented exclusively in software until recently More flexible than hardware (e.g., we can ray trace objects other than triangles) Parallel over rays Tends to scale very well with additional processors Simple to render global effects using recursive ray tracing

Interactive Ray Tracing Until the late 1990s, rasterization was used for interactive rendering, and ray-based methods were used for batch rendering Early prototypes of interactive ray tracers Muuss 1995 Parker et al. 1997 (RTRT) Since: OpenRT, Manta, others There are even some prototype hardware ray tracers (e.g., Saarcor, RPU) Interactivity is allowed by advances in software and hardware

Quotes I m not really bullish on [ray tracing] taking over for primary rendering tasks... Head to head rasterization is just a vastly more efficient use of whatever transistors you have available. - John Carmack, Game Programmer, id Software

Quotes I don t see classical ray tracing in its current form becoming the dominant [rendering] solution.... We may find it being present in a more significant portion in overall real-time 3D graphics solutions though in 3 5 years from now. - Cevat Yerli, CEO, Crytek

Quotes... I do believe that hybrid rendering is the future. Ray tracing is excellent at producing some effects, but slow at others. So, if you try to use ray tracing for everything, there is a very good chance that it won t be very fast. - David Kirk, Chief Scientist, NVIDIA

Quotes Ray Tracing has the potential to become the widely used rendering technology on desktop computers... [A] hybrid rendering approach for rendering the 3D world might not be the best idea. - Daniel Pohl, Researcher, Intel

Recent Developments Since 2006, IEEE has held an annual Symposium on Interactive Ray Tracing Ray tracing researchers being hired by many companies Intel s Larrabee architecture At least 10 cores per chip 16-wide floating point processor

Ray Tracing Details: Rays Ray is specified by an origin and direction Or equivalently, origin and another point on the ray One-dimensional parameter t changes along ray Parametric equation: R(t) = o + td, where t [0, )

Generating Primary Rays Compute visibility by tracing a ray through each pixel

Ray-Object Intersection There are algorithms for determining the t value where a ray hits an object Triangles (linear equation) Spheres (quadratic equation) Tori (quartic equation) Implicit surfaces (root finding) Volumetric data (root finding)

Intersections with Multiple Objects The true intersection is the one with the lowest positive t value

Shading by Recursive Ray Tracing To determine if a point in the scene is shadowed: Trace a ray from the point to the light source Compute the t value where the ray hits the light The point is in shadow if the ray intersects any object in the scene before hitting the light

Shading by Recursive Ray Tracing This is just the visibility problem again!

Is One Ray Per Pixel Enough?

Is One Ray Per Pixel Enough?

Is One Ray Per Pixel Enough?

Is One Ray Per Pixel Enough?

Distributed Ray Tracing (DRT) Cook et al. 1984 If we re tracing multiple rays per pixel, why not use them for something interesting (e.g., motion blur)?

DRT Example

The Importance of Perception

Difference Images We can compute the difference of the values of corresponding pixels in two images

The Visual Differences Predictor VDP algorithm [Daly 1993] estimates the probability of detecting a difference for each pixel

Big-picture Perceptual Questions The important (and complex) perceptual question is: How good is good enough? The ultimate judge of a rendering system are human viewers

Open Questions Is ray tracing hardware necessary to make ray tracing a competitive method? If so, is it sufficient to make ray tracing a competitive method? Can hybrid (raster-based + ray-based) methods work effectively? How do we keep ray tracing efficient for dynamic scenes?

Final Thoughts Ray-based rendering is a controversial and interesting topic If the only tool you have is a hammer, you tend to see every problem as a nail. - Abraham Maslow We need people with a good understanding of hardware, rasterization, and ray tracing More information: http://www.cs.utah.edu/ edwards/gcc/ Email: edwards@cs.utah.edu

Thank You! Questions?