Math 217A - 3D Computer Graphics
Instructor: Sam Buss
U.C. San Diego, Spring 2002
Time and place: MWF 12:20-1:10. Solis 109
(tentative) First meeting, Monday, April 1, 12:20.
Instructor: Professor Sam Buss. sbuss@ucsd.edu. APM 6210. 534-6455.
Teaching assistant: Frank Chang. fchang@math.ucsd.com. APM 6337F.
Buss's Office hours: Monday 9:00-9:50, Tuesday 10:00-11:00,
Wednesday 2:00-3:00. (Office hours begin Wednesday, April 3rd, due to prior
commitment on Tuesday, April 2.)
Computer lab: APM basement, PC lab. Rooms numbers are
B325 and B349/B337.
For math grad students and visitors: The new PC's in the second floor and fifth floor labs
should work fine with OpenGL. (I have not yet tested them.)
Computer lab office hours. (F. Chang) Tuesday
11:00-12:00, 2:00-3:00. APM B349/B337.
Textbook: Copies of Buss's forthcoming book 3D Computer Graphics: A Mathematical Introduction with OpenGL (Cambridge University Press, 2002) in preliminary form will be made available for free, and will serve as the primary textbook. In addition, you may wish to buy a copy of the OpenGL programming manual, but this is optional as earlier additions of this are freely available on the web, and the C++ compiler has good "help" facilities for OpenGL.
Course annoucement: This course is an introduction to computer
graphics, with particular emphasis on the mathematical foundations and mathematical
methods. Lectures will be theoretical, but students will also learn how to use OpenGL and
to create 3D graphics. Computer graphics is widely used for scientific visualization,
simulators, movies and computer games, and depends heavily on mathematical techniques.
The course will discuss the mathematics and physics needed for
comptuter graphics, for both realtime and offline applications. topics include: affine
transformations, perspective, Bresenham algorithm, homogeneous coordinates, barycentric
coordinates, bilinear interpolation, hyperbolic interpolation, quaternions, Bezier curves,
B-spline curves, blossoming, interpolating splines, shading, spline surfaces, color
perception, color representation, texture mapping, ray tracing, intersection testing,
radiosity. If time permits, we will discuss topics from animation and simulation (inverse
kinematics, forward dymamics, collisions, intersections and contacts are possibilities).
Prerequisites: This course is intended for graduate
students in mathematics or engineering. The mathematical prerequisites are strong
familiarity with undergraduate calculus and linear algebra. Undergraduates should take the
course only with prior approval and only on a space-available basis. Students should have
had some exposure to at least one language in the C family (C, C++, Java, C#) as student
work will include programming assignments. Programming will use OpenGL, a widely used,
cross-platform API for real-time computer graphcis. No prior knowledge of OpenGL is
expected. In addition, special code for ray tracing will be made available.
Handouts:
Programming assignments
Written homework assignments:
Software supplied with the course text book: (Now all available, in preliminary form).
Finals Week Announcements:
Buss's office hours: Monday 9:00-9:50, 11:00-11:50.
APM 6210. Also available other times Monday morning and Tuesday midday.
Frank's office hours: Tuesday 11:00-2:00 (APM basement
lab).
Take home final: due Wednesday, 10:00 am.
Final project: due Tuesday, early afternoon.
Final project demos: Wednesday 10:00 am, APM basement
lab.
Computer graphics resources on the web.