You are on page 1of 37

Introduction to Computer Graphics CS 445 / 645

David Brogan David Brogan dbrogan@cs.virginia.edu dbrogan@cs.virginia.edu

Class Web Page


http://www.cs.virginia.edu/~gfx/Courses http://www.cs.virginia.edu/~gfx/Courses
Class lectures posted Class lectures posted Assignments distributed Assignments distributed

Instructor/TA Coordinates
David Brogan David Brogan Olsson 216 Olsson 216 dbrogan@cs.virginia.edu dbrogan@cs.virginia.edu Julian Dymacek Julian Dymacek Olsson 233 Olsson 233 jmd7b@cs.virginia.edu jmd7b@cs.virginia.edu

Prerequisites
CS 216 You will be writing programs CS 216 You will be writing programs Non-trivial data structures, pointers Non-trivial data structures, pointers An ability to learn a programming library on your own An ability to learn a programming library on your own OpenGL OpenGL Comfortable with matrix algebra and calculus Comfortable with matrix algebra and calculus Basic linear algebra used Basic linear algebra used

Text
Computer Graphics with OpenGL Computer Graphics with OpenGL Third Edition Third Edition Hearn and Baker Hearn and Baker

Work
Five programming assignments (50%) Five programming assignments (50%) C/C++ using OpenGL, GLUT, and UI libraries C/C++ using OpenGL, GLUT, and UI libraries Source will be read and documentation is reqd Source will be read and documentation is reqd Three homework assignments (10%) Three homework assignments (10%) Intended to support lecture material Intended to support lecture material Midterm and Final (20% each) Midterm and Final (20% each)

Honor Code
Specific honor code instructions will be provided with each Specific honor code instructions will be provided with each assignment assignment When in doubt When in doubt Dont use resources other than class notes and textbook Dont use resources other than class notes and textbook Typically Typically Using examples from the web is a great way to learn and it Using examples from the web is a great way to learn and it is encouraged reference what you use is encouraged reference what you use Never Never Share code with another student or debug code together Share code with another student or debug code together

Topics
Core graphics pipeline Core graphics pipeline Modeling transformation, viewing transformation, Modeling transformation, viewing transformation, hidden surface removal, illumination // shading // hidden surface removal, illumination shading textures, scan conversion // clipping textures, scan conversion clipping OpenGL OpenGL Morphing, curves and surfaces, animation Morphing, curves and surfaces, animation Not a course about graphic design, using graphics Not a course about graphic design, using graphics tools like PhotoShop or Maya tools like PhotoShop or Maya

Impact of Computers
Moores Law Moores Law Power of a CPU doubles every 18 months // 2 Power of a CPU doubles every 18 months 2 years years

Impact of Video Games (Nvidia)


Number of transistors on GPU doubles each 6 mos. Number of transistors on GPU doubles each 6 mos.
Three times Moores Law Three times Moores Law Good article on Jen-Hsun Huang, Nvidia CEO: Good article on Jen-Hsun Huang, Nvidia CEO: http://www.wired.com/wired/archive/10.07/Nvidia_pr.html http://www.wired.com/wired/archive/10.07/Nvidia_pr.html

Col. Steve Austin Worldwide revenues $7 Billion Man Retro flashback??? Lee Majors

$5.6 Billion Man

Impact of Video Games


But But
Video game sales is roughly same as Hollywood box office Video game sales is roughly same as Hollywood box office Americans bought $3.2 billion in VCRs and DVDs in 2002 Americans bought $3.2 billion in VCRs and DVDs in 2002 Total revenues to movie studios is 5 times total video game Total revenues to movie studios is 5 times total video game revenues revenues

Future of Consoles
33 million PS2s (in 2002) 33 million PS2s (in 2002) 3.9 million Xboxes (in 2002) 3.9 million Xboxes (in 2002) MSFT still losing lots of $$ per console MSFT still losing lots of $$ per console Predicted 200 million PDA/Cell game players in 2005 Predicted 200 million PDA/Cell game players in 2005 Do you believe it? Do you believe it?

Graphics Applications
Entertainment: Cinema Entertainment: Cinema

Square: Final Fantasy

Pixar: Monsters Inc.

Entertainment

Final Fantasy (Square, USA)

Entertainment

A Bugs Life (Pixar)

Graphics Applications
Medical Visualization Medical Visualization

The Visible Human Project

MIT: Image-Guided Surgery Project

