CS 563 Advanced Topics in Computer Graphics. by Emmanuel Agu

Similar documents
CS348B: Image Synthesis

by Emmanuel Agu Dr. Emmanuel Agu (professor, Emmanuel ) Research areas

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

Goals. Computer Graphics (Fall 2008) Course Outline. Course Outline. Course Outline. Demo: Surreal and Crazy World (HW 3)

History of computer graphics

Schedule. MIT Monte-Carlo Ray Tracing. Radiosity. Review of last week? Limitations of radiosity. Radiosity

CS380: Computer Graphics Introduction. Sung-Eui Yoon ( 윤성의 ) Course URL:

Discussion. Smoothness of Indirect Lighting. History and Outline. Irradiance Calculation. Irradiance Caching. Advanced Computer Graphics (Spring 2013)

MIT Monte-Carlo Ray Tracing. MIT EECS 6.837, Cutler and Durand 1

Global Illumination. Why Global Illumination. Pros/Cons and Applications. What s Global Illumination

Instructor. Goals. Image Synthesis Examples. Applications. Foundations of Computer Graphics. Why Study 3D Computer Graphics?

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

Evolution of Imaging Technology in Computer Graphics. Related Areas

Final Project: Real-Time Global Illumination with Radiance Regression Functions

Lahore University of Management Sciences. CS 452 Computer Graphics

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

