Vous êtes sur la page 1sur 33

CS4620/5620

Introduction to Computer Graphics



Professor: Kavita Bala
Computer graphics

The study of
creating,
manipulating, and
using visual images
in the computer
Or, to paraphrase Ken Perlin...

Computer graphics: What you need to


show other people your dreams.
Graphics Applications

Entertainment
film production
film effects
games
Science and engineering
computer-aided design
visualization (scientific, information)
Virtual Prototyping
Cultural Heritage
Training & Simulation
Graphic Arts, Fine Art
Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 4
(with previous instructor Marschner)
Graphics Applications

Entertainment
film production
film effects
games
Science and engineering
computer-aided design
visualization (scientific, information)
Virtual Prototyping
Cultural Heritage
Training & Simulation
Graphic Arts, Fine Art
Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 5
(with previous instructor Marschner)
Graphics Applications

Entertainment
film production
film effects
games
Science and engineering
computer-aided design
visualization (scientific, information)
Virtual Prototyping
Cultural Heritage
Training & Simulation U. of UtahAlpha 1

Graphic Arts, Fine Art


Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 6
(with previous instructor Marschner)
Graphics Applications

Adobe Photoshop [Photo: P. Greenspun]


Entertainment
film production
film effects
games
Science and engineering

Adobe Illustrator
computer-aided design
scientific visualization
Virtual Prototyping
Cultural Heritage
Training & Simulation
Graphic Arts, Fine Arts
Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 7
(with previous instructor Marschner)
What is graphics about?

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 8


(with previous instructor Marschner)
What is the CG problem?
Shape

http://fc00.deviantart.net/fs70/f/2014/220/5/3/audi_r8_render_by_smiska333-d7u9pjt.jpg
3D Modeling

representing 3D shapes NUMERICAL


OPTIMIZATION
polygons, curved surfaces,

[Hoppe et al. 1993]


procedural modeling

DIFFERENTIAL
GEOMETRY

[Prusinkeiwicz et al. 2001]


HeadusCysurf GRAMMARS

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 11


(with previous instructor Marschner)
Material
Light
Computer Graphics

+ +

shape material light

Virtual?
Real?
3D Rendering

2D views of 3D geometry INTEGRAL EQUATIONS

projection and perspective

Henrik Wann Jensen


removing hidden surfaces
lighting simulation
Cornell PCG

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 15


(with previous instructor Marschner)
Cornell PCG

Kavita Bala, Bruce Wlater


Animation

keyframe animation
physical simulation
DIFFERENTIAL
EQUATIONS

Avengers (2012)

INTERPOLATION

Pixar
Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 17
(with previous instructor Marschner)
Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 18
(with previous instructor Marschner)
Images

2D imaging
compositing and layering
digital filtering SIGNAL PROCESSING

color transformations
2D drawing
illustration, drafting
text, GUIs POLYNOMIALS

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 19


(with previous instructor Marschner)
User Interaction

2D graphical user interfaces


SPHERICAL GEOMETRY
3D modeling interfaces
virtual reality, augmented reality

SGIOpenInventor
PROJECTIVE
GEOMETRY
TU Berlin

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 20


(with previous instructor Marschner)
Computer graphics:
Mathematics made visible.

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 21


(with previous instructor Marschner)
Introductions

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 22


(with previous instructor Marschner)
Course Overview

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 23


(with previous instructor Marschner)
Course mechanics

Web http://www.cs.cornell.edu/Courses/cs4620
Teaching Assistants (7 PhD/MS/MEng, 6 ugrad)
Eston Schweickart, Nicolas Savva,
Brandon Benton, Bryce Evans, Eric Gao, Fujun Luan,
Zegiang Zhao

Jimmy Briggs, Kristen Crasto,


Kyle Genova, Tongcheng Li, Andrew Mullen,
Kate Salesin, Ning Wang, Kelly Yu
Cristian Zaloj, software architect
Piazza: Please sign up!
Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 24
(with previous instructor Marschner)
In CS4620/5620

You will:
explore fundamental ideas
learn math essential to graphics
implement key algorithms
write cool programs
learn the basics of OpenGL
You will not:
write very big programs

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 25


(with previous instructor Marschner)
Topics

Modeling in 2D and 3D
Geometric transformations
The graphics pipeline
Rendering 3D scenes
(using ray tracing and using the GPU)
Animation
Images, image processing, color science

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 26


(with previous instructor Marschner)
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

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 27


(with previous instructor Marschner)
In CS4621

You will also:


implement a modeling, rendering, animation system
in groups
learn a lot about
architecting good-sized interactive programs
OpenGL
programmable shaders, textures, animation

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 28


(with previous instructor Marschner)
Workload

CS 4620/5620
7 assignments (written + programming)
1 free late assignment (up to 1 week), else 10% per day
2 exams (midterm + final)
Written (individual), programming (pairs)
CS 4621/5621
Classes on Fridays
First class this friday. No class for 2 fridays after.
4 small assignments
one open-ended project
In pairs

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 29


(with previous instructor Marschner)
Textbook

Shirley & Marschner


Fundamentals of Computer Graphics
third edition

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 30


(with previous instructor Marschner)
More books

Steven Gortler
Foundations of Computer Graphics
first edition

OpenGL Programming Guide


(a.k.a. the "Red Book")
Older version available online:
http://www.opengl.org/documentation/red_book/

GLSL Shading Language


(a.k.a. the "Orange Book")

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 31


(with previous instructor Marschner)
Academic Integrity

Written homework
On your own
Programming
With partner

We will test and follow up

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 32


(with previous instructor Marschner)
Course mechanics

Web http://www.cs.cornell.edu/Courses/cs4620

Schedule, handouts, etc. all on the web page

Practicum (4621)
See schedule on website
Mixer this Friday
First planned meeting on website

Cornell CS4620/5620 Fall 2015 Lecture 1 2015 Kavita Bala 33


(with previous instructor Marschner)

Vous aimerez peut-être aussi