Contents (hide)

1.   1.  Updated Catalog Description
2.   2.  Course Objectives
3.   3.  Why Take This Course?
4.   4.  Why Not To Take This Course
5.   5.  Prerequisites
6.   6.  Staff
1.   6.1  Prof
2.   6.2  Teaching Assistant
7.   7.  Course Homepage
9.   9.  Computer Systems Used
10. 10.  Times & Places
1. 10.1  Lectures
2. 10.2  Labs
1. 11.1  Components
2. 11.2  Weights and Cutoffs
3. 11.3  Missing or Late Work
12. 12.  Honesty Policy

# 1.  Updated Catalog Description

ECSE-4750 Computer Graphics

Introduction to Interactive Computer Graphics, with an emphasis on applications programming. Objects and viewers, and the synthetic camera model. Graphics architectures, the graphics pipeline, clipping, rasterization, and programmable shaders. Input and interaction. Geometric objects, homogeneous coordinates, and transformations. Viewing, hidden surface removal, frame and depth buffers, compositing, and anti-aliasing. Shading, light and materials, texture mapping, ray tracing, and radiosity. Intellectual property concerns. Extensive programming with the OpenGL API and C++. Prerequisite: ECSE-2610 or equivalent. Fall term annually. 3 credit hours

# 2.  Course Objectives

• to learn the principles and commonly used techniques of computer graphics
• to develop a facility with the relevant mathematics
• to gain an introductory proficiency with OpenGL, one of the most widely used APIs.

# 3.  Why Take This Course?

• Graphics is fun. It's got a history, since it is a takeoff from geometry, which is at least 2500 years old. There are pretty pictures involved. It's based on state-of-the-art hardware.
• It has applications, and is tied into the real world, and is not just theoretical.
• Nevertheless, it's not just practical stuff with no depth, but has some theory and math also.
• It teaches practical knowledge, e.g., OpenGL that can lead directly to a job.

# 4.  Why Not To Take This Course

• You don't like programming.
• You don't like documenting your programs.
• You don't like math.
• You don't like writing exams at the official scheduled times.

# 5.  Prerequisites

This is a senior CSYS course, and assumes a moderate computer maturity, represented in the catalog by ECSE-2610 (Computer Components & Operations). You should know some HW, but if you don't have that specific course, don't despair.

Since there is programming in C or C++, you also must know some high level language, which you can translate into a knowledge of some C. If you don't know what a pointer is, then drop this course and take Computing Languages first. A good review book on C is Kelley & Pohl, A Book on C.

Computer Graphics also assumes that you know, or be able to learn, some basic linear algebra, up to the level of what an eigenvalue is.

If you're uncertain about taking this course, then, by all means, talk to me, or to previous people in it. If there is one specific fact that is unfamiliar, such as eigenvalue, then there's no problem at all.

# 6.  Staff

## 6.1  Prof

W. Randolph Franklin. BSc (Toronto), AM, PhD (Harvard)