Global Illumination. CSCI 420 Computer Graphics Lecture 18. BRDFs Raytracing and Radiosity Subsurface Scattering Photon Mapping [Ch

Global Illumination. Global Illumination. Direct Illumination vs. Global Illumination. Indirect Illumination. Soft Shadows.

CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms, and Applications

Overview. Computer Graphics CSE 167

CS 5625 Lec 2: Shading Models

Global Illumination. Global Illumination. Direct Illumination vs. Global Illumination. Indirect Illumination. Soft Shadows.

Choosing the right course

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

Intro to Ray-Tracing & Ray-Surface Acceleration

The Traditional Graphics Pipeline

Photon Mapping. Due: 3/24/05, 11:59 PM

Rendering Light Reflection Models

CSCI 4972/6963 Advanced Computer Graphics Quiz 2 Tuesday April 17, 2007 noon-1:30pm

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

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

Computer Graphics CS 543 Lecture 1 (Part I) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

Chapter 7 - Light, Materials, Appearance

Photon Mapping. Michael Doggett Department of Computer Science Lund university

Rendering and Radiosity. Introduction to Design Media Lecture 4 John Lee

Lahore University of Management Sciences. CS 452 Computer Graphics

Illumination Algorithms

To Do. Real-Time High Quality Rendering. Motivation for Lecture. Monte Carlo Path Tracing. Monte Carlo Path Tracing. Monte Carlo Path Tracing

Rendering Light Reflection Models

CS5620 Intro to Computer Graphics

Computer Graphics (CS 543) Lecture 8 (Part 1): Physically-Based Lighting Models

Welcome to COMP 770 (236) Introduction. Prerequisites. Prerequisites

Computer Graphics (CS 543) Lecture 7b: Intro to lighting, Shading and Materials + Phong Lighting Model

COMPUTER GRAPHICS CS

Computer Graphics Disciplines. Grading. Textbooks. Course Overview. Assignment Policies. Computer Graphics Goals I

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

Review. Stephen J. Guy

CMSC427 Shading Intro. Credit: slides from Dr. Zwicker

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

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

A Brief Overview of. Global Illumination. Thomas Larsson, Afshin Ameri Mälardalen University

CS380: Computer Graphics Introduction. Sung-Eui Yoon ( 윤성의 ) Course URL:

Global Illumination. COMP 575/770 Spring 2013

Goals. Course Staff. Demo: Surreal (HW 3) Entertainment. Foundations of Computer Graphics (Spring 2012) Why Study 3D Computer Graphics?

The Traditional Graphics Pipeline

CIS 581 Interactive Computer Graphics

Global Illumination CS334. Daniel G. Aliaga Department of Computer Science Purdue University

CS 428: Fall Introduction to. Realism (overview) Andrew Nealen, Rutgers, /11/2009 1

Advanced Maya Texturing and Lighting

Overview. Computer Graphics CS324. OpenGL. Books. Learning Resources. CS131 Notes. 30 Lectures 3hr Exam

CSCI-6962 Advanced Computer Graphics

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

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Requirements. Reference Books. Textbook

CS 431/636 Advanced Rendering Techniques

Advanced Maya e Texturing. and Lighting. Second Edition WILEY PUBLISHING, INC.

EDAN30 Photorealistic Computer Graphics

Sung-Eui Yoon ( 윤성의 )

Lecture 32 of 41. Lab 6: Ray Tracing with ACM SIGGRAPH Demo & POV-Ray

CSCD18: Computer Graphics. Instructor: Leonid Sigal

Computer Graphics (CS 4731) Lecture 16: Lighting, Shading and Materials (Part 1)

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

Local vs. Global Illumination & Radiosity

Specular reflection. Lighting II. Snell s Law. Refraction at boundary of media

Outline of Lecture. Real-Time High Quality Rendering. Geometry or Vertex Pipeline. Basic Hardware Pipeline. Pixel or Fragment Pipeline

15-462: Computer Graphics. Jessica Hodgins and Alla Safonova

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

Today. Global illumination. Shading. Interactive applications. Rendering pipeline. Computergrafik. Shading Introduction Local shading models

Light Reflection Models

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

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

Computer Graphics Introduction. Taku Komura

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

782 Schedule & Notes

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

The Rendering Equation. Computer Graphics CMU /15-662

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

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

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

Introduction to Visualization and Computer Graphics

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

The Rendering Equation & Monte Carlo Ray Tracing

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

EF432. Introduction to spagetti and meatballs

Lecturer Athanasios Nikolaidis

CS4620/5620 Introduction to Computer Graphics

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

Lecture 18: Primer on Ray Tracing Techniques

CS 488. More Shading and Illumination. Luc RENAMBOT

Other Rendering Techniques CSE 872 Fall Intro You have seen Scanline converter (+z-buffer) Painter s algorithm Radiosity CSE 872 Fall

Transcription:

CS 563 Advanced Topics in Computer Graphics by Emmanuel Agu

Outline Overview: about me, about class What is photorealistic rendering? Raytracing introduction

Professor Background Dr. Emmanuel Agu (professor, Emmanuel ) Research areas Computer Graphics (photorealistic rendering, etc) Mobile Computing (mobile graphics, cell, iphone, etc) Wireless networking This class: creating computer-generated photorealistic images Ray tracing Humans (face, skin) Nature (water, trees, seashells) Animals (feathers) etc Research opportunities Independent Study Project MQP MS theses PhD theses

Student Background Name Class (undergrad (seniors), masters, PhD ) Full and Part-time student Programming experience (C, C++, java) Systems experience (Unix, windows, ) Helpful background At least one graphics class taken Solid math skills. Other (Physics, computer vision, image science,???) Students intro themselves! Important: fill in above info, say what you want from this class

Course Prerequisites No official prerequisite However, will assume you Can program in C/C++ Have probably taken at least 1 graphics course (OpenGL?), based on raster graphics? You are fearless. can quickly pick up graphics and image processing algorithms and techniques, (lectures will briefly cover them in class as needed) have background in calculus, linear algebra Can read/understand text, research articles, fill in gaps Can program in C, learn rendering package, tools Still have questions? See me

Syllabus http://www.cs.wpi.edu/~emmanuel/courses/cs563/s10/ Office hours: Wednesdays: 4:30-5:30 Note: Please use office hours or book appointments Questions of general interest, post on mywpi Email me if you have specific questions Text Book: Ray tracing from the ground up plus selected papers Note: Most lectures will be based on the text. But student can supplement from papers, web

Textbook Ray Tracing from the ground up by Kevin Suffern Author has experience in ray tracing Grew out of his classes Text Condenses lots of state-ofthe art theory + code + explanation of code Working code, more concrete

Course Structure Grading No exams About 4 presentations each (40%) Class participation: discussions, answer questions (10%) One final rendering project, chosen by you (50%) Students will score other projects at the end. Part of grade determined by your peers

Why This Class? WPI graduate course requirements Masters, PhD, grad course requirements WPI research requirements Want to do research in graphics (MS, PhD theses) Work in graphics Rendering for movie studio, architectural firm, etc Animation, etc. Hobbyist Want to build cooler stuff Understand more how visual effects, etc happen

Course Objectives Understand state-of-the-art techniques for photorealistic rendering Become conversant with cutting edge graphics literature Hands-on exploration of one (or more) of the techniques encountered (a project). Learning and using raytracing to generate amazing pictures. Possibly extend one of the studied techniques, implement new ones

Class Time Two halves with 15 minutes break Each half 50 minute presentation followed by 20 minute discussion of topic(s) and questions Commons presentation mistakes Avoid: putting too much on a slide (talk!!) Too many slides for alloted time (2-3 mins/slide) 50 mins: about 20 25 slides First two student presentations in two weeks time

Presentations I will try to guide you on how to present effectively I will be strict with time if you go too long Get right to the point (core), offer motivation & insights Communicate basic ideas to fellow students Offer a roadmap for studying the paper Look over reading list & let me know which topics you want to present Note: can use additional resources to build your talk. Must give credit. If not.. Cheating!!! Don t just summarize! Find authors websites, videos, images, supplementary cool stuff

Final Project Implement one of the rendering techniques discussed in class, use ray tracer from text May also use high end package to create models Maya Renderman Blender PovRay, etc Must submit your final project proposal by March 31 st, 2010 Can get ambitious: Implement new photorealistic technique from a paper Ideas?? See Stanford rendering competition http://graphics.stanford.edu/courses/cs348bcompetition/

Where to do the projects: On your home computer, download ray tracer On campus computer labs Class text Supplementary books: Class resources Physically-based rendering by Pharr and Humphreys Computer graphics using OpenGL by F.S. Hill and Kelley, 3 rd edition, Chapter 12 Other books I place on reserve in CS 563 folder in library

Outline Overview: about me, about class What is photorealistic rendering? Raytracing introduction

Create a 2D picture of a 3D world Photorealistic: Indistinguishable from photo What is Rendering?

Applications Movies Industrial design Architecture Demo products Virtual reality (games)

Photorealistic vs realtime rendering Photorealistic rendering (E.g. Ray tracing) Can take days to render Used in: movies, adverts Raster graphics: (E.g. OpenGL, DirectX) fast: milliseconds to render poor image quality Used in: games, simulators

Photorealistic Rendering Ingredients: Require good models for Geometry (Realistic shapes, meshes) Light source (sky, light bulb, flourescent) Volume through which light travels (smoke, fog, mist, water) Materials: Reflection/refraction at object surfaces (velvet, wood, polished, rough, smooth) Cameras: Lens and film Old approach: Fudge it! (E.g. Phong s shading) New approach: study light physics derive models, adapt equations from physics papers Use physically-based models for rendering Capture: Place cameras/equipment around real objects/phenomena and collect data Measure: phenomena

uses physics to simulate the interaction between matter and light, realism is primary goal Physically-based rendering

1. Appearance Exactly What Can We Capture? 2. Geometry 3. Reflectance & Illumination 4. Motion

Scanning 3D geometry Quest for greater realism: Trend in Computer Graphics towards very large polygonal models Projects on precise 3D scanning (Stanford, IBM,etc) Model: David, 2 billion polygons Courtesy: Stanford Michael Angelo 3D scanning project

What can we model?

Physically-based Appearance Models Why? Sky appears blue? Wet sand appears darker than dry sand? Iridescent surfaces (CD-ROM, butterflies, hummingbird) wings) appear to have different colors when viewed in different directions? Old and weathered surfaces appear different from new ones? Rusted surfaces appear different from un-rusted ones? Appearance models in computer graphics and vision try to answer these questions Using physics-based appearance models to render: Humans (face, skin) Nature (water, trees, seashells) Animals (feathers, butterflies)

