Home | Lehre | Videos | Texte | Vorträge | Software | Person | Impressum, Datenschutzerklärung |
Jörn Loviscach
If you attend this course, please send me an
e-mail so that I can compile a mailing list.
The day before each lecture, I prepare lecture notes and put them in the corresponding directory beneath this Web page, together with example code. The notes are no work for eternity; I typically focus on content and on didactics rather than on form. According to the regulations, your attendance in the lecture is not required. However, if you don't attend the lecture, you will have a hard time working on the assignments.
I recommend that you collect information from everywhere. But I expect everybody to understand the program he or she submits. Furthermore, any material that you did not write, draw, etc. on your own has to be clearly declared as such. In the assignments, you will achieve a better grade with self-developed material, although in industrial practice you would of course strive to reuse somebody else's work.
Attendance at the lab is compulsory, limited by the typical exemptions such as illness. As an alternative to attend the lab, you may contact me in advance (!) for a special meeting or electronic communication. Notice that most of the work has to be done at home. You may also use the computer graphics lab when there are no classes.
Assignments are to be submitted via e-mail. According to the regulations, you need to include not only source code and executable files, but also substantial documentation:
I grade every assignment with zero to three points, and that is the
least point number according to the following categories:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
If you achieve three points in every category and if your solution clearly exceeds the original task in features, structure, or documentation, you are awarded four points instead. If you achieve one point for every assignment, your total mark will be 4.0 (sufficient). If you achieve four points for every assignment, your mark will be 1.0 (excellent).
For commenting style see "Code Complete 2" or at least the bullet lists about self-documenting code and about commenting (free registration required).
Tue, 5 Oct | Lab, Groups A: introduction to C#, .NET, Windows Forms and development environments |
Thu, 7 Oct | Survey: Modeling, Animation Rendering |
Tue, 12 Oct | Lab, Groups B: introduction to C#, .NET, Windows Forms and development environments |
Mon, 25 Oct 11:30 a.m. - 1 p.m. I-123 |
has to be postponed due to a conference
Human visual system, color spaces; bitmap, motion picture, vector graphics, 3D scene, animation, interaction; examples for file formats: BMP, JPEG, PS, OBJ |
Mon, 25 Oct 1:30 p.m. - 3 p.m. I-032b |
postponed due to a conference
2D graphics programming using GDI+ under C# ; bitmaps filters and effects |
Tue 26 Oct 9:45 a.m. - 1 p.m. |
postponed due to a conference
Lab, Groups A: bitmap effect |
Tue, 26 Oct | Lab, Groups B: bitmap effect |
Thu, 28 Oct | Assert, trace; pointer arithmetics in C#; antialiasing, interpolation |
Tue, 2 Nov | Lab, Groups A: curves |
Tue, 4 Nov | Hermite curves, bézier curves; basics of B-Spline and NURBS curves |
Tue, 9 Nov | Lab, Groups B: curves; deadline (for groups A and B): bitmap effect |
Thu, 11 Nov | Introduction to Managed DirectX; perspective, projection |
Tue, 16 Nov
no longer canceled |
Lab, Groups A: perspective |
Thu, 18 Nov | Homogeneous coordinates: projection, composition of 3D transformations, matrices |
Tue, 23 Nov | Lab, Groups B: perspective; deadline for group A: curves |
Thu, 25 Nov | Elimination of hidden surfaces, z buffer; back face culling; double buffering |
Tue, 30 Nov | deadline for group B: curves; lab in first week instead; please attend the guest speaker's talk in the "Mobile Gaming" colloquium |
Thu, 2 Dec | Lighting; diffuse and specular reflection; Gouraud and Phong interpolation; determining the vertex normal |
Tue, 7 Dec | Lab, Groups A: random universe; deadline: perspective |
Thu, 9 Dec | 3D modeling, part I: explicit surfaces f(x,y), parametric primitives, boundary representation, Boolean operations |
Tue, 14 Dec | Lab, Groups B: random universe; deadline: perspective |
Thu, 16 Dec | Texturing: color, bump, displacement, etc.; types of projection; MIP mapping; alpha blending |
Tue, 21 Dec | Lab, Groups A: textured scene |
Thu, 23 Dec | 3D modeling, part II: spline surfaces; subdivision surfaces; metaballs and other implicit surfaces |
Tue, 11 Jan | Lab, Groups B: textured scene |
Thu, 13 Jan | 3D animation: keyframing, function curves, hierarchical animation; interpolation of rotations |
Tue, 18 Jan | Lab, Groups A: deadline: random universe, textured scene |
Thu, 20 Jan | Jin Li gives a lecture on OpenGL as compared to DirectX |
Tue, 25 Jan | Lab, Groups B: deadline: random universe, textured scene |
Thu, 27 Jan | Immediate mode, retained mode, scene graphs; photo realism: raytracing, radiosity |