I've been doing graphics related programming since the 1960s, and have been teaching versions of this course since 1982. I've been at RPI since 1978, apart from several absences, including a year at Berkeley, 3 months at Genoa, and shorter times at Laval University in Quebec City, the Commonwealth Scientific and Industrial Research Organization in Canberra, and the National University of Singapore. I also spent 2 years 7 months as Director of the Numeric, Symbolic, and Geometric Computation Program at the [[http://www.nsf.gov/|National Science Foundation]], recommending how to spend your tax dollars (thanks!).

My current research on representing terrain, is largely supported by DARPA.

Office
Jonsson Engineering Center (JEC) 6026
Phone
(518) 276-6077
Email
wrfATecseDOTrpiDOTedu, making the obvious substitutions.
Web
http://www.ecse.rpi.edu/Homepages/wrf/
Office hours
after each lecture. Usually I stay as long as anyone wants to talk.
Preferred communication medium
email

## 6.2  Teaching Assistant

Name
Lu Zhou
Email
zhoul2ATrpiDOTedu
Office hours
Tues 3:30 - 4:30 in JEC 6207. There will be more just before exams as needed.

# 7.  Course Homepage

## 8.1  Textbooks

As listed on the RPI Bookstore site:


ECSE - 4750 - 01 - TROY
COMPUTER GRAPHICS
INTERACTIVE COMPUTER GRAPHICS...OPENGL
0-321-32137-5
Author: ANGEL 	Edition: 4TH
Pub: AW 	Req / Opt: R
New Price: $100.00 Used Price:$75.00

ECSE - 4750 - 01 - TROY
COMPUTER GRAPHICS
OPENGL SUPER BIBLE (WCD) (P)
0-672-32601-9
Author: WRIGHT 	Edition: 3RD
Pub: *UNK* 	Req / Opt: O
New Price: $51.00 Used Price:$38.25



Angel's web site for his text is here.

There are also several other good OpenGL books, if you have the money. One good (and cheap) one is:

OpenGL : A Primer (2nd Edition) (Paperback) by Edward Angel, on Amazon.

## 8.2  My Notes on Various Graphics Topics

I've prepared web notes on some topics that I think I describe better than the text. They'll be linked from the appropriate lecture in Lectures.

## 8.3  Assorted online material

There is a lot of good, free, online material about OpenGL and graphics in general. I'll mention some of it; Google can find more.

## 8.4  Class-Only Online Material

Material that for copyright reasons is restricted to the class is here. Log in with user name 4750. I will announce the password in class.

# 9.  Computer Systems Used

You may use any system that works for you, and that can do the work. My examples will generally be in Linux.

# 10.  Times & Places

## 10.1  Lectures

Mon & Thurs, 2-3:20pm, in Darrin (aka DCC aka CC aka Communications Center) 324. The SIS CRN is 60279.

Attendance is optional. However, I may base an exam question on a student question in class.

There is still space for new students to enroll.

## 10.2  Labs

Wed, either 2-3:50 in Walker 6113. Bring your laptop computer.

## 11.1  Components

### Midterm Exam

There will be a midterm exam in class as listed in the Calendar. You may bring in any printed material, but no computers. No collaboration or communication (except with the staff) is allowed.

The exam may contain some recycled homework questions.

### Homeworks

There will be a homework approximately every week. You may do it in teams of 2.

### Labs

There will be a weekly lab. Often part of a homework will be to turn in something you did in the previous lab. Other than that the labs will not be graded, and attendance is optional.

### Term Project

A term project will be due. You may do it in teams of up to 3 people. You will implement, demonstrate, and document something related to Computer Graphics. You will sign up to demo it to the TA in one of the last two labs.

### Final Exam

There will be a final exam on a date set by the Registrar. You may bring in any printed material, but no computers. You may not share the material with each other during the exam. No collaboration or communication (except with the staff) is allowed. The final exam will contain material from the whole course, but more from the last half.

## 11.2  Weights and Cutoffs

ComponentWeight
All the homeworks together25%
Midterm exam25%
Term project25%
Final exam25%

Even if the homeworks be out of different numbers of points, they will be normalized so that each homework has the same weight.

>=90.0%A
>=75.0%B
>=60.0%C
>=50.0%D
>=0%F

## 11.3  Missing or Late Work

We will drop the lowest homework grade. That will handle excused absences, unexcused absences, dying relatives, illnesses, team trips, and other problems. The homeworks will be due in the labs or by email, depending on the type of homework. Late homeworks will not be accepted.

If you miss the final exam because of an excused absence, you may demonstrate your knowledge of the 2nd half of the course at an individual oral makeup exam.

If your term project is late, you will be offered an incomplete and the project will be graded in Jan 2006.

Whenever there is a new grade, we'll email the class.

When we return a graded homework or exam to you, please report any errors within one week.

It is not allowed to wait until the end of the semester, and then go back 4 months to try to find extra points.

# 12.  Honesty Policy

You may collaborate on homeworks, but each team of 1 or 2 people must write up the solution separately using their own words. We willingly give hints to anyone who asks.

The penalty for two teams handing in identical work is a zero for both.

You may get help from anyone for the term project. You may build on a previous project, either your own or someone else's. However you must describe and acknowledge any other work you use, and have the other person's permission, which may be implicit. E.g., my web site gives a blanket permission to other people to use it for nonprofit research or teaching. You must add something creative to the previous work.

The penalty for plagiarism is a zero grade.

You must not communicate with other people or machines or use electronic aids like computers and PDAs during exams. That includes not exchanging books and notes during the exam. You may use as many paper books and notes as you can carry, wheel, or drag into the room.

The penalty is a zero grade on the exam.

Also, all cheating will be reported to the Dean of Students Office.

The penalty for handing in the answer for a slightly different question that was on last year's homework or exam, because you copied but didn't even see that the question was different this time, is a zero and our scornful laughter.

Ditto for writing an exam answer that was more appropriate for the version of the exam handed out to other people in the room.

Recent pages you've visited: (:tracetrails:)