1. 2 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)

Slides:



Advertisements
Similar presentations
Transformations in Ray Tracing MIT EECS 6.837, Durand and Cutler.
Advertisements

Lecture 0: Course Overview
Ray tracing. New Concepts The recursive ray tracing algorithm Generating eye rays Non Real-time rendering.
Graphics Pipeline.
CP411 Computer Graphics, Wilfrid Laurier University Introduction # 1 Welcome to CP411 Computer Graphics 2012 Instructor: Dr. Hongbing Fan Introduction.
3D Graphics Rendering and Terrain Modeling
MIT EECS 6.837, Durand and Cutler Transformations.
David Luebke1/19/99 CS 551/651: Advanced Computer Graphics David Luebke
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Introduction Week 1, Wed Jan 5.
Advanced Computer Graphics (Fall 2009) CS , Lecture 1: Introduction and History Ravi Ramamoorthi Some.
Computer Graphics (Fall 2005) COMS 4160, Lecture 21: Ray Tracing
History of computer graphics CS Introduction to Computer Graphics Autumn quarter, 2000 Slides for September 28 lecture.
1/12/09 1 Introduction Computer Graphics COMP 770 (236) Spring 2009 Instructor: Dinesh Manocha.
 Marc Levoy History of computer graphics CS Introduction to Computer Graphics Autumn quarter, 2006 Slides for September 26 lecture.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 1: Introduction and History Ravi Ramamoorthi
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Introduction to Computer Graphics Ed Angel Professor of Computer Science, Electrical and.
 Marc Levoy History of computer graphics CS Introduction to Computer Graphics Autumn quarter, 2003 Slides for September 25 lecture.
Graphics Systems I-Chen Lin’s CG slides, Doug James’s CG slides Angel, Interactive Computer Graphics, Chap 1 Introduction to Graphics Pipeline.
COMP236: Computer Graphics Spring’2000 Dinesh Manocha.
CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen’s slides) Instructor: Rick Parent Credit: 4 Class: MWF 10:30.
COMP 350: Computer Graphics Highlights of class policies (A rare use of PowerPoint)
Cornell CS465 Fall 2004 Lecture 1© 2004 Steve Marschner 1 CS465: Computer Graphics I Professor: Steve Marschner.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
Advanced Computer Graphics Instructor: Jingliang Peng Professor, Shandong University.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 16 Computer Graphics Course Introduction.
CS 480/680 Computer Graphics Course Overview Dr. Frederick C Harris, Jr. Fall 2012.
CS451 Computer Graphics JYH-MING LIEN DEPARTMENT OF COMPUTER SCIENCE GEORGE MASON UNIVERSITY.
COMP 175: Computer Graphics March 24, 2015
COMP SCI 352 Computer Graphics and Animation. Computer Graphics2 My name is … My name is … How to find me How to find me Course Policies Course Policies.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Invitation to Computer Science 5th Edition
Advanced Computer Graphics March 06, Grading Programming assignments Paper study and reports (flipped classroom) Final project No written exams.
COMP 175 | COMPUTER GRAPHICS Remco Chang1/ Introduction Lecture 01: Introduction COMP 175: Computer Graphics January 15, 2015.
1 Computer Graphics (under) Sep., 2003 Jung Hong Chuang CSIE NCTU.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
MIT EECS 6.837, Durand and Cutler Graphics Pipeline: Projective Transformations.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
1 Angel and Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Introduction to Computer Graphics Ed Angel Professor Emeritus of Computer.
1 Introduction to Computer Graphics SEN Introduction to OpenGL Graphics Applications.
Computer Graphics I, Fall 2008 Introduction to Computer Graphics.
1 Angel: Interactive Computer Graphics 5E © Addison-Wesley 2009 CS4610/7610: Introduction to Computer Graphics.
C O M P U T E R G R A P H I C S Jian Chen January 15, 2010 Mechanics 1/8 Mechanics.
CSE 581: Interactive Computer Graphics Spring 2012, UG 4 Tuesday, Thursday – 9:00AM – 10:18AM DL 0317 Raghu Machiraju Slides: Courtesy - Prof. Huamin Wang,
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Copyright  1999 by James H. Money. All rights reserved. Except as permitted under United States Copyright Act of 1976, no part of this publication may.
COMPUTER GRAPHICS CSCI 375. What do I need to know?  Familiarity with  Trigonometry  Analytic geometry  Linear algebra  Data structures  OOP.
Computer Graphics (under) Sep., 2004 Jung Hong Chuang CSIE NCTU.
MAE 152 Computer Graphics for Scientists and Engineers Fall 2003 Dr. Prashant V. Mahajan Senior Research Scientist AValonRF, Inc., El Cajon, CA.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Computer Graphics Lecture 08 Fasih ur Rehman. Last Class Ray Tracing.
CS380: Computer Graphics Distributed Ray Tracing TA Course URL:
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
MIT EECS 6.837, Durand and Cutler The Graphics Pipeline: Projective Transformations.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Syllabus 고려대학교 컴퓨터 그래픽스 연구실.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
RENDERING : Global Illumination
CS 551/645 Introduction to Computer Graphics Fall 2000.
CIS 681 Course Introduction CSE681: Introduction to 3D Image Generation.
Computer Graphics: Programming, Problem Solving, and Visual Communication Steve Cunningham California State University Stanislaus and Grinnell College.
Computer Graphics (Fall 2004) COMS 4160, Lecture 25: Summary and Preview
- Introduction - Graphics Pipeline
Computer Graphics.
MIT EECS 6.837, Cutler and Durand
3D Graphics Rendering PPT By Ricardo Veguilla.
Introduction to Computer Graphics
Introduction to Computer Graphics
Introduction to CSCE321 고려대학교 컴퓨터 그래픽스 연구실 kucg.korea.ac.kr.
Type to enter a caption. Computer Graphics Week 1Lecture 1.
Introduction to spagetti and meatballs
Presentation transcript:

