TU Wien:Einführung in die Computergraphik UE (Werner Purgathofer, Michael Wimmer)

From VoWi
Jump to navigation Jump to search

Daten[edit]

Lecturers Werner Purgathofer, Michael Wimmer, Bernhard Steiner
ECTS 3
Department Forschungsbereich Computer Graphics
Links tiss:186832, Homepage, Mattermost-Channel
Zuordnungen
Bachelor Medieninformatik und Visual Computing Pflichtmodul Übungen zu Visual Computing
Bachelor Medizinische Informatik Wahlmodul Übungen zu Visual Computing
Bachelor Software & Information Engineering Wahlmodul Übungen zu Visual Computing

Mattermost: Channel "einfuehrung-in-die-computergraphik"RegisterMattermost-Infos

Inhalt[edit]

In der LVA mussten diverse Aufgaben gelöst werden bei denen zuerst einfache Körper geladen, eingefärbt und auf dem Bildschirm dargestellt werden sollten. In weiteren Übungen mussten diese Körper mit Hilfe von Matrixrechnungen transformiert werden. Weitere Inhalte waren die Implementierung der Steuerung einer einfachen Kamera (Arcball camera), Beleuchtungsmodelle, Shaderprogrammierung und Texturierung.

Alle Aufgaben mussten mit einem vordefinierten OpenGL Framework mit C++ gelöst werden. Dabei gab es eine Einführung in beide Themen und diverse Tools, die bei der Entwicklung hilfreich sein könnten.

Ablauf[edit]

Es gibt im Lehrveranstaltungswiki 6 Aufgabenstellungen mit Deadlines. Alle Aufgaben sind von Beginn des Semesters an verfügbar, die Musterlösungen werden erst nach der jeweiligen Deadline veröffentlicht. Es ist immer möglich, nach einer Aufgabe mit der Musterlösung weiterzuarbeiten, wodurch Folgefehler vermieden werden können. Nach den ersten drei Beispielen findet das erste Abgabegespräch statt, nach den zweiten drei Beispielen das zweite Abgabegespräch.

Es können alle Beispiele schon zu Semesterbeginn gemacht werden, die Abgabegespräche sind aber erst in der Mitte und am Ende des Semesters. Die Gespräche werden von vielen verschiedenen, tlw. nicht direkt an der Lehrveranstaltung beteiligten, Personen abgehalten. Weil nicht alle davon Deutsch sprechen, kann es sein, dass ein Abgabegespräch auf Englisch abgehalten wird. Im Gespräch selbst muss man Theoriefragen beantworten und Teile der eigenen Implementierung finden und erklären können.

WS13:

Es gab 6 Runden und 2 Abgabgespräche. Man hat ein Framework runtergeladen, wo schon fast alles vorprogrammiert ist, jedoch müssen zum Verständnis notwendige Methoden implementiert werden, diese sind im ECG-Wiki genaustens beschrieben. (Zum Beispiel die draw Methode eines BresenhamAlgorithmus) Nach jeder Onlineabgabe kann man sich auch die Musterlösung herunterladen und an dieser weiterarbeiten, falls man irgendwo in den vorherigen Runden Fehler hat, die man nicht ausbessern konnte.

WS17:
Programmiert wird nun in C++ mit OpenGL. Ein Framework wird zwar zu Beginn zur Verfügung gestellt, dieses beinhaltet allerdings nur Basis-Code. Das ECG-Wiki gibt es nicht mehr.

WS19:

Es gab fünf Aufgaben und zwei Abgabegespräche. Ansonsten gleich wie im WS17

Benötigte/Empfehlenswerte Vorkenntnisse[edit]

Programmierkenntnisse sind notwendig; elementares Verständnis von Vektoren und Matrizen sind von Vorteil. Interesse an der Thematik erleichtert die Übung selbstverständlich.

