Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT...

50
1 COMP 575/770 Spring 2016 • Lecture 1 COMP575/COMP770: Computer Graphics Professor: Dinesh Manocha http://gamma.cs.unc.edu/graphicscourse/

Transcript of Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT...

Page 1: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

1• COMP 575/770 Spring 2016 • Lecture 1

COMP575/COMP770: Computer Graphics

Professor: Dinesh Manocha

http://gamma.cs.unc.edu/graphicscourse/

Page 2: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

2•

Teaching Team

• Instructor

– Dinesh Manocha: [email protected]

• Teaching Assistant

– Tanmay Randhavane: [email protected]

Page 3: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

3•

Introduction

Page 4: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

4

Computer graphics: The study of

creating, manipulating, and using

visual images/information in the

computer.

Page 5: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

5•

Why should I learn computer graphics?

• Interested in games, movies, scientific applications,

computer-aided, etc.

• Can get me a nice paying job.

• Am interested in winning a (technical) Oscar

“Technical Achievement Award from The Academy of Motion Picture

Arts & Science”http://www.oscars.org/press/pressreleases/2013/20130103.html

Page 6: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

6•

Why should I learn computer graphics?

• We are living in a visual era

– Displays of computers, cell phones and mobile devices

– Computing interfaces are becoming more visual (iOS,

Windows 8)

– More information is communicated visually

– A picture is worth a thousand words: images, videos…

– Visual representations of abstract data

Page 7: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

7•

Graphics Applications

• Entertainment

– film production

– film effects

– games

• Science and engineering

– computer-aided design

– scientific visualization

• Training & Simulation

• Graphic Arts

• Fine Art

Page 8: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

8•

Special Effects in Movies

• Historyhttp://www.cinemablend.com/new/How-Avatar-Happened-

Lightcycles-And-Giant-Lizards-On-The-Path-To-Innovation-

16162.html

Page 9: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

9•

Pixar—Toy Story

Page 10: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

10•

Pixar—Ratatouille (2007)

Page 11: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

11•

Pixar—Ratatouille (2007)

Page 12: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

12

King Kong (Universal Pictures, 2005)—visual effects: WETA Digital

Page 13: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

13

King Kong (Universal Pictures, 2005)—visual effects: WETA Digital

Page 14: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

14© 2008 Steve Marschner • Cornell CS4620 Fall 2008 • Lecture 1

Page 15: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

15

The Two Towers (New Line Cinema, 2002)—visual effects: WETA Digital

Page 16: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

16

The Two Towers (New Line Cinema, 2002)—visual effects: WETA Digital

Page 17: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

17

http://www.youtube.com/watch?v=5HghLB7Gcqc

Visual Effects in Avatar

http://cginstructorslab.blogspot.com/2012/11/life-of-pi-exclusive-

interview-with.html

Visual Effects in “Life of Pi”

Page 18: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

18© 2008 Steve Marschner • Cornell CS4620 Fall 2008 • Lecture 1id Software—Quake 4 (screenshot: Planet Quake)

Page 19: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

19

Electronic Arts—NBA Live 07 (screenshot: gamespy.com)

Page 20: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

20

Crytek GmBH—advertisement for CryEngine 2 game engine

Page 21: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

21

• Entertainment

– film production

– film effects

– games

• Science and engineering

– computer-aided design

– scientific visualization

• Training & Simulation

• Graphic Arts

• Fine Art

Graphics Applications

U. of Utah—Alpha 1RIT Biochem. 502—Paul Craig

Page 22: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

22

Kalju Kahn, UCSB

Simulated

deformation of

citrate synthase

during substrate

binding

Page 23: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

23

Roger C. Wagner, Univ. Delaware

3D microscopy

of capillaries

in glomulerus of a

human kidney

Page 24: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

24

Graphics Applications

Adobe P

hoto

shop [P

ho

to: P

. Gre

ensp

un]

Adobe Illu

stra

tor

• Entertainment

– film production

– film effects

– games

• Science and engineering

– computer-aided design

– scientific visualization

• Training & Simulation

• Graphic Arts

• Fine Art

Page 25: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

25

NA

SA

/Am

es—

AC

FS

Graphics Applications• Entertainment

– film production

– film effects

–games

• Science and engineering

–computer-aided design

–scientific visualization

• Training & Simulation

• Graphic Arts

• Fine ArtA

rmy R

esearc

h L

ab

—IE

S

Page 26: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

26

• Entertainment

– film production

– film effects

– games

• Science and engineering

– computer-aided design

– scientific visualization

• Training & Simulation

• Graphic Arts

• Fine Art

Graphics Applications

Computer aided sculptures

Ergun Akleman

Page 27: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

27

Page 28: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

28

Problems in graphics

Page 29: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

29•

Problems in graphics

• 2D imaging

–compositing and layering

–digital filtering

–color transformations

• 2D drawing

– illustration, drafting

– text, GUIs

POLYNOMIALS

SIGNAL PROCESSING

Page 30: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

30•

Problems in graphics CONT’D

