Computer Graphics
I
4003-570-01 / 4005-761-01
Fall 2007
Instructor:
Joe Geigel
Office:
70-3527
Office
Hours: MW 2-4 (or by appt)
E-mail: jmg@cs.rit.edu
URL:
http://www.cs.rit.edu/~jmg/
Course
URL:
http://www.cs.rit.edu/~jmg/cgI
(course content also available at mycourses)
Class
Dates: MW 6-8
Classroom:
70-1620
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.
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.
Learning
Outcomes
After completion of this course:
- Students will be able to describe
the history and evolution of computer graphics, both hardware and
software.
- Students will be able to describe
and implement 2D graphics and algorithms including line drawing,
polygon filling, clipping, and transformations.
- Students
will be able to explain the concepts of and techniques used in 3D
computer graphics including viewing transformations, hierarchical
modeling, color, lighting and texture mapping. Students will be
exposed to current computer graphics research areas.
- Students will be
able to use a current graphics API (OpenGL).
- Students will
be describe algorithms and techniques fundamental to 3D computer
graphics and explain the relationship between the 2D and 3D versions of
such algorithms. Students will be able to reason about and apply
these algorithms and techniques in new situations.
Texts
Required Text -- Chapters
corresponding to weekly lectures will be
indicated on the SCHEDULE page.
In addition, the following, though not required, are good
references on OpenGL:
|
|
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
The major deliverables
for this
course are:
- 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. Both exams will be weighted equally in the
calculation of your final grade. 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.
Info on exams, dates, and topics covered will be posted on the EXAMS section of this Web site.
- Pipeline implementation (new this year on a trial basis) --
In lieu of exams, students may choose a more programming heavy option
where they will be implementing a portion of the 3D graphics pipeline
from scratch. This option may be attractive to grad students as
well as students with a desire to pursue advanced graphics courses.
More info on the assignments for this option will be
posted on the ASSIGNMENTS section of
this Web site.
- Homework -- Homework
will be announced in class and posted to the ASSIGNMENTS
section of the course home page. Homeworks will be collected and
graded. 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 to the ASSIGNMENTS
section of the course home page. Generally,
students will have 2 weeks to complete programming assignments.
- Problem sets
-- Problem sets and their
solutions will be posted to the ASSIGNMENTS
section of the course
home page. Although they 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. The material in the
problem sets are good fodder for exam questions.
- Survey / Report ( grad only )
-- Each graduate student is expected to research a topic relative to
computer graphics and prepare a 10-15 page report. If you are unsure
about what you would like to present, please see me for some general
ideas.
The final grade will be determined
using
the following weights:
|
Graduate |
Undergraduate |
Exams |
35% |
45% |
Assignments |
35% |
45% |
Homework |
10% |
10%
|
Grad Report
|
20%
|
|
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 deliverable deadlines, and see the instructor well in advance
of the deadline that might be missed we can attempt
to work out alternate arrangements.
Computer Science
Department Policy on Academic Dishonesty
Students
are expected to
maintain the highest standards of ethical behavior.
Any
form of academic dishonesty will not be tolerated.
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:
For a first
offense the
student involved will receive a grade of zero on the assignment.
[A
stronger penalty may be
exacted if, in the judgement of the
instructor,
the offense involves a flagrant violation of basic ethical standards.]
For a second offense, in the same or a different course, the student
will
receive a failing grade for that course.
A third offense will be referred to judicial affairs.
Furthermore, the following action will be taken for each person
involved
in the incident, whether currently enrolled in the course or not:
If the student is
a
computer science major, a letter recording the incident will be placed
in the student's departmental file; otherwise, the letter will be
forwarded to the student's department chair or program coordinator.
last updated 08/22/07