Text:
Computer Graphics: Principles and Practice, 2nd Edition in C by Foley,
van Dam, Feiner and Hughes
Bulletin Board:
git.cc.class.cs4451
Teaching Assistants:
Huong
Quynh Dinh quynh@cc.gatech.edu
off. hrs.: Weds (9:00-10:30)
& Thurs. (1:30-3:00) in GVU Lab (2nd floor CCB, room 201B)
F.S.
Nooruddin nooruddi@cc.gatech.edu
off.hrs.: Mon. (1:30-3:00)
& Tues. (1:30-3:00) in GVU Lab (2nd floor CCB, room 201B)
Programming:
You will write 3-4
programs for this course. All programs must be written in C. Documentation
will count as 20% of the grade for each program.
Compiling and executing without errors on the published test data is considered minimal competency for any program. Late programs will be penalized 3n-1 points where n is the number of days late. NO ONE will get an incomplete because they neglected to turn in programming assignments.
You may discuss high
level design strategies and specifications of the assignments with other
students in this class. However, your programs (and homework)
are to represent your own work. All coding and detailed algorithm
design decisions are to be made without consultation with others.
Grading:
Programs
40%
Quizes (2)
30%
Final Exam
30%
Quizzes
Computer Accounts
All programming
assignments will be tested on an SGI. You may use a PC, but you must make
sure that your program can compile and run on an SGI. The SGI
cluster on the first floor in CCB is available to you if you already
have a College of Computing account. If you are not a College of
Computing student and do not have an account, please apply for an
account in room 213 of CCB.
Getting Started
In this course,
programing will be done in C. We will use the OpenGL and GLUT libraries
for basic graphics and windows programming. You will find the following
links helpful:
Programs and Assignments
Submitting Programs
The source code
must be emailed to cs4451@cc.gatech.edu as an attachment. All assignments
are due at the start of class on the due date. Submission after class will
be considered late. All programs will be tested on an SGI. You may use
a PC, but you must make sure that your program can compile and run on an
SGI. Use the Makefile provided by the TA to compile your program on the
SGI. Your name must be included in the header of the source code as comments.
Current Grades
You can see your grades at the
following link:
Grades
Look for your secret code name. The grades include projects 1, 2, and 3, and
quizes 1 and 2.
Course Topics and Notes
| Topic | Reading Assignment in Textbook |
| Raster Graphics Hardware | Chapters 1 and 4 |
| Lines, Circles, and Simple Antialiasing | 3.1, 3.2, 3.3, 3.17 |
| Polygons | 3.5, 3.6, 3.8, 13.1.2 |
| 2-D Transformations | 5.1, 5.2, 5.3 |
| Windows, Viewports | 5.4, 5.5 |
| Clipping | 3.11, 3.12, 3.14 |
| 3-D Math Review | 5.6, 5.7, 5.8 |
| Basic Modeling | 11.1, 11.2 |
| Projections | Chapter 6 |
| Visible Surface Determination | 15.2, 15.4, 15.5, 15.6 |
| Illumination | 16.1, 16.2 |
| Smooth Shading | 16.1, 16.2 |
| Intersection Algorithms for Ray-tracing | 15.10.1 |
| Reflection and Refraction | 15.10.2 |
| 3D Clipping | 6.5.3 |
| Misc. Raytracing Notes (given out in class) | |
| Color | 13.2-13.5 |
| Quaternions | page 1063 |