CISC 440/640

Interactive 3D Graphics

Spring 2015

teapot

WHAT IS THIS COURSE ABOUT?

    The primary goal of CISC440 is to introduce many important data structures and algorithms that are useful for presenting data visually on a computer. CISC440 does not cover the use of graphics design applications such as Photoshop and AutoCAD. In short, CISC440 is a programming class. The goal of this class is to provide you with sufficient background to write computer graphics applications.

    Roughly speaking, the first third of this course will address a broad range of topics that that we refer to as Raster Methods. These include two dimensional computer graphics, raster operations, imaging methods, and user interface design and construction. The second half of the course will cover topics related to three-dimensional computer graphics, including representation, illumination, shading, visibility determination, rendering, and animation.

    This is a lot of stuff to cover in 26 class meetings, and you can expect the pace to be frantic at times. But, I hope that you will find, as I have, that this stuff, computer graphics, is a blast.

WHAT DO I NEED TO KNOW BEFORE I TAKE THIS COURSE?

    This is a course for advanced undergraduates. We will be using C/C++ and OpenGL to do programming assignments.  No prior knowledge of OpenGL is assumed, but experience with C/C++ and advanced data structures is a must (i.e., CISC 220). Familiarity with basic concepts in linear algebra (e.g., vectors, matrices, matrix multiplication) is essential in order to follow the material.  

GRADING -

    4 Programming Exerecises............................................. 60%
    Mid-term Quiz................................................................ 20%
    Final Exam ........................................................... 25%

TEXTBOOK -

    Graphics Books (required): Hearn, Donald and M. Pauline Baker, Computer Graphics with OpenGL, 3nd Edition

This book is well organized and provides a fair introduction to most of the topics that we will cover this term. You will find that the illustrations and code fragments are a reasonable supplement to the materials covered in the lectures.

OpenGL Books (optional): The second required book is The OpenGL Programming Guide (also known as the red book). The given link allows you to freely download a previous edition of the book (1.1). The latest edition (1.4) is not available online, but all of the OpenGL that we will cover in the course is addressed in the earlier edition.

You will also be given copies of the lecture notes and handouts with supporting materials. If you find that you still need additional background, beyond what is discussed in class you might consider purchasing one of the following books.