DMS 423/523: Programming Graphics 1


[edit] Fall 2008

[edit] Course Info

When: Tuesday/Thursday 1:00 - 2:50 pm
Where: CFA 265

Instructor: Dave Pape
e-mail: depape at buffalo.edu
Office: CFA 250
Office hours: Mon/Wed 11am-noon or by appointment

Website: http://resumbrae.com/d/DMS423

[edit] Course Description

This production course introduces students to the concepts and practice of programming 2-D and 3-D computer graphics using OpenGL. The major focus is on developing the skills needed to create interactive, real-time CG experiences. Students write their own code to create customized computer tools and visuals and learn the fundamentals of graphics.

Upon completing this course, a student should have an understanding of basic computer graphics technical concepts - e.g., be able to describe the different types of geometric transformations, define what a normal vector is and what it's used for, understand how a texture image is applied to a shape, etc. The student should also be comfortable with using programming and mathematics (trigonometry, interpolation, vectors) to build and control a graphical scene.

[edit] Textbook

There is no single required text. Rather, students should choose one of the following texts, based on their background and programming experience:

Useful websites:

[edit] Topics

The major topics that we will cover are:

[edit] Grading

You are allowed up to two free absences; after that, each absence will cost you 2% of your overall grade. A significant fraction of class time is going to be spent doing hands-on work, applying the concepts that have been covered in lecture; regular attendance will be vital to actually learning these concepts.

Assignments will be given in class, and due in class one week later. Late assignments are penalized one letter grade per 24 hour period that they're late. One that's more than 72 hours late will not earn any points.

Assignments will be graded first on whether they accomplish what was required, using the techniques specified, and second on code quality. It is important that code be clear and understandable, both so that you can work on it, and so that others can make use of it in the future.

All assignments and projects must be your own work. Work is to be done individually - do not share code with, write code for, or copy code from other students. This applies to all assignments while they are outstanding - i.e., until everyone's program has been turned in and graded. A first violation of this policy will result in failure of the assignment; repeated violations will result in failure of the course. See below for further official warnings about plagiarism.

[edit] Policies & Other details

[edit] E-mail

I will send any e-mail relating to this course to your official buffalo.edu address. Be sure that you check this address. Do not ask me to send e-mail to another address instead - if you don't want to use the buffalo.edu mail system, forward your mail from there to whatever system you do use.

Also, be warned that mail from free services like Hotmail or Yahoo has a strong chance of being caught by spam filters. Hence, I recommend not sending me e-mail from such an address, if you want to be certain that I'll receive it.

[edit] Lab Fee

This course carries a lab fee of $100.

[edit] Students with Disabilities

If you have a disability (physical, learning or psychological) which may make it difficult for you to carry out the course work as outlined, and/or requires accomodations such as recruiting note takers, readers, or extended time on exams and assignments, please contact the Office of Disability Services, 25 Capen Hall, 645-2608, and also your instructor during the first two weeks of class. ODS will provide you with information and will review appropriate arrangements for reasonable accomodations.

[edit] Plagiarism

Plagiarism is literary theft and a betrayal of trust. The term is derived from the Latin word for kidnapper and refers to the act of signing one's own name to words, phrases, or ideas which are the literary property of another. Plagiarism comes in many forms, all to be avoided: outright copying, or paraphrase, or a mosaic or disguised use of words and phrases from an unacknowledged source. To avoid plagiarism, make it your habit to put quotation marks around words and phrases, or to isolate and indent longer passages, that you are using from someone else's writing. And be sure to cite the source, in a footnote or endnote, or within parentheses in your text. The penalties for plagiarism can be severe: from an F for the particular assignment, to an F for the course, to referral of the case to the Dean of Undergraduate Education for administrative judgment. If you are unsure about how to use and document sources, please consult with your instructor.

[edit] Weapons as props

If you are planning a student production which involves using any prop which could be interpreted to be a weapon [toy gun, BB gun, knife, etc.] and you are planning to shoot on the UB campus or any other public place, you must obtain written permission from Campus Security or the equivalent authority before you shoot. If you do not, you will face serious problems including possible expulsion from the university.

[edit] Sexual harassment

Sexual Harassment of employees and students, as defined below, is contrary to University policy and is a violation of federal and state laws and regulations.

Unwelcome sexual advances, requests for sexual favors, and other verbal or physical conduct of a sexual nature constitute sexual harassment when:

  1. submission to such conduct is made either explicitly or implicitly a term or condition of an individual's employment or academic advancement;
  2. submission or rejection of such conduct by an individual is used as the basis for employment or academic decisions affecting such individual;
  3. such conduct has the purpose or effect of unreasonably interfering with an individual's work or academic performance, or creating an intimidating, hostile, or offensive environment

No university employee of either gender shall impose a requirement of sexual cooperation as a condition of employment or academic advancement, or in any way contribute to or support unwelcome physical or verbal sexual behavior.

Any member of the university community who requires additional information or who wishes to make a complaint or receive a copy of the University procedures to be followed for complaints arising from matters related to the policies outlined above should contact the Office of Equity, Diversity, and Affirmative Action Administration, 406 Capen Hall, 716-645-2266.

Examples of Sexual Harassment

What to do if you are harassed
Do:

Don't: