Home | Lehre | Videos | Texte | Vorträge | Software | Person | Impressum, Datenschutzerklärung |
Jörn Loviscach
Pflichtfach für das Vordiplom im Diplomstudiengang Medieninformatik
Wahlpflichtmodul für den Bachelor-Studiengang Digitale Medien
Sollten Fragen außerhalb von Vorlesung oder Labor auftreten, mailen Sie mich einfach an. Meine Reaktionszeit beträgt typischerweise nur wenige Stunden, auch am Wochenende. Wenn Sie Wünsche oder Ideen zu Inhalt und Ablauf haben, lassen Sie es mich wissen.
Die Anwesenheit in der Vorlesung ist gemäß der Prüfungsordnung nicht verpflichtend, im Unterschied zur Anwesenheit beim Labor. Allerdings habe ich in den vergangenen Semestern Folgendes festgestellt: Wer sich an den Laboraufgaben versucht, ohne die Vorlesung zu hören, muss ein Vielfaches an Zeit investieren.
Ich ermuntere Sie ausdrücklich, sich zur Aufgabenlösung umfassend zu informieren und auszutauschen (Kommilitionen, Internet, Bücher etc.). Aber ich erwarte, dass jede(r) seine Lösung versteht. Das werde ich durch Nachfragen prüfen. Selbstverständlich: Fremdes Material in Programmen oder Dokumentationen ist deutlich als solches zu deklarieren; alles andere wäre ein Betrugsversuch.
Die erste Aufgabe (Das erste Windows®-Programm) dient zur Probe; ich rechne sie nicht in die Note ein. Wer die zweite Aufgabe abgibt, meldet sich damit verbindlich an. Er/sie erhält auf jeden Fall am Semesterende eine Note, sonst niemand. Haben Sie sich angemeldet, ist die Anwesenheit bei den Laborterminen für Sie verpflichtend, außer:
Sonderlösung: Wegen der stark verschiedenen Ausgangslage bei Mathematik und Informatik biete ich für Teilnehmer(inn)en mit fortgeschrittenen Kenntnissen an, nach Absprache statt der diversen kleinen Aufgaben eine einzige große Aufgabe von entsprechendem Gesamtumfang zu bearbeiten, welche die Themen der Vorlesung abdeckt. Beispiele:
Weil Windows®-Programmierung im Zentrum steht, liegt die Arbeit mit der Entwicklungsumgebung Microsoft® Visual C++® 6.0 (im Labor installiert) oder deren neuer .NET-Version nahe. Zur Arbeit außerhalb des Labors können Sie die relativ günstige Studentenversion benutzen oder (noch preiswerter) die in einigen Büchern klebende Autorenedition (z.B. in "Jetzt lerne ich Visual C++ 6", 24,95 Euro, ISBN 3-8272-5519-8, so lange noch nicht vergriffen). Weil ich nicht auf die Programmierung mit der MFC-Klassenbibliothek eingehen will, können Sie auch das kostenlose Dev-C++ benutzen.
Für die Aufgaben ist gemäß der Prüfungsordnungen nicht nur der Quellcode abzugeben, sondern eine komplette Dokumentation, also zusätzlich:
Punkte | Problemlösung | Struktur | Bezeichner | Kommentare | Dokumentation |
0 | wesentlicher Teil fehlt | konfus | konfus | praktisch nicht vorhanden | wesentlicher Teil fehlt |
1 | weitgehend, aber z.B. wichtige Ausnahmefälle nicht oder unkorrekt behandelt | teilweise logische Mängel | teilweise verwirrend | jede Klasse und jede nichttriviale Methode erklärt | weitgehend, aber z.B. wichtige Ausnahmefälle nicht behandelt |
2 | praktisch vollständig | logisch | verständlich | zusätzlich: alle kritischen Stellen kommentiert. | praktisch vollständig |
3 | vollständig | modular, leicht erweiterbar | selbsterklärend | zusätzlich: alle nicht auf den ersten Blick einleuchtenden Stellen kommentiert. | vollständig |
Ergeben sich in allen Kategorien drei Punkte und geht das Programm deutlich über die Aufgabenstellung hinaus, indem es z.B. eine erweiterte Funktionalität bereitstellt, etwa Exceptions oder überladene Operatoren sinnvoll nutzt oder gestalterisch hochwertig dokumentiert ist, vergebe ich vier Punkte.
Wer bei jeder Aufgabe exakt einen Punkt erzielt, besteht den Laborteil mit der Note 4,0.
07.10. Mo | verlegt auf 14.10, damit Blockbildung |
08.10. Di | Labor, Gruppen A: Einführung in C++ und die Entwicklungsumgebung |
14.10. Mo | zusätzlich 13.30-15.00: Ereignisgesteuerte Programmierung und grafische Oberflächen am Beispiel von Windows® |
14.10. Mo | Beispiel von 2D-Grafikschnittstellen: Windows®-GDI, PostScript® |
15.10. Di | Labor, Gruppen B: Einführung in C++ und die Entwicklungsumgebung |
21.10. Mo | verlegt auf 28.10, damit Blockbildung |
22.10. Di | Labor, Gruppen A: Das erste Windows®-Programm |
28.10. Mo | zusätzlich 13.30-15.00: Bitmapbild, Vektorgrafik, 3D-Szene, Zeitablauf; optische Wahrnehmung, Farbmodelle |
28.10. Mo | Filter und Effekte auf Bitmap-Basis |
29.10. Di | Labor, Gruppen B: Das erste Windows®-Programm |
04.11. Mo | verlegt auf 11.11, damit Blockbildung |
05.11. Di | Labor, Gruppen A: Bitmap-Effekt; Abgabe "Das erste Windows®-Programm" |
11.11. Mo | zusätzlich 13.30-15.00: Antialiasing, Interpolation |
11.11. Mo | Hermite-Kurven, Bézier-Kurven und ihre Wiedergabe; Grundlagen von B-Spline- und NURBS-Kurven |
12.11. Di | Labor, Gruppen B: Bitmap-Effekt; Abgabe "Das erste Windows®-Programm" |
18.11. Mo | 2D-Grafik mit OpenGL®; Perspektive, Projektionsarten |
19.11. Di | Labor, Gruppen A: Kurven; Abgabe "Bitmap-Effekt" |
25.11. Mo | schon um 13.30, I-122: homogene Koordinaten: Projektionsformeln, Verkettung von 3D-Transformationen, 3D-Grafik mit OpenGL®, Modelview- und Projection-Matrix |
26.11. Di | Labor, Gruppen B: Kurven; Abgabe "Bitmap-Effekt" |
02.12. Mo | z-Sortierung; z-Buffer; Backface Culling |
03.12. Di | Labor, Gruppen A: Perspektive; Abgabe "Kurven" |
09.12. Mo | schon um 13.30, I-122: Beleuchtung; diffuse und glänzende Reflexion; Gouraud- und Phong-Interpolation; Bestimmung der Vertexnormalen |
09.12. Mo | auf Montag vorgezogen (5.+6. Block): Labor, Gruppen B: Perspektive; Abgabe "Kurven" |
16.12. Mo | 3D-Modellierung, Teil 1: explizite Flächen f(x,y), parametrische Grundkörper, Boundary Representation, Boolesche Operationen |
17.12. Di | Labor, Gruppen A: Zufallsuniversum; Abgabe "Perspektive" |
06.01. Mo | 3D-Modellierung, Teil 2: Spline-Flächen, Subdivision Surfaces, Metaballs und andere implizite Flächen (Marching Cubes); Grundlagen der Animation |
07.01. Di | Labor, Gruppen B: Zufallsuniversum; Abgabe "Perspektive" |
13.01. Mo | Texturierung: Farbe, Bump, Displacement etc.; Projektionsarten; MIP-Map; Alpha-Blending |
14.01. Di | Labor, Gruppen A: Texturierte Szene; Abgabe "Zufallsuniversum" |
20.01. Mo | Immediate Mode/Retained Mode, Displaylisten, Vertex-Arrays, Szenengraphen, 3D-Dateiformate |
21.01. Di | Labor, Gruppen B: Texturierte Szene; Abgabe "Zufallsuniversum" |
27.01. Mo | Fotorealismus: Raytracing, Radiosity-Grundlagen |
28.01. Di | Abgabetermin "Texturierte Szene" für Gruppen A |
04.02. Di | Abgabetermin "Texturierte Szene" für Gruppen B |