Copyright © 2014 Hao Li
CSCI 420: Computer Graphics FS 2014
Administrative Map
Course Overview
Schedule
Prerequisites
Grading
This page will be frequently updated with the latest slides, exercises, and additional reading materials. Also, this course will be dynamic as it is being improved during the semester.
Lecture URL
Exercises / Q&A
Type
Class number
Hours
Days
Room
Lecture, 4 units
001-30230R
11:00 am - 12:20 pm
Tuesday, Thursday
TTH 208 (Mark Taper Hall)
3501 Trousdale Pkwy
Instructor
Office
Office hours
TA
Office
Office hours
Date
Tue Aug 26, 2014
Thu Aug 28, 2014
Tue Sep 02, 2014
Thu Sep 04, 2014
Tue Sep 09, 2014
Thu Sep 11, 2014
Tue Sep 16, 2014
Thu Sep 18, 2014
Tue Sep 23, 2014
Thu Sep 25, 2014
Tue Sep 30, 2014
Thu Oct 02, 2014
Tue Oct 07, 2014
Thu Oct 09, 2014
Tue Oct 14, 2014
Thu Oct 16, 2014
Tue Oct 21, 2014
Thu Oct 23, 2014
Tue Oct 28, 2014
Thu Oct 30, 2014
Tue Nov 04, 2014
Thu Nov 06, 2014
Tue Nov 11, 2014
Thu Nov 13, 2014
Tue Nov 18, 2014
Thu Nov 20, 2014
Tue Nov 25, 2014
Thu Nov 27, 2014
Tue Dec 02, 2014
Thu Dec 04, 2014
Tue Dec 09, 2014
Thu Dec 11, 2014
Tue Dec 16, 2014
Hoooray!
Topic
Introduction
Basic Graphics Programming
Input and Interaction
Transformations
Viewing and Projection
Hierarchical Modeling
Polygonal Meshes, Curves, & Surfaces
Splines
Lighting and Shading
Shading in OpenGL
Texture Mapping (Cupcake Man Remix)
Bump Mapping & Clipping
Rasterization
Ray Tracing
Geometric Queries (Chongyang)
Programmable Graphics Hardware (Kyle)
Review for Midterm
Midterm Exam
Spatial Data Structures
Guest: Javier von der Pahlen (Activision)
Global Illumination
Guest: Feng Xie (Dreamworks)
Animation Principles & Guest (Dreamworks)
Computer Animation
Quaternion and Rotations
Physically Based Simulation I
Physically Based Simulation II
No Class (Thanksgiving)
I/O Technologies & VR
No Class (Study Days)
No Class (Study Days)
No Class (Study Days)
Final Exam, at TTH 208, 8AM-9AM
1
Co-Instructor
chongyang.ma@usc.edu
• While this course is self-contained, students should have solid background in linear algebra, C/C++ programming, and
• CSCI 104L: Data Structures and Object Oriented Design
• MATH 225: Linear Algebra and Linear Differential Equations
Course Material
• This course is based on the following textbooks:
• Resources:
• Supplemental books:
• Prerequisite-related Resources:
Statement for Students with Disabilities
Any student requesting academic accommodations based on a disability is required to register with Disability Services and Programs (DSP) each semester. A letter of verification for approved accommodations can be obtained from DSP. Please be sure the letter is delivered to me (or to TA) as early in the semester as possible. DSP is located in STU 301 and is open 8:30 a.m.–5:00 p.m., Monday through Friday. The phone number for DSP is (213) 740-0776.
Statement on Academic Integrity
Emergency Preparedness/Course Continuity in a Crisis
Ahahahaha! In case of a declared emergency if travel to campus is not feasible, USC executive leadership will announce an electronic way for instructors to teach students in their residence halls or homes using a combination of Blackboard, teleconferencing, and other technologies (LOL!).
Please activate your course in Blackboard with access to the course syllabus. Whether or not you use Blackboard regularly, these preparations will be crucial in an emergency. USC's Blackboard learning management system and support information is available at blackboard.usc.edu.
For Those Who Want to Dive Deeper
If you are curious and interested in doing more research related to Computer Graphics and Computer Vision.
• You may want to browse interesting research papers in the top avenues in graphics (Siggraph, Siggraph Asia, ACM TOG, Eurographics) and computer vision (CVPR, ICCV, ECCV), as well as some more specialized but equally excellent conferences (SGP, SCA, 3DV).
• Assignments: 50% = 16% + 17% + 17%
• Mid-terms exam: 20%
• Final exam: 30%
Good news everyone! All assignments must be completed to pass the course. The assignments have bonus credits.
Late Policy
• Programming assignments should be turned in by midnight on the day they are due. A total of three late days may be taken during the semester on programming assignments. For example, you can use one late day on the second assignment, and two on the third assignment. All days are counted, including any weekends and holidays, as follows:
Less than 24 hours late = 1 late day, 24-48 hours late = 2 late days, 48-72 hours late = 3 late days, and so on.
• The flexibility provided by the late days is intended to get you through the time where all your classes just happen to have assignments due on the same day. Beyond the three late days, there will be a penalty of 10% of the value of the assignment / day. Exceptions will be granted only under most dire circumstances and must be discussed with and approved by the instructor at least one week in advance.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Or call Dr. Bregler:
Co-TA
Liwen Hu
16
Lecture
Discussion
Class number
Hours
Days
Room
17
• Edward Angel: Interactive Computer Graphics: A Top-Down Approach Using OpenGL, Fifth edtition, Published: Addison Wesley, ISBN: 9780321535863
• Dave Shreiner: OpenGL Programming Guide: The Official Guide to Learning OpenGL, Versions 3.0 and 3.1, Seventh edition, Publisher: Addison-Wesley Professional, ISBN: 9780321552624
• Textbook support by the author, Edward Angel
• OpenGL homepage: www.opengl.org
• OpenGL Red Book online, Version 1.1
• OpenGL SDK documentation on www.opengl.org
• OpenGL tutors for windows by Nate Robins
• Real-Time Rendering. Thomas Akenine-Möller and Eric Haines. 2nd edition, AK Peters, 2002. ISBN 1-56881-182-9.
• Computer Graphics: Principles and Practice. James D. Foley, Andries van Dam, Steven K. Feiner, and John F. Hughes. 2nd edition in C, Addison-Wesley, 1996. ISBN 0201848406.
• Fundamentals of Computer Graphics. Peter Shirley, Steve Marschner. 3rd edition, A K Peters, 2009. ISBN 1568814690.
• An Introduction to Ray Tracing. Andrew S. Glassner, editor, Academic Press, 1989. ISBN 0-12-286160-4.
• Advanced Animation and Rendering Techniques, Theory and Practice. Alan Watt and Mark Watt, ACM Press and Addison-Wesley, 1992. ISBN 0-201-54412-1.
• (Math for graphics) Appendices B and C of the course textbook (Angel)
• (Math for graphics) Chapter 2, "Miscellaneous Math" of Shirley and Marschner, Fundamentals of Computer Graphics
• Introduction to Linear Algebra. Gilbert Strang. Wellesley-Cambridge Press, 1998. ISBN 0-9614088-5-5.
• Calculus: Early Transcendentals. James Stewart. Fourth edition, Brooks/Cole Publishing Company, 1999. ISBN 0-534-36298-2.
• The C Programming Language. Brian W. Kernighan and Dennis M. Ritchie. Second edition, Prentice Hall, 1988. ISBN 0-13-110362-8 (paperback).
Grader
Kevin Macwan
kmacwan@usc.edu
Grader
Yanqing Liu
yanqing@usc.edu
Acknowledgment
I would like to thank Jernej Barbič and Sathyanaraya Raghavachary for providing the lecture material. This lecture is based on the computer graphics courses taught by Frank Pfenning and Jessica Hodgins from CMU. This course has also been influenced by computer graphics courses at Cornell, MIT, UC Berkeley, EPFL, and Stanford.