Graphics Applications
Everyday Use Everyday Use
Microsofts Whistler OS will use graphics seriously Microsofts Whistler OS will use graphics seriously Graphics visualizations and debuggers Graphics visualizations and debuggers Visualize complex software systems Visualize complex software systems

Everyday use

Everyday use

Window system and large-screen interaction metaphors (Franois Guimbretire)

Graphics Applications
Scientific Visualization Scientific Visualization

Scientific Visualization

Airflow around a Harrier Jet (NASA Ames)

Graphics Applications
Computer Aided Design (CAD) Computer Aided Design (CAD)

Graphics Applications
Training Training

Designing Effective Step-By-Step Assembly Instructions (Maneesh Agrawala et. al)

Graphics Applications
Entertainment: Games Entertainment: Games

GT Racer 3

Polyphony Digital: Gran Turismo 3, A Spec

Games

Circus Atari (Atari)

Education

Outside In (Geometry Center, University of Minnesota)

The Basics
Computer graphics: generating 2D images of a 3D Computer graphics: generating 2D images of a 3D world represented in a computer. world represented in a computer. Main tasks: Main tasks:
modeling:: (shape) creating and representing the geometry of modeling (shape) creating and representing the geometry of objects in the 3D world objects in the 3D world rendering:: (light, perspective) generating 2D images of the rendering (light, perspective) generating 2D images of the objects objects animation:: (movement) describing how objects change in time animation (movement) describing how objects change in time

Why Study Computer Graphics?


Graphics is cool Graphics is cool
II like to see what Im doing like to see what Im doing II like to show people what Im doing like to show people what Im doing

Graphics is interesting Graphics is interesting


Involves simulation,, AI, algorithms,, architecture Involves simulation AI, algorithms architecture

Ill never get an Oscar for my acting Ill never get an Oscar for my acting
But maybe Ill get one for my CG special effects But maybe Ill get one for my CG special effects

Graphics is fun Graphics is fun

Can we learn from history?


Among the studies of natural causes and laws, it is Among the studies of natural causes and laws, it is light that most delights its students. Among all the light that most delights its students. Among all the great branches of mathematics, the certainty of its great branches of mathematics, the certainty of its demonstrations pre-eminently elevates the minds of demonstrations pre-eminently elevates the minds of its investigators. Perspective, therefore, should be its investigators. Perspective, therefore, should be preferred above all mans discourses and preferred above all mans discourses and disciplines. In this subject the visual rays are disciplines. In this subject the visual rays are elucidated by means and demonstrations which elucidated by means and demonstrations which derive their glory nor only from mathematics but derive their glory nor only from mathematics but also from physics; the one is adorned equally with also from physics; the one is adorned equally with the flowers of the other. the flowers of the other.
Leonardo da Vinci (1400s) quoting John Pecham (1200s)

Perspective

Machines

Leonardo Again
There are some who look at the things produced by nature There are some who look at the things produced by nature through glass, or other surfaces or transparent veils. through glass, or other surfaces or transparent veils. They trace outlines on the surface of the transparent They trace outlines on the surface of the transparent medium But such an invention is to be condemned in medium But such an invention is to be condemned in those who do not know how to portray things without it, those who do not know how to portray things without it, no how to reason about nature with their minds They no how to reason about nature with their minds They are always poor and mean in every invention and in the are always poor and mean in every invention and in the composition of narratives, which is the final aim of this composition of narratives, which is the final aim of this science science

Perspective
Lorenzetti Lorenzetti
Birth of the Virgin Birth of the Virgin 1342 1342

Leonardo Leonardo
The Last Supper The Last Supper 1498 1498

Shape

We Labor On
Light Stage 2002 USC, Institute for Creative Technologies

More, more, MORE!


Sequence of advanced graphics courses at UVA: Sequence of advanced graphics courses at UVA: CS 446: Real Time Rendering (Dave Luebke) CS 446: Real Time Rendering (Dave Luebke)
Building interactive graphics systems (games!) Building interactive graphics systems (games!) Right now and Fall 2005 Right now and Fall 2005

CS 447: Image Synthesis (Greg Humphreys) CS 447: Image Synthesis (Greg Humphreys)
Modeling light and materials (Rendering) Modeling light and materials (Rendering) Fall 2004 Fall 2004

CS 448: Animation (me) CS 448: Animation (me)


Modeling movement Modeling movement Spring 2005 Spring 2005

You might also like