cse 167: introduction to computer graphicsivl.calit2.net/wiki/images/2/2d/01_introductionf12.pdf ·...
TRANSCRIPT
![Page 1: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/1.jpg)
CSE 167:CSE 167:
Introduction to Computer Graphics
Jürgen P. Schulze, Ph.D.
University of California, San Diego
Fall Quarter 2012
![Page 2: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/2.jpg)
Today
� Course organization
� Course overview
2
![Page 3: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/3.jpg)
Course Staff
Instructor
� Jürgen Schulze, Ph.D. Lecturer in CSE, Research Scientist at Calit2
Teaching AssistantTeaching Assistant
� Sid Vijay, took CSE167 in 2009
Tutors
� Matthew Religioso, took CSE167 in 2010
� Joey Ly, took CSE167 in 2010
3
![Page 4: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/4.jpg)
Course Organization
Lecture
� Tue/Thu, 2:00pm-3:20pm, WLH 2204
Homework Grading
� Fridays (only on due dates) at 1:30pm, CSE lab 260
Instructor Office Hour
� Tue 3:30pm-4:30pm, Atkinson Hall room 2125� Tue 3:30pm-4:30pm, Atkinson Hall room 2125
Office Hours in Lab 260
� Sid Vijay: Wed+Thu 3:30-5:30pm
� Matthew Religioso: Thu 4:30-6:30pm
� Joey Ly: Tue 6-8pm
4
![Page 5: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/5.jpg)
Prerequisites
Familiarity with
� Linear algebra
� C++
� Object oriented programming
5
![Page 6: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/6.jpg)
In this class
� Rendering 3D models� Camera simulation
� Interactive viewing
� Lighting
� Shading
� Modeling Triangle meshes� Triangle meshes
� Parametric surfaces
� Applying linear algebra, C++, OpenGL
� Foundation for advanced graphics courses
� Henrik Wann Jensen’s CSE168
� Wolfgang Engel’s CSE 190 on shader programming
� My CSE 190 on 3D user interfaces
6
![Page 7: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/7.jpg)
Course Web Site
� URL: http://ivl.calit2.net/wiki/index.php/CSE_167_Fall_2012orhttp://tinyurl.com/cse167f2012
� Class schedule
Lecture slides� Lecture slides
� Textbook recommendations
� Announcements
� Homework assignments
� Grading information (grades on Ted)
7
![Page 8: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/8.jpg)
Ted
� Go tohttp://ted.ucsd.edu
and select CSE167
� Log in with your Active Directory account
� Used for discussion board and gradesUsed for discussion board and grades
8
![Page 9: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/9.jpg)
Textbooks
� Both textbooks are recommended, not required
� Peter Shirley: Fundamentals of Computer Graphics, any edition (Google Books has full text version)text version)
� OpenGL Programming GuideOlder versions available on-line
9
![Page 10: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/10.jpg)
Programming Projects
� 7 programming assignments
� First and last are group projects
� Find assignments and schedule on home page
� Base code (for Windows and Linux) and documentation on home page
� Use EBU3B 2xx labs or your own PC/laptop� Use EBU3B 2xx labs or your own PC/laptop
� Individual assistance by TA during lab office hours
� Turn in by demonstration to TA, tutors or instructor during homework grading hours on Fridays. Demonstration can be done on lab PC or personal computer.
� Homework projects are due Fridays 1:30pm.Late submissions are possible with 25% point deduction.
10
![Page 11: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/11.jpg)
Written Examinations
Two in-class written exams.
Closed book, handwritten index card is permitted.
Midterm #1:
� Thu 10/24, 2:00pm-3:20pm, WLH 2204
Midterm #2:Midterm #2:
� Thu 11/29, 2:00pm-3:20pm, WLH 2204
11
![Page 12: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/12.jpg)
Grading
� Homework Projects 1-6: 10% each
� Written exams: 10% each
� Final project: 20%
� Late submission policy for homework projects:
75% of original grade if you present your project within seven 75% of original grade if you present your project within seven days of the due date
12
![Page 13: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/13.jpg)
Today
� Course organization
� Course overview
13
![Page 14: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/14.jpg)
What is computer graphics?
Applications:� Movie, TV special effects� Video games� Scientific visualization� GIS (Geographic Information Systems)� GIS (Geographic Information Systems)� Medical visualization� Industrial design� Simulation� Communication� Etc.
14
![Page 15: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/15.jpg)
What is computer graphics?
� Rendering
� Modeling
� Animation
15
![Page 16: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/16.jpg)
What is computer graphics?
� Rendering
� Modeling
� Animation
16
![Page 17: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/17.jpg)
Rendering
� Synthesis of a 2D image from a 3D scene description� Rendering algorithm interprets data structures that
represent the scene in terms of geometric primitives, textures, and lights
� 2D image is an array of pixels� Red, green, blue values for each pixelRed, green, blue values for each pixel
� Different objectives� Photorealistic
� Interactive
� Artistic
17
![Page 18: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/18.jpg)
Photorealistic rendering
� Physically-based simulation of light, camera
� Shadows, realistic illumination, multiple light bounces
� Slow, minutes to hours per image
� Special effects, movies
� CSE168: Rendering Algorithms� CSE168: Rendering Algorithms
18
![Page 19: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/19.jpg)
Photorealistic rendering
19
![Page 20: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/20.jpg)
Interactive rendering
� Produce images within milliseconds
� Using specialized hardware, graphics processing units (GPUs)
� Standardized APIs (OpenGL, DirectX)
� Often “as photorealistic as possible”
� Hard shadows, fake soft shadows, only single bounce of � Hard shadows, fake soft shadows, only single bounce of light
� Games
� CSE167
20
![Page 21: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/21.jpg)
Interactive rendering
21
![Page 22: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/22.jpg)
Artistic rendering
� Stylized
� Artwork, illustrations, data visualization
22
![Page 23: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/23.jpg)
Artistic rendering
23
![Page 24: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/24.jpg)
Live Demo
� NVIDIA Geoforms: Real-Time Renderinghttp://www.nvidia.com/coolstuff/demos#!/geoforms
24
![Page 25: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/25.jpg)
What is computer graphics?
� Rendering
� Modeling
� Animation
25
![Page 26: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/26.jpg)
Modeling
� Creating 3D geometric data
� The “model” or the “scene”
� By hand
� Autodesk (Maya, AutoCAD), LightWave 3D, …
� Free softwareFree software
� Blender
� Not as easy to use as Notepad…
Maya Screenshot26
![Page 27: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/27.jpg)
Modeling
� Basic 3D models consist of array of triangles
� Each triangle stores 3 vertices
� Each vertex contains
� xyz position
� ColorColor
� Etc.
27
![Page 28: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/28.jpg)
Modeling
� Procedural: by writing programs
� Scanning real-world objects
28
![Page 29: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/29.jpg)
ModelingScanned statueProcedural tree
Procedural cityProcedural city
29
![Page 30: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/30.jpg)
What is computer graphics?
� Rendering
� Modeling
� Animation
30
![Page 31: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/31.jpg)
Animation
� Deforming or editing the geometry
� Change over time
� Faces, articulated characters, …
� CSE169: Computer Animation (not offered this year)
31
![Page 32: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/32.jpg)
Animation
32
![Page 33: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/33.jpg)
Physics Based Animation
33
![Page 34: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/34.jpg)
Video
� SIGGRAPH 2012 Technical Papers:http://www.youtube.com/watch?v=cKrng7ztpog
� Blender Demo Reel 2012:http://www.youtube.com/watch?v=P2xzn6bEN_U
34
![Page 35: CSE 167: Introduction to Computer Graphicsivl.calit2.net/wiki/images/2/2d/01_IntroductionF12.pdf · 2012-09-28 · Peter Shirley: Fundamentals of Computer Graphics, any edition (Google](https://reader030.vdocuments.us/reader030/viewer/2022040415/5f33de5ee0b38b0cf80c05c2/html5/thumbnails/35.jpg)
Announcements
� Next Lecture
� Tue 10/2 at 2pm
� Topic: Homogeneous Coordinates
� Preparation: Review three dimensional vector/matrix calculations
� Homework Introduction (optional):Introduction to base code and homework assignment #1:Sid Vijay, CSE lab 260, Monday Oct 1st, 2:30-4:30pm
� Homework assignment #1 due Friday, Oct 5th
35