Computer Graphics
CS 354 Introductions
I am Dr. Sarah Abraham • email: [email protected] • office hours: MW 4:00—6:00 T 11:00-noon
The TA is Josh Vekhter • email: [email protected] • office hours: TBD Assignment and Grading
Homeworks and quizzes (20%) 5 projects (50%) • 2-3 weeks each Final project (20%) • Open-ended • Includes a presentation on an “advanced” topic in graphics Participation (10%) Project Logistics
• Can work in pairs • Both students get same grade • Late slips shared (both must submit) • We are moving to WebGL, so projects will run in browser for compatibility Classroom Logistics
• Lecture time • In-class discussions • Concepts stick better when they’re hands-on Prerequisites
Linear Algebra • CG could be “applied linear algebra” • Will show up over and over again • Reviewed in class and in worksheets • Stop and ask questions Prerequisites
Linear Algebra Basic C++ • C++ is performant • An incredibly good skill for working in computer graphics • We are working Typescript and WebGL for cross-compatibility and to simplify the learning curve Prerequisites
Linear Algebra Basic C++ Engineering large software systems • Debugging complex code • Using poorly-documented libraries • Time management • Good project planning What This Class is NOT About What This Class is NOT About
3D modeling tutorial What This Class is NOT About
C++ or GLSL (shading language) tutorial
Optional textbook: “red book”
But I will recommend working through http://www.opengl-tutorial.org/ to help you get your bearings! A Brief History of Graphics
Dark Ages: blinking lights, Teletype
[UNIVAC I, 1951] [Model 33, 1963] Dark Ages
1940s: cathode ray tubes (CRTs) • originally used as computer memory 1960s
CRTs can do basic vector graphics
real time by early 60s
[PDP-1 running “Spacewar!”, 1962] 1960s
CRTs can do basic vector graphics
computer terminals (“virtual teletype”) mass-produced in ‘67
[DataPoint 3300] 1960s
1968: Ray tracing invented
[Ray traced building. [Appel 1968] Render time: 30 mins] 1960s
1963: Sketchpad
Ivan Sutherland Father of Computer Graphics Turing Award winner Also pioneered: HUDs, OOP 1960s
1968: First VR headset
[Sutherland’s “Sword of Damocles”] 1970s
Sutherland founds research group at Utah They invent rendering and 3D modeling
[First digitized model: Sutherland’s VW] [“Utah Teapot”, 1975] 1980s
PC age begins
Silicon Graphics manufactures graphics workstations
[SGI IRIS 2400] 1980s
CAD (computer-aided design) is king and drives computer graphics research
[AutoCAD] 1980s
1982: First CG short, “Dream Flight” 1990s
1992: OpenGL released Graphics cards become common in PCs
[GeForce 256, first commercial Nvidia GPU, 1999] 1990s 2000s
GPUs become programmable • GPU parallelization a huge fad Large leaps in real-time graphics
[Crysis, 2007] [DOOM 3, 2004] 2000s
Movie industry rules graphics, drives research • More realistic rendering, faster • Physical simulation • Motion capture [Bridson et al, 2002] Uncanny Valley of Eeriness A Funny Thing Happens in 2009 Modern Graphics
“Rendering is a solved problem” movie CG industry on the decline
RIP 2011 RIP 2015 RIP 2013 Is Graphics Dead?
If not, what are “modern” graphics problems? Modern Graphics
• Real-time rendering • Physical simulation • 3D printing • Capture and tracking • AR and VR • …and more! Modern Graphics: Learning More
~15,000 attendees
many videos online
Here at UT: Graphics SEMinar • Undergrads welcome! • Talk to me after class! What This Class IS About
20th century Computer Graphics • Coordinate systems / transformations • OpenGL & shaders • Ray tracing • Shading and texturing • Animation
Also: overview of advanced topics Some Cool Stuff
Real-time Mocap https://youtu.be/JbQSpfWUs4I?t=350 Some Cool Stuff
Procedural Generation https://www.youtube.com/watch?v=K0umGtw90Z4 Some Cool Stuff
Heat and simulation https://www.youtube.com/watch?v=SIGQSgifs6s Friday: Meet and Greet
We will meet in Discord voice to introduce ourselves! Bring 1-2 pictures that “represent” you (and ideally your interest in graphics)
Be able to explain in 20-30 seconds to why you picked the pictures you did