vistit the homepage Vienna University of TechnologyTECHNISCHE UNIVERSITÄT WIEN
Institut für Computergraphik und Algorithmen
Arbeitsbereich Computergraphik

Home  -   People  -   Courses  -   Research  -   Events  -   Resources  -   Jobs

 VU Echtzeitgraphik

WS 3.0, 186.140

Michael Wimmer

Quicklinks

Aktuelles

16.11.2011

Die Folien zum Repetitorium sind hier zu finden:

Omni-directional Shadows

Gamma Correction

Hardware Tessellation

5.10.2011 Die folgenden Vorlesungstermine werden wegen einer Terminkollision mit einer anderen LVA um eine halbe Stunde nach hinten verschoben

Die Vorlesungseinheiten werden also von 13:45-15:15 stattfinden.

Die nachfolgende LVA Entwurf und Programmierung einer Rendering-Engine wird entsprechend auch nach hinten verschoben.
2.10.2011 Willkommen zur Echtzeitgraphik VU 2011! Die Seiten sind noch im Aufbau und können sich noch ändern.

Gruppenanmeldung: Es gibt im TISS die Funktion der Anmeldung zu einer sogenannten "Gruppe". Bei der VU gibt es nur eine Gruppe - bitte meldet Euch dafür sobald wie möglich an!

Der 1. Vorlesungstermin (gleichzeitig die Vorbesprechung) ist für Mittwoch, 5. Oktober 2011, 13:15 angesetzt.

Allgemeine Informationen

Inhalte:

Diese VU soll einen Einblick in das Gebiet der Echtzeitgraphik bieten, die in der Virtual Reality und in Computerspielen Anwendung findet. Die Themengebiete sind unter anderem:
  • Architektur von Graphikhardware
  • Optimierung
  • Advanced Lighting and Shading
  • Shading Languages
  • Graphics Programming (OpenGL 1.0-3.0, DirectX, ...)
  • Real-time Shadows
  • Culling and Visibility
  • Levels of Detail and Terrain Rendering
  • Image-based Rendering

Ort und Zeit:

Mittwoch 13:15-14:45 13:45-15:15, im Seminarraum 186, Favoritenstr. 9-11, 5. Stock, Stiege 1.

Termine:

Einteilung:
5., 12., 19. Oktober 2011
9., 16., 23., 30. November 2011
7., 14. Dezember 2011
11., 18. Jänner 2012

25. Jänner, 13:00-16:00: Präsentation der Übungsprojekte (keine Prüfung!)

Termine für den Übungsteil:

Nähere Infos zum Übungsteil siehe unten, hier die wichtigsten Termine:

10.11.2011: 15:00-17:00 Repetitorium im Seminarraum 186

25.11.2011: 1. Abgabe: Gruppenvorschlag sowie die Rendering-Engine (Abgabemodalitäten: siehe Übungsteil)

18.1.2012: 2. Abgabe: fertiges Projekt (Abgabemodalitäten: siehe Übungsteil)

25.1.2012, 13:00-16:00: Präsentation der Übungsprojekte

Modus:

Die VU besteht aus ca. 10-12 Vorlesungseinheiten und einem praktischen Übungsteil, in dem alleine oder in Zweiergruppen ein oder mehrere kleine Effekte aus der Vorlesung implementiert werden sollen. Näheres siehe weiter unten.

Beurteilung:

Die Note setzt sich aus dem Übungsteil, der durch eine kleine Präsentation am Ende des Semesters abgeschlossen wird, und einer mündlichen Prüfung nach Ende der Vorlesung zusammen. Bei der Präsentation bitte keine Folien vorbereiten, sondern einfach das Demo starten und kommentieren.

Prüfungstermine

Prüfungstermine werden nach der Vorlesung im Februar über das Anmeldesystem vergeben, danach per Vereinbarung per email an den Vortragenden.

Unterlagen:

Als Unterlagen dienen die Folien zur Vorlesung. Sie werden laufend aktualisiert.

Als ausgezeichnete Ergänzung empfiehlt sich das Buch "Real-Time Rendering, Third Edition", von Tomas Akenine-Möller und Eric Haines, erschienen im A K Peters-Verlag, 2002 (ISBN: 987-1-56881-424-7).

Kommunkation

Abonniert bitte unbedingt in TUWIS diese LVA, und aktiviert in den TUWIS-Einstellungen die Option "LVA-News per Email erhalten". Dadurch werdet Ihr immer über wichtige Informationen auf dem Laufenden gehalten (Software-Updates, Verfügbarkeit der Ergebnisse, Terminverschiebungen usw.), die wir auf der Webpage ankündigen.

Als Kommunikationsplattform nutzen wir die Echtzeitgraphik VU Gruppe im Informatik-Forum. Dort könnt Ihr untereinander diskutieren (z.B. Partnersuche für den Übungsteil, Diskussion über Techniken etc). Dort sind auch regelmäßig unsere Tutoren aktiv, um Fragen zu beantworten.

Übungsteil

Der Übungsteil steht unter dem Motto "Demo-Programmierung". Schreibt also in 2er-Gruppen ein kleines Demo, das zumindest zwei Effekte aus dem Vorlesungsteil demonstriert. Originalität beim Demo (im Sinne der "Demo-Szene") wird ebenfalls belohnt!

Damit Ihr Euch den besser vorstellen könnt, was so ein Demo sein kann, haben wir ein kleines Demo mit Erläuterungen für Euch vorbereitet: Ride To Fail.

Die Effekte können durchaus auch über das hinausgehen, was in der Vorlesung gemacht wurde. Allerdings gibt es auch ziemlich viel "prior art", das heißt es kursieren schon viele Shader im Netz oder sind beim Cg Toolkit, nVidia SDK und DX SDK dabei. Ihr solltet Euch ein Thema auswählen, wo man schon noch etwas selber machen muß. Deshalb solltet Ihr alle Quellen (Tutorials, Beispielshader usw.), die Ihr verwendet habt, in der Dokumentation angeben. Weiters sollte zumindest 1 Effekt dabei sein, der in der Vorlesung behandelt wurde. Die genaue Anzahl der erforderlichen Effekte hängt natürlich auch vom Schwierigkeitsgrad ab, dazu geben wir euch nach der 1. Abgabe genaueres Feedback!

Die Abgabemodalitäten sind ähnlich wie bei der CG2-Laborübung. Das heißt im Speziellen:

  • Sucht Euch einen Gruppennamen aus (z.B. "juggernaut"). In der Regel ist die Gruppengröße 2 Personen, Ausnahmen vorher absprechen!
  • Der Name Eures Abgabefiles sollte dann "1juggernaut.zip" für den Projektvorschlag, und "2juggernaut.zip" für das fertige Demo sein. Sollten Nachbesserungen notwendig sein, dann hängt noch Zahlen an, also z.B. "2juggernaut_1.zip" usw.
  • Die Abgabe erfolgt per upload über dieses Formular, login: cg23/cg23lu. Solltet ihr Probleme mit dem Upload haben, dann habt ihr vielleicht spaces oder Sonderzeichen im Dateinamen (bitte nur Klein- und Grossbuchstaben sowie Ziffern und _ bzw - im Dateinamen verwenden). Ansonsten könnt ihr die Dateien auf euren Webspace hochladen und im Forum einen Link setzen.
  • Die .zip-Datei sollte eine readme.txt-Datei mit Euren Namen, Matrikelnummern, Studienkennzahlen usw. enthalten, sowie eine kleine Dokumentation des Programms.
  • Wichtig: nennt auch die Systemvoraussetzungen: Wir werden die Programme auf einem Core 2 Duo mit einer nVidia GeForce 460 GTX Grafikkarte testen, das heißt ATI-spezifische Effekte werden wir uns kaum anschauen können.
  • Eine ausführbare Version des Projekts sollte im /bin-Verzeichnis sein, Source-Code im /src-Verzeichnis, Dokumentation im /doc-Verzeichnis.
  • Sorgt dafür, dass alle zur Ausführung notwendigen Dateien (also libraries, also besonders deren .dll-Dateien - das heißt z.B. auch glut32.dll!) beigefügt sind!
  • Löscht alle temporären Compiler-Dateien (.obj, .pdb etc.) vorher raus, um Platz zu sparen!
  • Testet das Demo unbedingt rechtzeitig auf dem Abgaberechner. Ihr könnt davon ausgehen dass der PC mit einer Geforce 460 GTX bestückt, und Windows 7 installiert ist.
  • Solltet ihr besondere Libs benötigen die eine besondere Installation voraussetzen, setzt euch bitte mit den Tutoren im Forum in Verbindung. Ihr könnt davon ausgehen dass eine .NET 2.0-Laufzeitumgebung und ein nVidia PhysX-Treiber installiert sind.
  • Die Dokumentation sollte eine kurze Beschreibung des/der Effekte beinhalten. (Also was für ein Effekt, mit welcher Methode wurde er implementiert, und, wie oben angesprochen, welche Quellen wurden benutzt).

