Professional Documents
Culture Documents
Introduction To Computer Graphics CS 445 / 645: David Brogan Dbrogan@cs - Virginia.edu
Introduction To Computer Graphics CS 445 / 645: David Brogan Dbrogan@cs - Virginia.edu
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
Col. Steve Austin Worldwide revenues $7 Billion Man Retro flashback??? Lee Majors
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
Entertainment
Entertainment
Graphics Applications
Medical Visualization Medical Visualization
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
Graphics Applications
Scientific Visualization Scientific Visualization
Scientific Visualization
Graphics Applications
Computer Aided Design (CAD) Computer Aided Design (CAD)
Graphics Applications
Training Training
Graphics Applications
Entertainment: Games Entertainment: Games
GT Racer 3
Games
Education
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
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
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
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