• 3D modeling

– representing 3D shapes

–polygons, curved surfaces, …

–procedural modeling

[Hoppe e

t al. 1

993]

Headus—Cysurf

[Pru

sin

keiw

icz e

t al. 2

001]

GRAMMARS

NUMERICAL

OPTIMIZATION

DIFFERENTIAL

GEOMETRY

Page 31: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

31

Problems in graphics

• 3D rendering

–2D views of 3D geometry

–projection and perspective

– removing hidden surfaces

– lighting simulation

Corn

ell

PC

G

Henrik W

ann J

ensen

INTEGRAL EQUATIONS

Page 32: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

32© 2008 Steve Marschner • Cornell CS4620 Fall 2008 • Lecture 1

Corn

ell

PC

G

Page 33: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

33© 2008 Steve Marschner • Cornell CS4620 Fall 2008 • Lecture 1

Henrik W

ann J

ensen

Page 34: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

34

Problems in graphics T

U B

erlin

SG

I—O

penIn

vento

r

SPHERICAL GEOMETRY

PROJECTIVE

GEOMETRY

Page 35: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

35

Problems in graphics

• Animation

–keyframe animation

–physical simulation

Pixar

Enright et al. SIGGRAPH 2003

Page 36: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

36

Problems in graphics

INTERPOLATION

DIFFERENTIAL

EQUATIONS

Pixar

Enright et al. SIGGRAPH 2003

Page 37: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

37

Graphics hardware is becoming

widespread

Enright et al. SIGGRAPH 2003

PowerVR GPU

Desktop and Laptop GPUs

Page 38: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

38

Graphics hardware is becoming

widespread

Enright et al. SIGGRAPH 2003

PowerVR GPU

Desktop and Laptop GPUs

Page 39: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

39•

Virtual Reality

http://www.forbes.com/sites/sap/2015/12/

14/virtual-reality-might-go-mainstream-in-

2016/

Lets try some VR demos!

Page 40: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

40

WHAT YOU WILL (or WILL NOT) LEARN

• You will:

–explore fundamental ideas

– learn math essential to graphics

– implement key algorithms

–write cool programs

• You will not:

– learn a lot about OpenGL or DirectX(though you will use some OpenGL)

–write very big programs

–Advanced topics (global illumination, VR, simulation, etc.)

Page 41: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

41•

Topics

• Rendering 3D scenes

(ray tracing as the basic model)

• Images and image processing

(featuring sampling and reconstruction)

• Geometric transformations

• The graphics pipeline

(with a slant toward understanding graphics hardware)

• Modeling in 2D and 3D

Page 42: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

42

Images

• What is an image?

• Compositing

• Resampling

Page 43: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

43

Rendering

• ray tracing

• shading & shadows

• transparency

• texture mapping

[Gla

ssner

89]

Page 44: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

44•

Geometric transformations

• affine transforms

• perspective transforms

• viewing

rotate, then translate translate, then rotate

Page 45: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

45•

Graphics pipeline

• rasterization

• interpolation

• z-buffer

• vertex and fragment ops

APPLICATION

COMMAND STREAM

GEOMETRY PROCESSING

TRANSFORMED GEOMETRY

RASTERIZATION

FRAGMENTS

FRAGMENT PROCESSING

FRAMEBUFFER IMAGE

DISPLAY

Page 46: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

46•

Modeling

• splines

• parametric surfaces

• triangle meshes

[Rogers

]

Page 47: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

47•

Course Prerequisites

• Programming & Data Structures

–ability to read, write, and debug

small Java or C++ programs (10s of classes)

–understanding of very basic data structures

–no serious software design required

• Mathematics

–vector geometry (dot/cross products, etc.)

– linear algebra (just basic matrices in 2-4D)

–basic calculus (simple derivatives)

–graphics is a good place to pick up some, but not all, of

this

Page 48: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

48

In this course• You will also:

–Work on 4-5 major programming assignments

–Some programming assignments are time consuming

–Work on 4 problem sets (HW)

– learn a lot about

• surfaces

• mesh data structures

• scene data structures

• architecting good-sized interactive programs

• using OpenGL

Page 49: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

49

Course Project

• Required for COMP770 (20% of your grade)

• Optional for COMP575 (extra credit)

–Work on any topic related to computer graphics

–Can combine with your research

–Can work in teams of 2-3 students

–Talk to the instructor about the specific project topic

Page 50: Professor: Dinesh Manocha …gamma.cs.unc.edu/graphicscourse/LECTURES/2016/01intro.pdf · ... RIT Biochem. 502U. of Utah—Alpha 1 ... citrate synthase during substrate binding. 23

50•

Grading Policies

• Grading Breakdown (575): HW & Prog. Assignments 50%, Midterm 20%, Final

20%, Class Attendance & Participation 10%

• Grading Breakdown (770): HW & Prog. Assignments 50%, Midterm 20%, Project

20%, Class Attendance & Participation 10%

More details at:

http://gamma.cs.unc.edu/graphicscourse