History: Geometric Aspects First Transformation/clipping and the graphics pipeline Evans and Sutherland Hidden line and surface algorithms Sutherland, Sproull, Shumacker

History: Simple Shading Simple shading and texturing Gouraud interpolating colors Phong interpolating normals Blinn, Catmull, Williams texturing

History: Optical Aspects Second Reflection and texture models Cook and Torrance BRDF Perlin Procedural textures Cook, Perlin Shading languages Illumination algorithms Whitted Ray tracing Cohen, Goral, Wallace, Greenberg, Torrance Nishita, Nakamae Radiosity Kajiya Rendering equation

Lighting

The Rendering Equation Lighting Simulation Given a scene consisting of geometric primitives with material properties and a set of light sources, compute the illumination at each point on each surface Challenges Primitives complex: lights, materials, shapes Infinite number of light paths How to solve it? Radiosity Finite element Ray tracing Monte Carlo

Lighting Example: Cornell Box Hard Shadows Caustics Surface Color Indirect Illumination

Lighting Example: Diffuse Reflection Surface Color Diffuse Shading

Lighting Example: Shadows No Shadows Shadows

Lighting Example: Soft Shadows Hard Shadows Point Light Source Soft Shadows Area Light Source

Radiosity: Indirect Illumination Simulated Program of Computer Graphics Cornell University

Early Radiosity

Early, Early Radiosity Parry Moon and Domina Spencer (MIT), Lighting Design, 1948

Lighting Effects: Glossy Materials Hard Shadows Soft Shadows Caustics Indirect Illumination

Caustics Jensen 1995

Complex lighting

Mies Courtyard House with Curved Elements Complex Indirect Illumination Modeling: Stephen Duck; Rendering: Henrik Wann Jensen

