CSE 167: Introduction to Computer Graphics

Fall 2006

News | Staff | Webboard | Schedule | Calendar | Projects | Exams | Grading | Resources


2006-09-25 Welcome to CSE 167! Check here often for course announcements.
2006-10-24 The midterm is on Thursday. There will be a review session tomorrow in B250 at 4:00pm, and sample questions have been posted in the Exams section.
2006-11-2 Project 3 has been posted.
2006-11-21 Project 4 has been posted. There will be a discussion section Tuesday, 11-21-2006 in B250 at 2:00pm.

Course Staff

Instructor Steve Rotenberg ( steve@graphics.ucsd.edu )
Office: CSE 4112
Office Hours:
TTh 5-6pm
TAs Arash Keshmirian ( arash@ucsd.edu )
Patrick Shyu ( pshyu@ucsd.edu )
Sections will be announced in class and usually occur around the time when assignments are assigned, or prior to exams.
Lab Hours:
Tuesday, Thursday 2:00 pm - 4:30 pm (will be lengthened as necessary)
Location: B240, B250, B260, and B270 in the CS Building


We have a discussion board. Your password for the board is your Student ID. Please direct your general questions to the board, as other students may share your question.

Weekly Schedule

Lectures Time: Tues/Thurs 6:30pm - 7:50pm
Location: 1330 HSS


Below is a tentative calendar for the quarter, and may be subject to change.

Lecture Date Topic Reading
1 9/21 Introduction [ .ppt (5.7MB) | .pdf (0.8MB)] Buss: 1-16, 319-331
2 9/26 Vectors & Matrices [ .ppt (0.2MB) | .pdf (0.2MB)] Buss: 17-34
3 9/28 Homogeneous Transformations [ .ppt (0.3MB) | .pdf (0.3MB) ] Buss: 34-46
4 10/3 Perspective and Viewing [ .ppt (0.2MB) | .pdf (0.2MB) ] Buss: 46-58
5 10/5 Clipping & Scan Conversion [ .ppt (0.2MB) | .pdf (0.1MB) ] (Project 1 Due) Buss: 58-66
6 10/10 Class Cancelled due to Instructor Illness
7 10/12 Models & Hierarchies [ .ppt (0.1MB) | .pdf (0.1MB) ] & Texture Mapping [ .ppt (0.2MB) | .pdf (0.1MB) ] Buss: 67-87
8 10/17 Lighting [ .ppt (0.2MB) | .pdf (0.1MB) ] Buss: 126-145
9 10/19 Antialiasing [ .ppt (0.4MB) | .pdf (0.2MB) ] Buss: 99-125
10 10/24 Lighting, part 2 [ .ppt (0.2MB) | .pdf (0.1MB) ] (Project 2 Due) Buss: 87-98
11 10/26 Midterm (In Class)  
12 10/31 Cubic Curves [ .ppt (0.2MB) | .pdf (0.1MB) ] Buss: 155-177, opt: 178-232
13 11/2 Curved Surfaces [ .ppt (0.2MB) | .pdf (0.1MB) ]  
14 11/7 Scene management [ .ppt (1MB) | .pdf (0.2MB) ]
15 11/9 Light and Color (Project 3 Due) Buss: 146-154
16 11/14 Ray tracing [ .ppt (0.3 MB) | .pdf (0.3 MB) ] Buss: 233-270
17 11/16 Global illumination & photorealism [ .ppt (1.1 MB) | .pdf (0.3 MB) ] Buss: 272-288
18 11/21 Procedural modeling  
** 11/23 Thanksgiving!!!  
19 11/28 Project 4 discussion hosted by TA's
20 11/30 Review (Project 4 Due, Sign up by 5:30PM)  
Final 12/6 Time: 7:00pm to 10:00pm. Location: TBA  


Project 1 - Due before lecture on Thursday, October 5.

Project 2 - Due before lecture on Tuesday, October 24.

Project 3 - Due at or before 6:00 pm, Thursday, November 9.

Project 4 - Due at or before 6:00 pm, Thursday, November 30.

  • Some extra help with camera rays. (PDF)
  • Another very helpful document, borrowed from CSE168. (PDF, UCSD Campus/Proxy Only)


Midterm Exam - 10/26/2006
Sample Questions (.pdf)


Project Grading

Projects will be graded face-to-face during lab hours. You will be asked to show your working project to one of the TA's and explain your code in some detail. There is no project writeup required unless explicitly stated. You must get your project graded before lecture on the due date. Getting your project graded early is highly encouraged, as there is quite a rush for grading during the last hour. If you find that you cannot make lab hours for grading, e-mail one of the TA's early in the week (by Tuesday at least) to setup an alternate grading session.

Course Breakdown

80 points total
10 Project 1
10 Project 2
10 Project 3
15 Project 4
15 Midterm
20 Final

Texts & Other Resources

Required Text: S. Buss, 3D Computer Graphics: A Mathematical Introduction with OpenGL.  Cambridge Univ. Press, 2003. 
Book web site: http://math.ucsd.edu/~sbuss/MathCG .

Recommended Text: M. Woo et al., OpenGL Programming Guide, 4th  Edition. Addison-Wesley, 1999.

  • The textbook's web site at http://math.ucsd.edu/~sbuss/MathCG has a number of sample OpenGL programs illustrating basic features and usages of OpenGL.

  • GLUT 3.7:   The GLUT libraries provide an accessible set of routines for using the OpenGL API.  All of the Math 155 / CSE 167 homework projects will use GLUT.  The necessary GLUT files are already installed on the PC lab computers, but they are also available for download from the web.   If you are using a PC at home, you may need to download the GLUT .h, .dll and .lib files. The GLUT homepage is at  http://www.xmission.com/~nate/glut.html or at http://www.sgi.com/software/opengl/glut.html .    The first site has exactly what you need for Math 155AB / CSE 167 and is more up-to-date. The second site is somewhat more comprehensive however.
        Documentation for the GLUT API is available in HTML , Postscript and PDF formats.  This documentation may not include all the features of GLUT: advanced features can be understood by examining the source code for GLUT.

  • Older editions of the OpenGL programming guide are available online for free!!!    You can find the first edition at http://fly.cc.fer.hr/~unreal/theredbook/ , as well as many other locations.    The second edition has been posted online in the past, but its location seems to change frequently and this year I could not find it on google. (Perhaps it is not actually permitted to post it online?  Please let me know if you find it at a legitimate online location.)

  • You may find some of the information at older CSE 167 websites useful.