Prerequisite: Computer Science 331.Examination and analysis of computer graphics; software structures, display processor organization, graphical input/output devices, display files. Algorithmic techniques for clipping, windowing, character generation and viewpoint transformation.
For homework, please use the "Submit an Assignment" link on the left side of the home page.
On exam days, we will meet from 6:00-8:45 in CS-110B
On other days, we will meet from 6:00-7:30pm in CS-110B and from 7:30-8:45pm in CS-300.
The citation above is for the Fourth Edition, but any edition of the OpenGL Programming Guide is acceptable, and you need not buy a hard copy. Electronic copies of the First Edition are available from
| Recommended: Hearn, D. and Baker, M. P.,Computer Graphics with OpenGL, Third Edition, Prentice Hall, 2003. ISBN 0-130-15390-7 | ||
| or | ||
| Recommended: Angel, E. A., Interactive Computer Graphics: A Top-Down Approach using OpenGL, Fourth Edition, Addison-Wesley, 2005. ISBN 0-321-32137-5 | ||
In addition, I will occasionally post links to recommended papers, articles or other resources. For details, see Changes and Other Announcements below.
Your course grade will be calculated as follows:
| Programming Assignments | 60% |
| Midterm Exam | 20% |
| Final Exam | 20% |
Grades will be assigned on the usual 90%-80%-70% scale, i.e. without plus or minus grades. I reserve the right to adjust the grading scale in your favor.
There will be a comprehensive final exam on Friday, May 26.
Exams will consist of several short questions requiring a few written paragraphs, some calculations, or (in some cases) a drawing or diagram.
You may work alone or with another student. If you choose to work with another student, both of you will receive the same grade on the assignment. Choosing a partner is not a semester-long commitment: you may choose to work with other students on subsequent projects.
Assignments are due by midnight PST on the due date. To submit assignments, click the "Submit an Assignment" link on the left side of the home page. You will need to have JavaScript enabled in your browser. Attach the source code for your project. Do not send compiled executables -- I will compile your programs myself when I test them. You will receive an automated reply.
Academic dishonesty includes such things as cheating, inventing false information or citation, plagiarism, and helping someone to commit an act of academic dishonesty. It usually involves an attempt by a student to show possession of a level of knowledge or skill which he/she in fact does not possess.In a word, don't. You will receive an F in the course, and I won't even feel sorry for you. You have been warned.Cheating is defined as the act of obtaining or attempting to obtain credit for work by the use of any dishonest, deceptive, fraudulent, or unauthorized means. Examples of cheating include, but are not limited to, the following: using notes or aids or help of other students on tests and examinations in ways other than those expressly permitted by the instructor, plagiarism, as defined below, tampering with grading procedures, and collaborating with others on any assignment where such collaboration is expressly forbidden by an instructor. Violation of this prohibition on collaboration shall be deemed an offense for the persons collaborating on the work, in addition to the person submitting the work.
Plagiarism is defined as the act of taking the work of another and offering it as one's own without giving credit to that source. When sources are used in a paper, acknowledgment of the original author or source must be made through appropriate references and, if directly quoted, quotation marks or indentations must be used.
The last day to drop with a grade of "W" for serious and compelling reasons is April 28.
On days that lab sessions begin with a demonstration or discussion, please pay attention. Don't ignore me in favor of checking your e-mail; there will be plenty of time for that when I finish.