Ab WS17 sind die Kenntnisse von Einführung in Visual Computing notwendig. Ohne diese ist die Absolvierung der LVA nur mit extrem hohem Mehraufwand möglich. Im WS19 werden Kenntnisse in C/ C++ benötigt. Es gibt zwar eine Einführung in die Sprache, aber ohne Vorkenntnisse wird man sich erst mühsam einarbeiten müssen.

Vortrag[edit]

WS17: Zu Beginn des Semesters gibt es vier Termine, in denen Grundwissen zu C++ sowie OpenGL vermittelt wird. In der Mitte des Semesters (kurz vor der Deadline der dritten Aufgabe) gibt es ein Repetitorium, in dem die Aufgaben vier bis sechs erklärt werden.

Übungen[edit]

Jede Woche gibt es am Abend für eine Stunde ein freiwilliges Tutorium, bei dem man Fragen zu seinem Code und den Aufgaben stellen kann.

Prüfung, Benotung[edit]

In den 2 Abgabesprächen werden die Übungsrunden und die Theorie auf Verständnis geprüft und man bekommt dann Punkte für die Beispiele bzw. auch Punkte für richtige Ergebnisse.

Die Gespräche waren sehr angenehm und vergleichbar mit EVC, auch wenn sie hier viel weniger streng benotet wurden. Man sollte darauf achten, dass die Abgabe wirklich so aussieht wie die Musterlösung, sonst kann man hier schon mal den einen oder anderen Punkt verlieren. Aber sonst wurden allgemeine Verständnisfragen gestellt und nicht zu streng nachgehakt.

Dauer der Zeugnisausstellung[edit]

WS 2016/17: 2. Abgabegespräch am 12.01., bisher (31.01.) kein Zeugnis.
WS 2017/18: 2. Abgabegespräch am 15.01., Zeugnis am 22.01 (1 Woche)

Zeitaufwand[edit]

Kommt darauf an, wie schwer/leicht man sich mit dem Verständnis tut. Der Zeitaufwand ist nicht davon abhängig, dass man viel coden muss, sondern die Theorie, die man beherrschen sollte. Wenn man alles notwendige versteht, ist ein "Sehr Gut" leicht zu erreichen.

Ich habe im Durchschnitt ungefähr 10h pro Aufgabe investiert.

Unterlagen[edit]

Es gibt das ECG Wiki, wo alle notwendigen Informationen drin stehen. EVC - Folien WS17:
Das ECG Wiki existiert nicht mehr

Tipps[edit]

Es ist meiner Meinung nach DIE erste LVA im Medieninformatikzweig, die das erste Mal praktisch Richtung Computergraphik geht. Ich finde, man sollte sich wirklich Zeit nehmen und die Theorie, das PipeliningSystem, warum gewisse Sachen so sind wie sie sind, verstehen, da es eine Grundlage für die weiteren Computergraphik/Visualisierungs Fächer sind. Wenn man hier nur blind Sachen runtercoded, was möglich ist, da mehr oder weniger eine Step by Step Anleitung im Wiki steht und nicht die Elemente im Zusammenhang versteht, tut man sich prinzipiell auch schwer.

Bei allen 6 Aufgaben gibt es im Wiki einige Verständnisfragen. Vor den Abgabegesprächen den eigenen Code noch einmal anschauen und alle Fragen aus dem Wiki durchgehen und Antworten dazu finden hilft bei den Abgabegesprächen. Im Informatik-Forum gibt es Threads zu sehr vielen verschiedenen Programmierproblemen, wenn nicht erst kurz vor der Deadline angefangen wird gibt es auch noch die Möglichkeit, dort Fragen zu stellen und Antworten von anderen Studis und Tutor_innen zu bekommen. Die angebotenen Laborstunden sind sehr hilfreich, aber auch immer sehr voll, d.h. lange Wartezeiten, bis die eigene Frage beantwortet werden kann.

Verbesserungsvorschläge / Kritik[edit]

noch offen