Teaching

Computer Science at Millsaps features small class sizes (all under twenty), rigorous academic standards, and highly-interactive in-class learning experiences. The following is a description of several of the courses I teach in my areas of specialization.

Old Stones Painted Anew

ART 2750, CSCI 2750.  Digital recreation of a Mayan Village. Brent Fogt, William Bares. Join a student team of anthropologists, artists, historians, writers and other curious types as we use SketchUp and PhotoShop to digitally reconstruct a Mayan village at the Millsaps biocultural reserve in the Yucatan.  Open to all.  No pre-requisite art or computer skills.  May 10-30.  Cost is $2,870 which includes tuition, room, and ground transportation.  Airfare, personal meals, personal expenses are extra.

Computer Graphics

This course provides an introduction to the foundational topics of computer graphics with an emphasis on two- and three-dimensional graphics rendering pipelines. We will focus on the underlying mathematics and algorithms to gain a deeper understanding of concepts that can transfer to use of any of the many 3D libraries. For example, we'll do in-class exercises on both paper and pencil and the computer to learn how to do modeling and hierarchical transformations in both column- and row-vector convention. Near the end of the semester, we'll use SoftImage XSI 5 to model our own 3D objects, which will be loaded and rendered in the concluding program assignment. XSI is the package used to model the popular 3D action game Half-Life 2.

Artificial Intelligence

This course will focus on practical artificial intelligence techniques including autonomous agents, finite-state machines, state-space search, game trees, maze navigation, and optimization using techniques such as hill-climbing and genetic algorithms. These techniques have wide-ranging applications from automated braking systems, personal digital assistants, medical diagnosis, robotics, and video games. This course will feature video game applications due to their relative familiarity and opportunity for creative expression. Programming assignments will be implemented in Java.

Digital Media Programming

This new course was offered in Spring 2007 and combined hands-on learning of popular graphics software such as PhotoShop Elements with programming our implementations of the algorithms used to produce various image processing, digital special effects, and animation. For example, we will do our own digital image compositing using the "green screen" technique. We will use PhotoShop to create composite images as well as write our own Java programs to compute composited images. The course also covers 2D animation and games.