This is an old revision of the document!
A summary of courses related to our laboratory, and taught by our faculty, is given below. For the current course schedule, please see the Computer Science course webpage at http://www.cs.purdue.edu/academic_programs/courses/
CS 334 Fundamentals of Computer Graphics 
The syllabus has three parts. Linear algebra, computational geometry, and image processing fundamentals are covered in the first part. The basic interactive 3D computer graphics pipeline is covered in the second part, including rasterization, rasterization parameter interpolation, lighting, shading, texture mapping, projective texture mapping, shadow mapping, and environment mapping. Advanced topics such as advanced rendering effects, character animation, ray tracing, higherorder surfaces, imagebased rendering, automated 3D modeling, GPU programming, and computational photography are covered in the third part. 
CS 434 Advanced Computer Graphicscourse web 
The course covers advanced topics in computer graphics, such as advanced rendering effects (e.g. fog, fire, smoke, fractures, cloth, clouds, area light sources and soft shadows), global illumination (BRDFs, diffuse, glossy, and specular reflections, refractions, lighting in participating media), scene complexity management, imagebased rendering, automated 3D modeling (e.g. stereo, structured light), advanced geometric modeling (e.g. subdivision surfaces, NURBS), character animation, augmented reality, computational photography, advanced GPU programming. 
CS 490G/590M Game Technology using XNA 
In this projects course the class formed teams and each team implemented a game that would teach a topic of CS. A faculty jury judged the projects of each team at the end of the semester and the winning team won an Xbox 360 (for each participant). The implementation platform was Microsoft XNA. 
CS 530 Introduction of Scientific Visualization 
Scientific Visualization transforms numerical data sets obtained through measurements or computations into graphical representations. Interactive visualization systems allow scientists, engineers, and biomedical researchers to explore and analyze a variety of phenomena in an intuitive and effective way. The course provides an introduction to the principles and techniques of Scientific Visualization. It covers methods corresponding to the visualization of the most common data types, as well as higherdimensional, socalled multifield problems. It combines a description of visualization algorithms with a presentation of their practical application. Basic notions of computer graphics and human visual perception are introduced early on for completeness. Simple but very instructive programming assignments offer a handson exposure to the most widely used visualization techniques. 
CS 531 Computational Geometry 
This course covers several topics in Computational Geometry including: coordinates and simple Calculations, convex hull, segment Intersection and planar subdivisions, Voronoi Diagrams and cyclographic maps, point queries and range search, Delaunay triangulations, implicit algebraic modeling, interpolation basics, Bézier curves, and constraint solving (e.g., triangle solvers, root selection, and variableradius circle methods). 
CS 535 Interactive 3D Computer Graphics 
Interested in computer graphics? Does geometric modeling interest you? Do you like rendering photorealistic imagery? Do you like rendering artistic imagery? Have you ever thought of how to render a communication network? What does it mean to display internet traffic? Is doing animations fun to you? All this is part of computer graphics. This course teaches the fundamentals, at a graduate school level, for rendering artistic imagery, abstract concepts, animations, and complex 3D models. Major applications of course material include virtual reality, 3D scanning, video games, film special effects, CAD/CAM, simulation medical imaging, image processing, scientific visualization, information visualization, and largescale rendering (e.g., of entire cities). 
CS690T Advanced Visual Data Analysis 
The information explosion observed in science, engineering, and medicine makes it increasingly difficult to effectively analyze the overwhelming quantity of available data. The goal of scientific visualization is to offer a visual and interactive data interface though which researchers and engineers can make sense of the massive output of numerical simulations and measuring devices. The objective of the course is to expose students to the main ideas and advanced techniques developed in scientific visualization to address the challenges posed by the visual analysis of these datasets. In particular, the discussion emphasizes the general strategy consisting in discovering and conveying the underlying structures present in the data to create highlevel and interactive depictions. The course also invites students to make contributions to an open research problem and create publishable results in the course of a project. 
CS 635 Capturing, Modeling, and Rendering 3D Scenes 
This course teaches advanced topics in computer graphics and computer vision. It includes creating models of 3D objects (e.g., entire objects, rooms, floors, or buildings). The course material helps to understand the fundamental problems and challenges encountered when capturing, modeling, and rendering 3D structures and objects, as well as state of the art solutions. The course covers several subjects within computer graphics, computer vision, and computer science so as to provide to the student a full understanding of the capture/model/render pipeline. From this understanding and crossfertilization of ideas, it is expected that students will in the future be able to develop new and improved approaches. 
