Instructor: |
Dr. Andrew Duchowski
|
Office: |
Edwards 444, 656-7677,
andrewd@cs.clemson.edu
|
Office hours: |
TTh 2:00--3:30 (or by appointment)
|
Email: |
Communication with the instructor via
email is encouraged. It is unlikely that a talk
request will be answered, however.
|
Required texts: |
- Angel, Edward, Interactive Computer Graphics:
A Top-Down Approach with OpenGL, 2nd Ed.,
Addison-Wesley Longman, 2000.
ISBN: 020138597X
|
Recommended texts: |
- Woo, Mason; Neider, Jackie; Davis, Tom; and Shreiner, Dave
OpenGL Programming Guide: The Official Guide to Learning
OpenGL, Version 1.2, 3rd ed.,
Addison-Wesley, 1999.
ISBN: 0201604582
- Kilgard, Mark J., OpenGL Programming for the X Window System,
Addison-Wesley, 1996.
ISBN: 0201483599
- Harlow, Eric, Developing Linux Applications with GTK+ and
GDK,
New Riders, 1999.
ISBN: 0735700214
- Foley, James D., van Dam, Andries, Feiner, Steven K., and Hughes,
John F., Computer Graphics: Principles and Practice,
2nd ed., Addison-Wesley, 1990.
ISBN: 0201848406
|
Supplemental texts: |
None.
|
Grading scheme: |
Based on programming assignments, final project, 1 or 2 midterms, and
the final exam.
|
Grade distribution: |
Projects | 60% |
Midterm(s) | 20% |
Final Exam | 20% |
|
% | Grade |
90-100 | A |
80-89 | B |
70-79 | C |
60-69 | D |
< 60 | F |
|
|
Programming assignments: |
Problem specification and due date will be given
in class.
|
Assignment grading: |
Source code and demonstrations will be required.
|
Assignment format: |
Hardcopy of the assignment must include the following:
- Description of the problem.
- Description of the solution.
- Documentation of the program (e.g., user documentation).
|
Assignment late policy: |
Late assignments will be accepted but points will be
deducted according to the formula 2n2 - 1 where
n is the number of days late. Example: assuming assignments
are due on Thursday, the point deduction is as follows:
Max points possible |
Day received |
Days late |
100 | Thursday | 0 (due date) |
99 | Friday | 1 day late |
69 | Monday | 4 days late |
51 | Tuesday | 5 days late |
29 | Wednesday | 6 days late |
3 | Thursday | 7 days late |
0 | Thursday | 8 days late |
Late assignments will receive lowest priority for grading and
returning.
|
Attendance: |
Roll will be taken for the first one or two weeks while
the class roll fluctuates. However, attendance is not required.
Absence, excused or not, does not change the responsibility for
assigned work.
Tests missed due to excused absences will normally result
in the test not being counted in the average grade (i.e., there will
normally be no makeup tests). An unexcused absence from a
test will normally result in a grade of zero for that test. Students
are expected to give at least one week advance notice for excused
absences.
|
Independent work: |
Unless otherwise stated explicitly (e.g., in the case
of the final project), each student must do his or her work
independently.
| |
Academic dishonesty: |
The University policies on academic dishonesty apply.
Publicly-available code or other material may be freely used if
appropriately attributed. Each student is responsible for protecting
his or her files from access by others. Work that is essentially
the same and submitted without proper attribution is considered
to be a violation of academic dishonesty policy by all those
submitting the work, regardless of who actually did the work.
| |
Class cancelation: |
Students are expected to wait for 15 minutes after
the class beginning time before leaving if the instructor is late.
| |
Course description: |
The course will cover computer graphics methods, data
structures, analysis of algorithms, and selected implementation
examples, generally coinciding with the main programming assignments
assigned throughout the term:
- Project I: Object viewer
Objectives:
- polygonal object description files (vrml, alias|wavefront)
- displaying objects
- 3D transformations (rotations, translations, etc.) incl.
camera pan/tilt/roll/truck, object rotations
- selection
- hidden surface removal (based on normal and viewpoint)
Relevant textook chapters (Angel):
- Chp.1: graphics systems and models
- Chp.2: graphics programming
- Chp.3: input and interaction
- Chp.4: geometric objects (and ADTs) and
(affine) transformations
- Chp.5: viewing (systems, projections, and hidden surface
removal)
- Project II: Object renderer
Objectives:
- flat (facetted) shading
- smooth shading
- texture mapping (image file formats)
Relevant textook chapters (Angel):
- Chp.6: shading (reflection and illumination models)
- Chp.7: implementation of a renderer
- Chp.9: discrete techniques (texture mapping)
- Project III: Object modeler
Objectives:
- splines
- "objects of revolution"
Relevant textook chapters (Angel):
- Chp.10: curves and sufraces (parametric representations,
splines)
- Project IV: Animation (particle systems)
Objectives:
- particle systems
- scene/animation description files
Relevant textbook chapters (Angel):
- Chp.11: procedural models (e.g., fractal terrains)
-
Additional topics will be selected as time permits. Most of the
following chapters will be omitted:
- Chp.8: hierarchical and object-oriented grahpics
- Chp.12: visualization
|