CSCI 550 Course Material

CSCI 550 (Fall 2009)

Introduction to Computer Graphics

Course Description

This is an introductory computer graphics course, suitable for entry-level graduate students. It may also be taken by undergraduate students with strong interest and somebackground in computer graphics. The course offers an introduction to the field of computer graphics, with emphasis on principles, algorithms and graphics programming techniques. Course objectives include: (a) understand concepts, algorithms, and design principles underlying modern 3D computer graphics; (b) develop 3D graphics algorithm design and implementation skills; and (c) gain practical experience in 3D graphics programming.

Class Information

Time: Tuesday, 3:00pm -- 5:40pm
Room: SL 050
Instructor: Dr. Shiaofen Fang
office: SL 280
phone: 274-9731
email: sfang@cs.iupui.edu
Office hours: Tuesday, 1:30pm -- 3:00pm, and by appointment
Course web site: http://www.cs.iupui.edu/~sfang/cs550/cs550.html

Required Text Book

Computer Graphics Using OpenGL, by F.S. Hill, Jr. and Stephen M. Kelley, 3rd edition, Prentice Hall, 2007.

References

OpenGL Programming Guide, by Dave Shreiner, Mason Woo, Jackie Neider, and Tom Davis, Addison Wesley, 4th Edition, 2004.

Computer Graphics with OpenGL, by D. Hearn and Pauline Baker, Prentice Hall, 3rd edition, 2004.

Prerequisite

C or C++; Linear Algebra, Data Structures.

Assignments

There will be a number of homework assignments. Each assignment includes a set of non-programming problems and a programming project. No late-submission will be accepted.

Facilities

Windows systems will be used for all your class projects. PCs running Windows XP are available in SL 116 Lab for this course

All programs will be written in C or C++ using OpenGL and Glut APIs.

Web resources

OpenGL: http://www.opengl.org

GLUT: http://www.opengl.org/resources/libraries/glut/

Grading Policy

Non-programming assignments: 25%
Project assignments: 50%
Final Exam : 25%

Class Schedule

week 1 :
Sept. 1 (Tu): introduction, display devices, graphics pipeline. (Ch.1)
Course Notes: Part 1

week 2 :
Sept. 8 (Tu): OpenGL programming.

week 3 :
Sept. 15 (Tu): interface programming using GLUT. drawing graphics primitives. (Ch.2)
First Assignment

week 4:
Sept. 22 (Tu): Away (no class)
Course Notes: Part 2

week 5:
Sept. 29 (Tu): windows, canvas, clipping. (Ch.3)

week 6:
Oct. 6 (Tu): geometric computation. (Ch.4)
First Assignment due
Second Assignment Starts

week 7:
Oct. 13 (Tu): transformations and viewing (Ch.5)
Course Notes: Part 3

week 8:
Oct 20 (Tu): transformations and viewing. (Ch.5)

week 9:
Oct 27 (Tu): polygon mesh and shape modeling. (Ch.6)

week 10:
Nov. 3 (Tu): 3D viewing, cameras, and projections. (Ch.7)
2nd Assignment due
Course Notes: Part 4
3rd Assignment

week 11:
Nov. 10 (Tu): Shading. (Ch.8)

week 12:
Nov. 17 (Tu): hidden surface removal, spatial data structures (Ch.8)

week 13:
Nov 24 (Mon): transparency and blending, texture mapping. (Ch. 8)

week 14:
Dec. 1 (Tu): global illumination models, Raytracing (Ch.12)
3rd Assignment due

week 15:
Dec. 8 (Tu): Raster algorithms, fractals, review. (Ch.9)

Final Exam:: TBD