Most recent graphics courses are what we would call topdown courses. Courses that focus on using graphical packages to implement and teach graphics. The course discussed in this paper takes the opposite approach. We use a bottomup approach to teach the basic concepts of graphics. In this class graphics is used as a learning tool, to delve into the underlying data structures and concepts that are needed to create photo-realistic images. The students build a program to create images from scratch using the C programming languages. While there have been other graphics courses to take a bottom-up approach, this paper builds the graphical projects using only the C programming language, no graphics APIs are used in the class. During the course of the semester object-oriented concepts and differences between object-oriented languages and procedural languages are highlighted and discussed in detail. The students not only learn the basic concepts of graphics, but become familiar with the C pro...
William C. Kreahling