| تاريخ بدء البرنامج | آخر موعد للتسجيل |
| 2014-08-28 | - |
نظرة عامة على البرنامج
CS 4731 Computer Graphics, A term 2014
Course Details
The course CS 4731 Computer Graphics is offered in the A term of 2014.
Lectures
Lectures are held in FL-320, Monday through Thursday and Friday, from 4:00 to 4:50 PM.
Teaching Assistant and Instructor
The teaching assistant for the course is Mi Feng, and the instructor is Prof. Emmanuel Agu, who can be found in FL-139. Office hours for the instructor are Mondays from 2 to 3 PM, and other times by appointment.
Required Text
The required text for the course is Interactive Computer Graphics (6th edition) by Angel and Shreiner. It is important to note that the 6th edition is being used, not the 7th edition.
Supplemental Texts
Supplemental texts for the course include:
- OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition) by Dave Shreiner, Graham Sellers, John M. Kessenich, Bill M. Licea-Kane
- Computer Graphics using OpenGL (Third edition) by F.S. Hill Jr. and S Kelley
- OpenGL Shading Language (3rd edition) by Randy Rost and Bill Licea-Kane
- OpenGL SuperBible: Comprehensive Tutorial and Reference (6th Edition) by Graham Sellers, Richard S Wright, Nicholas Haemel
Facilities
Assignments should be done in C/C++ and can be developed on either Unix or Windows. However, the final executable must run on the Windows machines in the WPI Zoolab, with clear instructions in the documentation on how to run it.
Grade Policy
The grade policy for the course is as follows:
- 50% exams (2 exams)
- 50% assignments (4 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
Important notes for the course include:
- Reading is mandatory, and working ahead is encouraged.
- Exams shall be based on lectures, readings, and a bit of project knowledge, so class attendance is strongly encouraged.
- Working and discussions in pairs are okay, but each student must turn in different and unique projects.
- Cheating is strictly forbidden.
- Cheating, 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.
- All assignments should be submitted electronically. Hard copies or submissions on disks will not be accepted. Both the executable and source code must be turned in. The documentation must include the structure of the project, what each file contains, and instructions for compiling and running the program.
Schedule (Tentative)
The tentative schedule for the course is as follows:
- Week 1 (Aug 28): Overview, graphics intro, basic HW/SW, OpenGL/GLUT & GLSL intro
- Week 2 (Sept 2): GLSL shader introduction, 2D systems, window-to-viewport mapping, interaction & menus, fractals
- Week 3 (Sept 8): Linear Algebra for Graphics, Rendering 3D Models, Transformations
- Week 4 (Sept 15): Transformations, Rotations and Matrix Concatenation, Hierarchical modeling, Viewing, Camera Controls
- Week 5 (Sept 22): Projection, Orthographic Projection, Perspective Projection
- Week 6 (Sept 29): Lighting & shading, finding normals, Per-pixel lighting, BRDFs, Cook-Torrance BRDF
- Week 7 (Oct 6): Shadows, Texturing (including bump mapping), Hidden Surface Removal
- Week 8 (Oct 13): Clipping, Rasterization (line drawing, polygon filling), antialiasing, Curves
Class Slides
Class slides are available for the following topics:
- Lecture 1: Introduction to Graphics
- Lecture 2: Introduction to OpenGL/GLUT (part 1)
- Lecture 3: Introduction to OpenGL/GLUT (part 2)
- Lecture 4: 2D Graphics Systems (Drawing Polylines, tiling, & Aspect Ratio)
- Lecture 5: Fractals
- Lecture 6: Interaction, Shader Setup and GLSL Introduction
- Lecture 7: Building 3D Models
- Lecture 8: Introduction to Transformations
- Lecture 9: Implementing Transformations
- Lecture 10: Rotations and Matrix Concatenation
- Lecture 11: Hierarchical 3D Models
- Lecture 12: Linear Algebra for Graphics: (Points, Scalars, Vectors)
- Lecture 13: Viewing & Camera Control
- Midterm Review slides: Midterm Review
- Lecture 14: Projection (Part I)
- Lecture 15: Projection (Part 2): Derivation
- Lecture 16: Lighting, Shading and Materials (Part 1)
- Lecture 17: Lighting, Shading and Materials (Part 2)
- Lecture 18: Lighting, Shading and Materials (Part 3)
- Lecture 19: Texture Mapping
- Lecture 20: Environment mapping (Reflections and Refractions)
- Lecture 21: Shadows and Fog
- Lecture 22: Clipping
- Lecture 23: Viewport Transformation & Hidden Surface Removal
- Lecture 24: Rasterization: Line Drawing
- Lecture 25: Rasterization: Polygon filling and Antialiasing
- Lecture 26: Curves, Image manipulation and Final Review
Schedule for Office Hours
Office hours for the teaching assistant, Mi Feng, are held in the zoolab at the following times:
- Monday: 10:00-11:00 AM, 1:00-2:00 PM
- Tuesday: 1:00-2:00 PM, 2:00-3:00 PM, 3:00-4:00 PM
- Wednesday: 10:00-11:00 AM, 11:00 AM-12:00 PM
- Thursday: 6:00-7:00 PM, 7:00-8:00 PM, 8:00-9:00 PM, 9:00-10:00 PM
- Friday: None