1

2 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)

3 Team Lecturers – Fr é doDurand – Barb Cutler Course secretary – BrytBradley

4 Why Computer Graphics? Movies Games CAD-CAM Simulation Virtual reality Visualization Medical imaging

5 What you will learn in Fundamentals of computer graphics algorithms Able to implement most applications just shown Understand how graphics APIs and the graphics hardware work

6 What you will NOT learn Software packages – CAD-CAM 66 – Photoshop and other painting tools Artistic skills Game design Graphics API – Although you will be exposed to OpenGL

7 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)

8 Overview of the semester Ray Tracing – Quiz 1 Animation, modeling, IBMR – Choice of final project Rendering pipeline – Quiz 2 Advanced topics

9 Ray Casting For every pixel construct a ray from the eye – For every object in the scene Find intersection with the ray Keep if closest

10 Ray Casting For every pixel construct a ray from the eye – For every object in the scene Find intersection with the ray Keep if closest

11 Ray Tracing Shade (interaction of light and material) Secondary rays (shadows, reflection, refraction

12 Ray Tracing Original Ray-traced image by Whitted Image computed using the Dali ray tracer by HenrikWann Jense Environment map by Paul Debevec Image removed due to copy right considerations.

13 Overview of the semester Ray Tracing –Quiz 1 Animation, modeling, IBMR –Choice of final project Rendering pipeline –Quiz 2 Advanced topics

14 Animation: Keyframing

15 Particle system (PDE) Animation –Keyframingand interpolation –Simulation Images removed due to copyright considerations.

16 Rigid body dynamics Simulate all external forces and torques

17 Modeling Curved surfaces Subdivision surfaces Images removed due to copyright considerations.

18 Image-based Rendering Use images as inputs and representation E.g. Image-based modeling and photo editingBoh, Chen, Dorsey and Durand 2001 Input imageNew viewpointRelighting

19 Overview of the semester Ray Tracing _Quiz 1 Animation, modeling, IBMR –Choice of final project Rendering pipeline –Quiz 2 Advanced topics

20 The Rendering Pipeline Ray Casting For each pixel –For each object Send pixels to the scene Rendering Pipeline For each triangle –For each projected pixel Project scene to the pixels

21 The Rendering Pipeline Transformation s Clipping Rasterization Visibility Courtesy of Leonard McMillan, Computer Science at the University of North Carolina in Chapel Hill. Used with permission

22 Overview of the semester Ray Tracing –Quiz 1 Animation, modeling, IBMR –Choice of final project Rendering pipeline –Quiz 2 Advanced topics

23 Textures and shading For more info on the computer artwork of Jeremy Birn see Courtesy of Jeremy Birn. Used with permission.

24 Shadows Image removed due to copyright considerations.

25 Traditional Ray Tracing Image removed due to copyright considerations.

26 Ray Tracing+soft shadows Image removed due to copyright considerations.

27 Ray Tracing+caustics Image removed due to copyright considerations.

28 Global Illumination Image removed due to copyright considerations.

29 Antialiasing Courtesy of Leonard McMillan, Computer Science at the University of North Carolina in Chapel Hill. Used with permission.

30 Questions?

31 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)

