
MV-4202 Computer Graphics (3-2) Syllabus
July 10, 1997
MV-4202 Computer Graphics (3-2). An introduction to the principles of the hardware and the software used in the production of computer generated images. The focus of the course is a major design project utilizing the departmental computer graphics facilities. The course is intended for Computer Science students proficient in the development of software systems. (No excuses will be accepted!) Prerequisites: CS-2971, CS-3300 and CS-3700 or consent of the instructor.
Required Texts
Kilgard, Mark J. OpenGL Programming for the X Window System, Addison-Wesley, ISBN 0-201-48359-9, paperback, 576 pages.
or
Fosner, Ron OpenGL Programming for Windows 95 and Windows NT, Addison-Wesley, ISBN 0-201-40709-4, 259 pages.
* Where to get texts - These texts are available in the NPS bookstore. They are also available via http://www.amazon.com. Generally, Amazon's text prices are lower than the NPS bookstore. Delivery is usually in two to three days. Other web bookstores may also have these texts.
Recommended Texts
Foley, van Dam, Feiner & Hughes Computer Graphics: Principles and Practice, Addison-Wesley, ISBN 0-201-12110-7.
The OpenGL Reference Manual, Addison-Wesley, ISBN 0-201-63276-4.
The OpenGL Programming Guide, Addison-Wesley, ISBN 0-201-63274-8.
Heller, Dan "Motif Programming Manual," O'Reilly & Associates, Inc., Volume 6, Motif Edition, ISBN 0-937175-70-6.
Prerequisites
CS-2971 - must know how to program well.
CS-3300 - must know data structures and be able to use them in the programming project.
CS-3700 - must learn object-oriented programming with C++ on own if CS-3700 is not taken.
Academic Objectives
- An understanding of the algorithms and mathematics behind computer graphics.
- An understanding of the programming principles behind computer graphics.
- An understanding of the hardware available for computer graphics.
Course Content
- Graphics Primitives
- Color Specification and Use
- Elementary Graphics Programming
- Introduction to Windowing Systems
- Drawing Primitives
- Polygon Filling
- Graphical Interaction Techniques
- The Viewing and ModelView Matrix Stacks
- Interactive Controls
- Interactive Graphics Pick Mechanisms
- Interface widgets.
- Additional widget for user interfaces.
- Geometrical Transformations - 2D and 3D
- Translation, scaling and rotation
- Composite Transformations
- Homogeneous Coordinates
- Viewing in Three-Dimensions
- Perspective Projections
- Parallel Projections
- The Mathematics of Planar Geometric Projections
- Hidden Surface Elimination
- The Z Buffer Algorithm
- SIGGRAPH Videotapes
ESRs Served:
2.b, 3.b, 3.e, 4.b, 6.a, and 6.b.
Laboratory and Course Organization
Project based course: CS-4202 is a project based course. This means that the student's grade is based upon his performance within a group as he implements the chosen class project.
Group Organization: A proposal must be generated for each group detailing exactly what project the group will implement during the quarter. Each group will elect a Group Leader/Coordinator. From the Group Leader, the instructor should receive (1) a description of each person's task at the start of the project, (2) a bi-weekly evaluation of each group's progress, and (3) a list stating the contribution of each person with respect to the package coming out of the group (at the end of the course). Each group is to produce (1) documented and working source code, and (2) user's manual/design manual.
Faculty Contact for Information:
Michael J. Zyda (CS/Zk, zyda@siggraph.org)
Course Notes
