CS 551 / 645: Introductory Computer Graphics David Luebke

advertisement
CS 551 / 645:
Introductory Computer Graphics
David Luebke
cs551@cs.virginia.edu
http://www.cs.virginia.edu/~cs551
David Luebke
7/27/2016
Administrivia

Hand out syllabus
–
–
–
–
–
–
David Luebke
Instructor/TA coordinates
Prereqs
Text
Grading & Honor Code
Topic list
Assignments
7/27/2016
Questions?
David Luebke
7/27/2016
The Basics

This course is about:
– Algorithms and data structures for presenting data
visually on a computer

This course is not about:
– Using graphic design programs like Photoshop or
3-D Studio Max
– Using graphics APIs like OpenGL or Direct3D
(though we will use a little OpenGL)
David Luebke
7/27/2016
The Basics


Computer graphics: generating 2D images
of a 3D world represented in a computer.
Main tasks:
– modeling: creating and representing the geometry
of objects in the 3D world
– rendering: generating 2D images of the objects
– animation: describing how objects change in time
David Luebke
7/27/2016
Why Study Computer Graphics?

Graphics is cool
– I like to see what I’m doing
– I like to show people what I’m doing

Graphics is interesting
– Involves simulation, algorithms, architecture…

Graphics is important
– Just ask Intel…

Graphics is fun
– Roll the video…
David Luebke
7/27/2016
Graphics Applications

Entertainment: Cinema
Universal: Jurassic Park
David Luebke
Pixar: Geri’s Game
7/27/2016
Graphics Applications

Entertainment: Games
id: Quake II
Cyan: Riven
David Luebke
7/27/2016
Graphics Applications

Medical Visualization
The Visible Human Project
David Luebke
MIT: Image-Guided Surgery Project
7/27/2016
Graphics Applications

Computer Aided Design (CAD)
David Luebke
7/27/2016
Graphics Applications

Scientific Visualization
David Luebke
7/27/2016
Dumb Question of the Week
What’s a pixel?
David Luebke
7/27/2016
Display Technologies

Cathode Ray Tubes (CRTs)
– Most common display device today
– Evacuated glass bottle (last
of the vacuum tubes)
– Heating element (filament)
– Electrons pulled towards
anode focusing cylinder
– Vertical and horizontal deflection plates
– Beam strikes phosphor coating on front of tube
David Luebke
7/27/2016
Display Technologies: CRTs

Vector Displays
–
–
–
–
–
–
David Luebke
Anybody remember Battlezone? Tempest?
First computer displays: basically an oscilloscope
Control X,Y with vertical/horizontal plate voltage
Often used intensity as Z
Show: http://graphics.lcs.mit.edu/classes/6.837/F98/Lecture1/Slide11.html
Name two disadvantages
7/27/2016
Display Technologies: CRTs

Vector Displays
–
–
–
–
–
–
Anybody remember Battlezone? Tempest?
First computer displays: basically an oscilloscope
Control X,Y with vertical/horizontal plate voltage
Often used intensity as Z
Show: http://graphics.lcs.mit.edu/classes/6.837/F98/Lecture1/Slide11.html
Name two disadvantages

David Luebke
Just does wireframe
7/27/2016
Display Technologies: CRTs

Vector Displays
–
–
–
–
–
–
Anybody remember Battlezone? Tempest?
First computer displays: basically an oscilloscope
Control X,Y with vertical/horizontal plate voltage
Often used intensity as Z
Show: http://graphics.lcs.mit.edu/classes/6.837/F98/Lecture1/Slide11.html
Name two disadvantages


David Luebke
Just does wireframe
Display needs constant update to avoid fading
7/27/2016
Display Technologies: CRTs

Raster Displays
– Black and white television: an oscilloscope with a
fixed scan pattern: left to right, top to bottom
– Paint entire screen 30 times/sec


Actually, TVs paint top-to-bottom 60 times/sec,
alternating between even and odd scanlines
This is called interlacing. It’s a hack. Why do it?
– To paint the screen, computer needs to
synchronize with the scanning pattern of raster

David Luebke
Solution: special memory to buffer image with scan-out
synchronous to the raster. We call this the framebuffer.
7/27/2016
The End
David Luebke
7/27/2016
Download