32 Administrivia Web: 37/F03/ 37/F03/ Lectures–Slides will be online Office hours–Posted on the web Review sessions–C++, linear algebra

33 Prerequisites Not enforced Linear Algebra –Simple linear algebra, vectors, matrices, basis, solving systems of equations, inversion 6.046J Algorithms –Orders of growth, bounds, sorting, trees C++ –All assignments are in C++ –Review/introductory session Monday

34 Grading policy Assignments: 40% –Must be completed individually –No late policy. Stamped by stellar. 2 Quizzes: 20% –1 hour in class Final project: 40% –Groups of 3, single grade for the group –Initial proposal: 3-5 pages –Steady weekly progress –Final report & presentation –Overall technical merit

35 Assignments Turn in code AND executable We will watch code style Platform –Windows –Linux Collaboration policy: –You can chat, but code on your Not late police

36 Project Groups of 3 Brainstorming –Middle of the semester Proposal Weekly meeting with TAs Report & presentation

37 Plan Introduction Overview of the semester Administrivia Iterated Function Systems (fractals)

38 IFS: self-similar fractals Described by a set of n transformations fi –Capture the self-similarity –Affine transformations –Contractions (reduce distances) An attractor is a fixed A= ∪ f i (A) Image removed due to copyright considerations. Image from

39 Example: Sierpinsky triangle 3 transforms Translation and scale by 0.5

40 Rendering For a number of random input points (x0, y0) For j=0 to big number Pick transformation I (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) Probabilistic application of one transformation

41 Example: Sierpinsky triangle For j=0 to big number Pick transformation I (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) For a number of random input points (x0, y0)

42 Example: Sierpinsky triangle For a number of random input points (x0, y0) Pick transformation I (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) For j=0 to big number

43 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) Pick transformation i

44 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I Display (x k, y k ) (x k+1, y k+1 ) = fi(x k, y k )

45 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I Display (x k, y k ) (x k+1, y k+1 ) = fi(x k, y k )

46 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) Pick transformation I

47 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I Display (x k, y k ) (x k+1, y k+1 ) = fi(x k, y k )

48 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I Display (x k, y k ) (x k+1, y k+1 ) = fi(x k, y k )

49 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) Pick transformation I

50 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I Display (x k, y k ) (x k+1, y k+1 ) = fi(x k, y k )

51 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Display (x k, y k ) Pick transformation I (x k+1, y k+1 ) = fi(x k, y k )

52 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k )

53 Example: Sierpinsky triangle For j=0 to big number Pick transformation I (x k+1,y yk+1 ) = fi(x k, y k ) Display (x k, y k ) For a number of random input points (x0, y0)

54 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I (x k+1, y k+1 ) = fi(x k, y k Display (x k, y k )

55 Example: Sierpinsky triangle For j=0 to big number Pick transformation I (x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k ) For a number of random input points (x0, y0)

56 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I ( x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k )

57 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I ( x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k )

58 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I ( x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k )

59 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I ( x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k )

60 Example: Sierpinsky triangle For a number of random input points (x0, y0) For j=0 to big number Pick transformation I ( x k+1, y k+1 ) = fi(x k, y k ) Display (x k, y k )

61 Other IFS The Dragon

62 Application: fractal compression Exploit the self-similarity in an image E.g. ompression

63 Assignment: IFS Write a C++ IFS class Get familiar with –vector and matrix library –Image library Due Wednesday at 11:59pm Check on the web pagehttp://graphics.lcs.mit.edu/classes/ 6.837/F03/

64 Review/introduction session: C++ Monday 7:30-9

65 Questions?