Radiosity: Turing Test Measured Simulated Program of Computer Graphics Cornell University

Materials

Plastic Classic Computer Graphics Model

Brushed Copper Classic Computer Graphics Model

Material Taxonomy RenderMan Plastic Shiny Plastic Rough Metal Shiny Metal Matte From Apodaca and Gritz, Advanced RenderMan

Shadows on Rough Surfaces Without self-shadowing With self-shadowing

Translucency Surface Reflection Subsurface Reflection

Translucent objects

Water Flows on the Venus

A Sense of TIme Patinas

Virtual Actors: Faces Final Fantasy SquareUSA Jensen, Marschner, Levoy, Hanrahan

Virtual Actors: Hair Black Brown

Iridescent: Wavelength-dependent phenomena Refraction/dispersion

Fedkiw, Stam, Jensen 2001 Coupling Modeling & Rendering

Clouds and Atmospheric Phenomena Hogum Mountain Sunrise and sunset 7am 9am Modeling: Simon Premoze William Thompson 6:30pm Rendering: Henrik Wann Jensen

Vegetation

Texture and complex materials

Outline Overview: about me, about class What is photorealistic rendering? Introduction to Raytracing

Introduction to ray tracing

Ray Casting (Appel, 1968) Light source Virtual Screen Objects to Ray trace View point (eye)

Ray Casting (Appel, 1968) Case A Case B 1. Build ray 2. Cast ray into scene through pixel ray = origin + ( direction) t r( t) = eye + dir t rc Case A: Hits no objects (background) Case B: Hits at least one object

Ray Casting (Appel, 1968) 1. Ray hits object, build secondary ray to light source 2. Evaluate shading at hit point k a I a + nls i= 1 I i ( ( ) + ( ) ) n k L N k R V d i s i Question: What if secondary ray hits another object before light source?

Secondary Ray hits object First Intersection point in the shadow of the second object

Ray Casting (Appel, 1968) direct illumination

Recursive ray tracing (Whitted, 1980)

Reflected Ray When a ray hits an object, a reflected ray is generated which is tested against all of the objects in the scene.

Reflection: Contribution from reflected ray

Transparency If intersected object is transparent, transmitted ray is generated and tested against all the objects in the scene.

Transparency: Contribution from transmitted ray

Reflected rays can generate other reflected rays that can generate other reflected rays, etc. Case A: Scene with no reflection rays Reflected Ray: Recursion

Reflected Ray: Recursion Case B: Scene with one layer of reflection

Reflected Ray: Recursion Case C: Scene with two layers of reflection

Recursive ray tracing creates tree of rays Reflective and/or transmitted rays are continually generated until ray leaves the scene without hitting any object or a preset recursion level has been reached.

Ray tracer components Cameras Films Lights Ray-object intersection Visibility Surface scattering Recursive ray tracing

Why Ray Tracing Looks Fake/Effects Jagged edges Hard shadows Everything in focus Objects completely still Surfaces perfectly shiny Glass perfectly clear

Why Ray Tracing Looks Fake Distributed Ray Tracing Rob Cook, SIGGRAPH 84 Replace single ray with distribution of rays Not just fat ray through pixel, but fat rays everywhere Cast Multiple Eye rays Shadow rays Reflection rays Refraction rays Supersampling Cast multiple rays from eye through different parts of same pixel

Why Ray Tracing Looks Fake Motion blur Cast multiple rays from eye through same point in each pixel Each of these rays intersects the scene at a different time Reconstruction filter controls shutter speed, length Depth of Field Better simulation of camera model f-stop focus Others (soft shadow, glossy, etc)

Jensen EGRW 95, 96 Simulates the transport of individual photons Two parts. First Photons emitted from source Photons deposited on surfaces Secondly: Photons reflected from surfaces to other surfaces Photons collected by rendering Good for: Light through water Cloud illumination Marble Photon Mapping

Rendering Techniques Photon mapping examples Images: courtesy of Stanford rendering contest

Before next class Final words: To do Read chapters 1 4 of text Many concepts familiar to CS 543 students If you did not take CS 543 with me, skim Ray tracing chapter: F.S Hill, Computer Graphics Using OpenGL, 2 nd edition, Prentice Hall, 2000 Homework 0 Download and install class ray tracer Run several examples

References/Shamelessly stolen Pat Hanrahan, CS 348B, Spring 2005 class slides Yung-Yu Chuang, Image Synthesis, class slides, National Taiwan University, Fall 2005 Kutulakos K, CSC 2530H: Visual Modeling, course slides UIUC CS 319, Advanced Computer Graphics Course slides http://www.siggraph.org/education/materials/hyper Graph/raytrace/rtrace0.htm