WPI Computer Science Department

Computer Science Department
------------------------------------------

CS 543, Computer Graphics, Fall Semester 2007


Lectures: FL 311, Wednesdays, 6pm - 9.50pm

Instructor: Prof. Emmanuel Agu, FL-139, 508-831-5568, emmanuel@cs.wpi.edu
Office Hours: Thursdays 1-2 PM; Others by appointment

Text: Computer Graphics using OpenGL (Third edition) by F.S. Hill Jr. and S Kelley
Supplemental texts (Optional): (1) OpenGL Programming Guide (6th Edition) by Woo, Neider, Davis and Shreiner and (2) OpenGL Reference Manual (4th Edition) by Shreiner

Facilities: You may do your assignments in C/C++ but may choose to develop your code on either Unix or Windows. Note that compiled graphics code tends to be large and may consume more than one megabyte of disk space. Very important: No matter what platform you write your code on, the final executable must run on the WPI CCC Unix machines with clear instructions on your documentation how to run it. Your submitted code will be compiled, tested and graded on the machine ccc.wpi.edu. Make sure your code runs well on that machine before submitting it. Points will be deducted if you do not check that your code works on that machine.

Class Websites: The class website is at http://www.cs.wpi.edu/~emmanuel/courses/cs543/. A myWPI class website has also been set up. Please post your questions on the discussion board to avoid excessive emails and so that everyone can benefit from answers given. You may send email to me if you have questions on matters that concern only you.

Software Utilities: You will be provided a simplified interface to OpenGL, called MiniGL. Project 4 for this course shall require using miniGL. You will get miniGL software later in the course.

Grade Policy: 50% exams (2 exams), 50% assignments (5 projects)

Notes:

  1. Reading is mandatory, working ahead is encouraged.
  2. Exams are based on both lectures and readings, so class attendance is strongly encouraged.
  3. Working and discussions in pairs is okay. However, each student must turn in different and unique projects.
  4. Cheating is strictly forbidden
  5. Cheating (a.k.a., academic dishonesty), defined as taking credit for work you did not do or knowledge you do not possess, is strictly forbidden. First offenders will receive a zero grade for the assignment or exam in question and an academic dishonesty report will be filed with the Office of Student Affairs. Repeat offenders will receive an F for the course and the case will be brought before the campus hearing board (see Student Handbook).
  6. All assignments should be archived using the Unix tar command and emailed to me. For the benefit of students who have not used tar before, I will give instructions on how to run this command. Both your executable and source code must be turned in. Files MUST include instructions on compiling and running the program and should be WELL documented. Typically, a well-organized README text file is sufficient. Insufficient documentation will result in a loss of points. Data files should include a comment line at the start giving your name, the assignment for which it is intended, and the most recent date in which the file was changed. Please do NOT turn in hardcopies!!

Projects: There will be five projects (1 project in 2D and interaction, 3 projects in 3D and 1 ray tracing project). The 3D projects involve the modeling and rendering using basic shapes. An approximation would be fine - I would not expect you to create a state-of-the-art model - but it should be recognizable. You can choose a fixed configuration of components though those of you planning to carry out research or further projects in graphics might want to attempt some greater level of detail.

Late assignments (turned in after the start of class on the due date) will be penalized 15 percent per day. Assignments will not be accepted once it is late by 4 days or more.

Schedule:


Week 1 (Sept 5)
   Topics: overview, graphics intro, basic HW/SW, OpenGL/GLUT intro
   Reading: Ch 1 - 2 
   Project 0 OpenGL practice

Week 2 (Sept 12)
   Topics: 2D systems, window-to-viewport mapping, clipping,   
   Fractals, points, scalars, vectors
   Reading: , 3.1 - 3.2, Ch 9, 4.2-4.4, appendix 4
   Project 1 Due: Wednesday, Sept 26, Emailed before class
 
Week 3 (Sept 19)
   Topics: 3D Transformations and coordinate systems, 3D modeling
   Reading: ch 5.2 - 5.5
 
Week 4 (Sept 26)
   Topics: 3D modeling using polygonal meshes, the synthetic camera, 3D viewing, view volume and projection
   Reading: 6.1, 6.2, ch 7.1 - 7.4, 8.1-8.3
   Project 2 Due: Wednesday, October 10, Email before class

Week 5 (Oct 3)
   Topics: 3D clipping, illumination, shading 
   Reading: section 7.4, ch 8.2
 
Week 6 (Oct 10)
   Topics: Texturing, Hidden Surface Removal, Shadows
   Reading: section 8.4 - 8.6
 
Week 7 (Oct 17) 
   Midterm Exam: Wed, Oct 17, in-class 
   Project 3 Due: Wednesday, October 31, in-class
   
Week 8 (Oct 24)
   Topics: raster graphics (line drawing, polygon fill, etc)
   Reading: ch 9
   Project 4  Due: Monday, Nov 19
 
Week 9 (Oct 31)
   Topics: Curves, Color spaces, ray tracing
   Reading: Chapter 10, 11,  12 
 
Week 10 (Nov 7)
   Topics: Ray tracing
   Reading: ch  12 

Week 11 (Nov 14)
   Topics: Ray tracing
   Reading: ch  12
 
Week 12 (Nov 28) (No class on Nov 21: Thanksgiving break)
   Topics: Ray tracing
   Reading: ch  12
  Project 5, Due: Wednesday, Dec 12, in-class5 
 
Week 13 (Dec 5)
   Topics: Ray tracing
   Reading: ch  12
 
Week 14 (Dec 12)
   Final Exam: Tue, Dec 12, in-class




Class Slides

Week 1 Slides Lecture 1 (part I) [ pdf ] Lecture 1 (part II) [ pdf ] Lecture 1 (part III) [ pdf ]
Week 2 Slides Lecture 2 (part I) [ pdf ] Lecture 2 (part II) [ pdf ]
Week 3 Slides Lecture 3 (part I) [ pdf ] Lecture 3 (part II) [ pdf ] Lecture 3 (part III) [ pdf ]
Week 4 Slides Lecture 4 (part I) [ pdf ] Lecture 4 (part II) [ pdf ]
Week 5 Slides Lecture 5 (part I) [ pdf ] Lecture 5 (part II) [ pdf ] Introduction to GL Shading Language [ pdf ] Midterm review [ pdf ]
Week 6 Slides Lecture 6 [ pdf ]
Week 7 Slides Lecture 7 (part I) [ pdf ] Lecture 7 (part II) [ pdf ]
Week 8 Slides Lecture 8 (part I) [ pdf ] Lecture 8 (part II) [ pdf ]
Week 9 Slides Lecture 9 (part I) [ pdf ] Lecture 9 (part II) [ pdf ] Lecture 9 (part III) [ pdf ]
Week 10 Slides Lecture 10 (part I) [ pdf ] Lecture 10 (part II) [ pdf ]
Week 11 Slides Lecture 11 (part I) [ pdf ]
Week 12 Slides Lecture 12 [ pdf ] Lecture 13 [ pdf ] Final Review [ pdf ]

Old Exams

Past Final Exams Finals Fall Semester 03 [pdf] Finals Fall Semester 05 [pdf]

Main Web Resources Miscellaneous Web Resources

[Feedback] [Search Our Web] [Help & Index]

[Return to the WPI Homepage] [Return to CS Homepage]

mailto:webmaster@cs.wpi.edu