|
|
What I am currently teaching
Software Design
and Development Studio. This is a new, experimental class (Spring
2006). Its basic goal is to help students move beyond course projects
and into the realm of designing and writing programs for
themselves. The class is run critique style, which means lots of
in-class discussion of everything from low-level coding style through
project design. Lecturing is kept to a minimum, and is primarily used
to illustrate concepts as they come up. Students will learn a bit
about how to look at, understand, and critique other people's code and
designs, how to work in small groups, and how to work with large
chunks of code they initially know nothing about.
Courses I teach regularly
- Beginning
graphics. This is your standard introductory course. I cover
the basics of 2D graphics (scan conversion, filtering), 3D graphics
(making and rendering shapes), and an overview of advanced topics
(animation, advanced rendering). Anyone interested in working with me
should take this class. Usually taught in the fall. Note: This
class was ranked in the top 10 in the engineering school 2005.
- Advanced
graphics. I cover a mix of topics in modeling (subdivision
surfaces, splines), rendering (volume rendering, point-based
rendering), and animation (basic physics). Mostly a project-driven
course, with a lot of freedom in the assignments. Usually taught in
the spring.
Supplementary Courses I designed
Most of these courses are now taught by other faculty or graduate students.
- C++ helper class
- Math helper class
Courses I have taught
- Video
games. I'd like to take credit for this, but basically two
students, Lauren McHugh and Luke Zulauf, put the course together in
2004. I just volunteered to be the official in charge. This is a
year-long course in which students develop and implement a video game.
- Data
structures and algorithms. [Taught spring 2005] A required
course for our majors and minors.
Seminars
- Math for vision, graphics, and robots
|