4003-570 Computer Graphics I - Course Syllabus

Last updated 2011/09/05 10:11:12


Name: Warren R. Carithers
Office: 3617 Golisano (70-3617)
Phone: (585) 475-5393
Email: wrc AT cs.rit.edu

1. Course Overview

1.1. Course Goal

The goal of Computer Graphics I is to provide a broad exposure to the computer graphics field in order to be prepared for follow-on study.

1.2. Course Outcomes

The following are the intended outcomes for this course:

1.3. Course Prerequisites

The prerequisite for this course is third-year standing in Computer Science. At a minimum, you should be familiar with traditional data structures (linked lists, trees, etc.), and should have some familiarity with matrix and vector mathematics, geometry, and trigonometry.

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.

2. Books

The required textbook for this course is Computer Graphics with OpenGL, Fourth Edition, by Donald Hearn, M. Pauline Baker, & Warren R. Carithers; Prentice-Hall, 2011.

The programming assignments for this course must be done in C or C++. OpenGL was designed for use with C and C-like languages; it can be used with C++, but it doesn't take advantage of any of the object-oriented capabilities of C++, and there are a few minor annoyances that you will run into when using OpenGL and its support libraries with C++.

Although one is not required, having a C or C++ textbook or an OpenGL reference is a good idea. Here are some references:

C
Pointers on C, by Kenneth Reek; Addison Wesley.
C: How To Program, by Deitel & Deitel; Prentice-Hall.
 
C++
C++: How To Program, by Deitel & Deitel; Prentice-Hall.
 
OpenGL
OpenGL Programming Guide: The Official Guide to Learning OpenGL, Versions 3.0 and 3.1 Seventh Edition, Dave Shreiner; Addison Wesley.
OpenGL Reference Manual, OpenGL Architecture Review Board et. al.; Addison Wesley. OpenGL Shading Language, second edition, by Randi J. Rost and Bill Licea-Kane; Addison Wesley, 2010.

3. Grades

Your final grade will be based on two examinations and a series of out-of-class assignments. The distribution between these groups is:

  25% first exam
  25% second exam
  10% graded homework
  40% programming assignments

3.1. Exams

Two exams will be scheduled for this course. The first is a two-hour midterm exam; the second, a two-hour exam during finals week. The second exam will not be comprehensive. As a somewhat deeper understanding of the material is expected of graduate students, the graduate and undergraduate versions of the exams may not be the same.

Currently, the best guess as to the dates of these exams are:

Last updated 2011/11/10 18:28:31

3.2. Homework

Homework will be announced in class and posted to the course home page.

3.3. Projects

There will be four programming projects this quarter. They will involve the use of the OpenGL graphics libraries; none will require OpenGL features that aren't supported by the version we have installed on the CS Solaris machines. Some of the projects will consist of multiple parts that are submitted separately; in some cases, the later parts may build upon the earlier parts for that assignment.

Important note: All programming projects will be submitted for grading on the CS Solaris machines, and therefore must work on those systems. If you choose to develop your solutions elsewhere, it is your responsibility to allow sufficient time to iron out any problems that may arise due to incompatibilities between your development system and the CS systems. Programs that ``work on my computer at home'' but don't work on the CS systems don't work.

Along similar lines, the minimum acceptance test for project submissions is that they must compile and link cleanly (i.e., without fatal compilation or linking errors) when submitted with the try command. Emailed project solutions will not be accepted.

3.4. Problem Sets

In addition to the graded assignments described above, a series of ungraded problem sets and their solutions will be posted to the course assignments page. Their purpose is to help you gain additional experience with the concepts and techniques covered in class. Although these will not be collected or graded, I suggest you attempt to work the problems before looking at the answers, to help ensure that you understand the concepts.

4. RIT and CS Department Policies

4.1. Academic Conduct

Academic dishonesty will be dealt with in accordance with DCS and RIT policies.

4.2. Section 504 of the Rehabilitation Act

RIT is committed to providing reasonable accommodations to students with disabilities. If you would like to request accommodations such as special seating or testing modifications due to a disability, please contact the Disability Services Office. It is located in the Student Alumni Union, Room 1150; the Web site is www.rit.edu/dso. After you receive accommodation approval, it is imperative that you see me during office hours so that we can work out whatever arrangement is necessary.

5. Notes