Computer Graphics
I (4003-570-02 / 4005-761-02)
Course Information [PDF]
Instructor: Reynold Bailey
Email: rjb@cs.rit.edu
Phone: (585) 475-6181
Office hours: Monday, Thursday, 10:00 AM - Noon, Room 70-3517
Class times: Monday, Wednesday, 4:00 PM - 5:50 PM, Room 70-3445
Course URL: http://www.cs.rit.edu/~rjb/CG1.htm
Description
Computer Graphics I is a study of the hardware and software principles of interactive raster graphics. Topics include an introduction to the basic concepts, 2-D and 3-D modeling and transformations, viewing transformations, projections, rendering techniques, graphical software packages and graphics systems. Students will use computer graphics packages and implement fundamental computer graphics algorithms.
Course Goals
Prerequisite
Third Year Standing or permission of instructor
Please see me as soon as possible if you haven't reached this level. If you aren't at least a third-year student, or you have not come through an equivalent preparatory programming sequence, there is a very good chance that you don't have sufficient programming experience to allow you to succeed in this course.
Texts
Required:
Donald Hearn and M. Pauline Baker,
Computer Graphics with OpenGL (3rd Edition), Prentice-Hall, 2003, ISBN:
0130153907
Recommended:
OpenGL Architecture Review Board,
OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 1.4,
Fourth Edition, Addison-Wesely, 2003, ISBN: 0321173481
OpenGL Architecture Review Board, OpenGL(R) Reference Manual : The Official Reference Document to OpenGL, Version 1.4 (4th Edition), Addison-Wesley, 2004, ISBN: 032117383X
Requirements and Grading
| Undergraduate | Graduate | |
| Exams | 45% | 35% |
| Assignments | 45% | 35% |
| Homework | 10% | 10% |
| Grad Report | 20% |
Exams:
Two exams are scheduled for this course:
Both exams will be weighted equally in the calculation of your final grade.
Note to graduate students: A deeper understanding of the material is expected of graduate students. Hence, the graduate and undergraduate versions of the exams may not be the same.
Homework:
Homework will be announced in class and posted in the table below. Due dates are
also listed. Generally, students will have 1 week to complete homework
assignments.
Programming Assignments:
There will be four programming projects this quarter. They will involve the
use of the OpenGL graphics libraries. Project descriptions will be posted in the
table below. Generally, students will have 2 weeks to complete programming
assignments.
Grad Report (graduate students only):
Each graduate student is expected to research a topic relative to computer
graphics and prepare a 10-15 page report. Please see:
http://www.cs.rit.edu/~rjb/RITcourses/20071/ComputerGraphics1/public/gradreport.pdf
for specific information
Policy on Late Submissions:
It is extremely important to continue to make progress as the course progresses. As such, late deliverables will be not be allowed. If you forsee any problems with meeting a deadline, please see the instructor well in advance of the deadline to work out alternate arrangements.
Tentative Schedule
Lecture Notes: Slides presented in class will be posted in the content area of myCourses.
All assignments and homework will be posted in the table below. Special events such as homework and exam dates will also be posted. Please stay informed by visiting this site regularly throughout the quarter.
| Week | Day | Topics | Readings | Special Events |
| 1 | Mon Sept 3 | Course introduction and logistics | Chapter 1 | |
| Wed Sept 5 | Introduction to Computer Graphics | Chapter 1 | Homework 1 assigned | |
| 2 | Mon Sept 10 | Fundamentals / Graphics Systems | Chapter 2 | |
| Wed Sept 12 | OpenGL primer | Chapters 2, 3, 4 | Homework 1 due, Assignment 1 assigned | |
| 3 | Mon Sept 17 | Drawing graphics primitives | Chapter 3 | |
| Wed Sept 19 | Polygon fill algorithms | Chapter 3 | Grad Report: Topic Due | |
| 4 | Mon Sept 24 | 2D viewing / clipping | Chapter 5 | Assignment 2 assigned |
| Wed Sept 26 | 2D and 3D transformations | Chapter 6 | Assignment 1 due - Extended to Sept 27 11:59 p.m. | |
| 5 | Mon Oct 1 | 3D viewing pipeline | Chapter 7 | |
| Wed Oct 3 | Midterm review | |||
| 6 | Mon Oct 8 | MIDTERM EXAM | ||
| Wed Oct 10 | Hidden surface removal | Chapter 9 | Assignment 2 due | |
| 7 | Mon Oct 15 | Hierarchical models / animation | Chapters13, 14 | |
| Wed Oct 17 | Light and Color, Lighting in OpenGL | Chapter 10, 12 | Assignment 3 assigned (due Oct 27), Homework 2 assigned (Due Oct 24) | |
| 8 | Mon Oct 22 | Shading and textures | Chapter 10 | |
| Wed Oct 24 | Textures in OpenGL | Chapter 10 | Homework 2 due | |
| 9 | Mon Oct 29 | Modeling: curves and surfaces | Chapter 8 | Assignment 4 assigned (due Nov 10) |
| Wed Oct 31 | Modeling: procedural methods | Chapter 8 | ||
| 10 | Mon Nov 5 | Global illumination / visualization | Chapter 10.11 - 10.14 | |
| Wed Nov 7 | Special topic TBA | Grad report due | ||
| 11 | Mon Nov 12 | Final exam review | ||
| Wed Nov 14 | FINAL EXAM |
It is a shame that this must be stated at all, but there are always a few students who do not abide by the rules of proper academic conduct. For the record:
Those who behave in a dishonest or unethical manner in computer science courses, or in their dealings with the Computer Science Department, are subject to disciplinary action. In particular, dishonest or unethical behavior in the execution of assigned work in a computer science course will be treated as follows:
Complete policy details regarding cheating and classroom conduct can be found at the following links
Important Links (more will be added)
Links from previous offerings of this course (please take some time to go through theses links. Lots of good information, code samples, tutorials, and other resources are available.