1. Abgabe:

Die 1. Abgabe enthält sowohl einen Vorschlag für das Demo als auch schon einen ausführbaren Prototyp, der vor allem eine funktionsfähige Rendering Engine enthalten sollte.

Der Sinn des Prototypen ist, bei allen die gleichen Startvoraussetzungen für die Effekte herzustellen. Der Prototyp sollte folgendes enthalten:

  • Rendering mittels OpenGL 3.2 core profile (support im Forum) oder DirectX 10 (kein bis kaum support im Forum), unter Windows 7 x64 lauffähig (Windows 7 gibt es für euch gratis hier)
  • (zumindest einfache) Beleuchtung im Pixelshader
  • Texturen
  • Kamerafahrt bzw. Steuerung
  • eine einfache Szene, die erahnen läßt, wie ihr die beschriebenen Effekte einsetzen wollt.

Im Vorschlag (pdf-file) solltet ihr dann beschreiben, welche Effekte ihr implementieren wollt und wie sie in den Prototypen eingebaut werden sollen (also an welchen Stellen). Die Effekte müssen genau(!) spezifiziert werden, also mit Quellenangabe (z.B.: Shadow Mapping wie in der VU beschrieben, Levels of Detail wie im Paper von (Autor, link) beschrieben, Bloom-Effekt wie in Tutorial (link) beschrieben, ...).

Für die Endabgabe sollten nur mehr die tatsächlichen Effekte sowie eine verfeinerte Szene fehlen. Wer zu diesem Zeitpunkt schon weiter ist, kann natürlich die Effekte schon im Prototypen zeigen, um dazu schon Feedback zu bekommen.

2. Abgabe:

Die 2. Abgabe soll die endgültige Demo beeinhalten. Hier sollen die gewählten Effekte implementiert und schön in Szene gesetzt werden.
Zusätzlich dazu sollte im Abgabearchiv ein Screenshot aus eurem Demo im png - Format in der Auflösung 640x480 und ein Video in mindestens 640x480 Auflösung in xvid - Komprimierung für die Hall of Fame enthalten sein.

Anrechenbarkeit:

Für die Anrechenbarkeit der LVA siehe den aktuellen Studienplan.

Computer Graphics Group / Courses / Echtzeitgraphik
Maintained by Michael Wimmer.
Last update on 9. Jan 12.
Comments to wimmer (at) cg.tuwien.ac.at.
get back to the index

Favoritenstrasse 9-11 / E186, A-1040 Wien, Austria
Tel. +43 (1) 58801-18602, Fax +43 (1) 58801-18698
www.cg.tuwien.ac.at