Upload
others
View
7
Download
0
Embed Size (px)
Citation preview
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 1
CS4620: Introduction to Computer Graphics
Professor: Doug James
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 2
Introduction
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Computer graphics: The study of creating, manipulating, and using visual images in the computer.
3 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 4
Or, to paraphrase Ken Perlin...
Computer graphics: The tool you need to show other people your dreams.
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 5 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Graphics Applications
• Entertainment– film production– film effects– games
• Science and engineering– computer-aided design– scientific visualization
• Training & Simulation• Graphic Arts• Fine Art
6
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 7
Pixar—Toy Story (1995)
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Pixar—Ratatouille (2007)
8
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 9
Pixar—Ratatouille (2007)
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 10
Pixar—Ratatouille (2007)
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
King Kong (Universal Pictures, 2005)—visual effects: WETA Digital
11 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 12
King Kong (Universal Pictures, 2005)—visual effects: WETA Digital
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 13 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 14
The Two Towers (New Line Cinema, 2002)—visual effects: WETA Digital
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1id Software—Quake 4 (screenshot: Planet Quake) 15 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Electronic Arts—NBA Live 07 (screenshot: gamespy.com)
16
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 17
Crytek GmBH—advertisement for CryEngine 2 game engine
• Entertainment– film production– film effects– games
• Science and engineering– computer-aided design– scientific visualization
• Training & Simulation• Graphic Arts• Fine Art
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Graphics Applications
U. of Utah—Alpha 1
18
RIT Biochem. 502—Paul Craig
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 19
Kalju Kahn, UCSB
Simulated deformation of citrate synthase during substrate binding
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 20
Roger C. Wagner, Univ. Delaware
3D microscopyof capillariesin glomulerus of a human kidney
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
NA
SA/A
mes
—A
CFS
• Entertainment– film production– film effects– games
• Science and engineering– computer-aided design– scientific visualization
• Training & Simulation• Graphic Arts• Fine Art
Arm
y R
esea
rch
Lab—
IES
21 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Adobe Photoshop [Photo: P. G
reenspun]A
dobe Illustrator
• Entertainment– film production– film effects– games
• Science and engineering– computer-aided design– scientific visualization
• Training & Simulation• Graphic Arts• Fine Art
22
• Entertainment– film production– film effects– games
• Science and engineering– computer-aided design– scientific visualization
• Training & Simulation• Graphic Arts• Fine Art
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Computer aided sculpturesErgun Akleman
23 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 24
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 25
Problems in graphics
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Problems in graphics
• 2D imaging– compositing and layering– digital filtering– color transformations
• 2D drawing– illustration, drafting– text, GUIs POLYNOMIALS
SIGNAL PROCESSING
26
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Problems in graphics CONT’D
• 3D modeling– representing 3D shapes– polygons, curved surfaces, …– procedural modeling
[Hoppe et al. 1993]
Headus—Cysurf
[Prusinkeiwicz et al. 2001]
GRAMMARS
NUMERICALOPTIMIZATION
DIFFERENTIALGEOMETRY
27 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Problems in graphics CONT’D
• 3D rendering– 2D views of 3D geometry– projection and perspective– removing hidden surfaces– lighting simulation
Cor
nell
PCG
Hen
rik
Wan
n Je
nsen
INTEGRAL EQUATIONS
28
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Cor
nell
PCG
29 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Hen
rik W
ann
Jens
en
30
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 31
• User Interaction– 2D graphical user interfaces– 3D modeling interfaces– virtual reality
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Problems in graphics CONT’D
TU
Ber
lin
SGI—
OpenInventor
SPHERICAL GEOMETRY
PROJECTIVEGEOMETRY
32
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Problems in graphics CONT’D
• Animation– keyframe animation– physical simulation
Pixar
Enright et al. SIGGRAPH 2003
33
• Animation– keyframe animation– physical simulation
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Problems in graphics CONT’D
INTERPOLATION
DIFFERENTIALEQUATIONS
Pixar
Enright et al. SIGGRAPH 2003
34
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Computer graphics: Mathematics made visible.
35 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Course Overview
36
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
In CS4620
• 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 big programs---try CS4620 Practicum for that
37 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
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• Color science
38
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Images
• What is an image?• Compositing• Resampling
[Tita
39 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Rendering
• ray tracing• shading & shadows• transparency• texture mapping
[Gla
ssne
r 89
]
40
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Geometric transformations
• affine transforms• perspective transforms• viewing
rotate, then translate translate, then rotate
41 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Graphics pipeline
• rasterization• interpolation• z-buffer• vertex and fragment ops
APPLICATION
COMMAND STREAM
GEOMETRY PROCESSING
TRANSFORMED GEOMETRY
RASTERIZATION
FRAGMENTS
FRAGMENT PROCESSING
FRAMEBUFFER IMAGE
DISPLAY
42
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Modeling
• splines• parametric surfaces• triangle meshes
[Rog
ers]
43 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Deformation
44
• articulated characters• blend shapes
• free-form deformation• subdivision surfaces
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 45 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
CS4620 Prerequisites
• Programming– ability to read, write, and debug
small Java 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
46
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
In CS4621
• You will also:– implement a modeling and animation system, in groups of ~4– learn a lot about
• subdivision surfaces• mesh data structures• scene data structures• architecting good-sized interactive programs• using OpenGL
47 © 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1 48
Pixar—Geri’s Game
© 2009 Doug James • Cornell CS4620 Fall 2009 • Lecture 1
Course mechanics
See web site:http://www.cs.cornell.edu/Courses/cs4620
49