WPI Computer Science Department

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

CS 543 Computer Graphics, Fall Semester 2018


Lectures: Fuller Labs (FL) 320, Wednesdays, 6:00 - 8:50PM

Grader/Student Assistant: Xuanyu Chen, xchen9@wpi.edu
Office hours: Tuesdays 3 - 5PM, Wednesdays 3 - 5PM
Note: All SA office hours will be held in the zoolab unless you receive instructions otherwise.

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

Required Text: Interactive Computer Graphics (6th edition) by Angel and Shreiner (Available on Amazon.com)
IMPORTANT NOTE: We are using the 6th edition NOT the 7th edition of the text

Supplemental texts (Optional):

Facilities: You should do your assignments in C/C++ on Microsoft Windows since that's the platform on which they will be graded. 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 Windows machines in the WPI Zoolab with clear instructions in your documentation on how to run it. Your submitted code will be compiled, tested and graded on the machines in the zoolab. Make sure your code runs well on those machines before submitting it. Points will be deducted if you do not check that your code works on those machines.

Class Websites: The class website is at http://web.cs.wpi.edu/~emmanuel/courses/cs543/s18/ . Message boards have been set up on InstructAssist where you can discuss the homeworks and ask questions. 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. You can log into InstructAssist here:
[ InstructAssist Log In Page ]

Software Utilities: Your programs will be written in OpenGL. Microsoft Visual Studio and OpenGL are all installed on the machines in the WPI Zoolab.

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

Late Assignment Credit: Late programming assignments will be penalized 15 points off per day (per 24 hours). Assignments later than 4 days late will not be accepted.

Notes:

  1. Reading is mandatory, working ahead is encouraged.
  2. Exams will be based on lectures, readings and a bit of project knowledge, 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). Using or submitting code retrieved from online repositories such as gitHub, which was previously submitted by a student in a previous iteration of this class (or CS 4731 undergraduate version) is considered cheating
  6. All assignments should be submitted electronically. Hard copies or submissions on disks will not be accepted. Both your executable and source code must be turned in. Your documentation MUST include the structure of your project, what each file contains and instructions for compiling and running the program. Typically, a well-organized README ASCII 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 when the file was changed. Your README file may be in ASCII text, Microsoft Word or PDF.


Schedule (Tentative)

Week 1 (Aug 29) 
   Topics: Overview, graphics intro, basic HW/SW, OpenGL/GLUT  
    Homework 0  Homework 0  Not to be submitted

Week 2 (Sept 5) 
   Topics: 2D Graphics Systems, Fractals, Interaction, Shader Setup and GLSL Introduction
    Homework 1 Homework 1  Due Wednesday, Sept 19, by class time
 
Week 3 (Sept 12) 
   Topics: Linear Algebra for Graphics, Building 3D Models, Introduction to Transformations
 
Week 4 (Sept 19) 
   Topics: Rotations and Matrix Concatenation, Implementing Transformations, Hierarchical 3D Models 

Week 5 (Sept 26) 
   Topics: Viewing & Camera Control 
    Homework 2 Homework 2 Due Wednesday, Oct 10, by class time 
   Midterm exam 1: Sept 26, in-class  
 

Week 6 (Oct 3)
   Topics: Projection, Lighting, Shading and Materials (Parts 1 & 2)


Week 7 (Oct 10)
   Topics: Texture mapping, environment mapping (Reflections and Refractions)
    Homework 3 Homework 3 Due Wednesday, Oct 31, by class time
   
(Oct 17)
   Term Break, No Class

Week 8 (Oct 24)
   Normal mapping, High Dynamic Range Lighting, Tone Mapping, Bloom Effect


Week 9 (Oct 31)
   Topics: Shadow and Fog, shadow maps and shadow volumes, Clipping (2D and 3D)
    Homework 4 Homework 4 Due Wednesday, Nov 14, by class time 


Week 10 (Nov 7)
   Topics: Noise rendering, viewport transformation, Hidden Surface Removal (HSR)
   Midterm exam 2: Nov 7, in-class


Week 11 (Nov 14)
   Topics: Rasterization: Line Drawing, Polygon filling and Antialiasing 
    Homework 5 Homework 5 Due Wednesday, Dec 5, by class time


Week 12 (Nov 28)
   Topics: Curves and tesselation, geometry shaders


Week 13 (Dec 5)
   Topics: Image manipulation


Week 14 (Dec 12)
   Topics: Ray tracing and physically-based Real-time rendering
   Final Exam: Dec 12, in-class 


Class Slides

Old Exams


Main Web Resources


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

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

mailto:webmaster@cs.wpi.edu