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. firstname.lastname@example.org. APM 6210. 534-6455.
Teaching assistant: Frank Chang. email@example.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.
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.