Computer Graphics
TU Braunschweig

Computergraphik - Grundlagen WS'19/20
Vorlesung mit Übung

Prof. Dr.-Ing. Marcus Magnor

Hörerkreis: Bachelor & Master
Kontakt: cgg@cg.cs.tu-bs.de

Modul: INF-CG-30, INF-CG-24
Vst.Nr.: 4216008, 4216014

Gewinner der Raytracing Competition 2020
Kirstin Rohwer                                                                              Oliver Müller, Johannes Schmechel

Freigegeben unter den Bedingungen der CC-BY-SA-3.0

Aktuelle Informationen:

  • Die Ergebnisse der Klausur hängen jetzt am schwarzen Brett. Die Einsicht ist am 25.02.2020 13.00-15.00 Uhr im Raum G23
  • Die Startzeit für die Klausur wird auf 10:30 Uhr gelegt.
  • Das Modul kann im Master nur belegt werden, wenn dieses oder ein äquivalentes Modul noch nicht im Bachelor-Studiengang belegt wurde.

     

    Beschreibung:

    In der Vorlesung werden die theoretischen und praktischen Grundlagen der Computergraphik vermittelt. Neben einem allgemeinen Überblick über das Gebiet der graphischen Datenverarbeitung liegt der Schwerpunkt der Vorlesung auf Bildsyntheseverfahren (Rendering). Am Beispiel des Ray Tracing-Ansatzes werden eine Reihe fundamentaler Themen der Bilderzeugung sowohl theoretisch als auch praktisch erklärt. Als Teil der vorlesungsbegleitenden Übungen entwickeln die Vorlesungsteilnehmer ihr eigenes Ray Tracing-Programm und lernen auf diese Weise typische Rendering-Probleme und -Lösungen am praktischen Beispiel kennen. Am Ende des Semesters wird jeder Student seinen eigenen funktionstüchtigen Ray Tracer entwickelt (und verstanden) haben.

    Inhalt:

    • Grundlagen der digitalen Bildverarbeitung
    • Physikalische Gesetze des Lichttransports
    • Die menschliche visuelle Wahrnehmung
    • Der Ray Tracing-Ansatz
    • Geometrie und Transformation
    • Objekt- und Szenenmodellierung
    • Beschleunigungsstrukturen
    • Material- und Reflektionsmodelle
    • Textur
    • Grundlagen der Bild-Signalverarbeitung
    • Sampling
    • Anti-Aliasing

    Ort und Zeit:

    • Vorlesungsbeginn: Mittwoch, 23.10.2019, 9:45-11:15 Uhr in IZ 160 (MP 23.3)
    • Übungsbeginn: Freitag, 25.10.2019, 9:45-11:15 Uhr in IZ G40 (MP 23.2)
    • Vorlesungszeit: Montag, 21.10.2019 - Samstag 08.02.2020, Weihnachtsferien: Sonntag, 22.12.2019 - Sonntag 05.01.2020

    Vorlesungsfolien:

    Die Vorlesungsfolien und Übungsblätter sind durch ein Passwort geschützt. Das Passwort wird in der ersten Vorlesung bekannt gegeben.

    23.10.2019

    Introduction

    23.10.2019

    Ray Tracing Overview [PDF][MP4]

    30.10.2019

    Ray Tracing Fundamentals [PDF][MP4][MP4-WS18]

    06.11.2019

    Ausfall

    13.11.2019

    Radiometry [PDF][MP4]

    20.11.2019

    Shading [PDF][MP4]

    27.11.2019

    Shading II [PDF][MP4]

    04.12.2019

    Acceleration [PDF][MP4]

    11.12.2019

    Texturing [PDF][MP4][MP4-WS18]

    18.12.2019

    Geometry [PDF][MP4]

    08.01.2020

    Sampling [PDF][MP4]

    15.01.2020

    Antialiasing [PDF][MP4]

    22.01.2020

    Distributed Radiosity [PDF][MP4]

    29.01.2020

    Pathtracing [PDF]

    Übungen:

    Die Übungen werden über unseren institutsinternen Git-Server verteilt. Bitte erstellen Sie einen Account auf https://git.cg.cs.tu-bs.de/ und schreiben Sie eine EMail mit Ihrem Account an cgg@cg.cs.tu-bs.de, damit wir Sie in die Gruppe eintragen können.

    Das Repository wird wöchentlich aktualisiert und befindet sich hier: https://git.cg.cs.tu-bs.de/CG1/WS1920

    Einige der Übungen benötigen zusätzliche Daten, die sich nicht im Repository befinden. Diese können Sie hier herunterladen.

    Für alle, die versuchen, das Projekt unter Windows zu kompilieren: Die Bildbibliothek hängt von GraphicsMagick (http://www.graphicsmagick.org/) und davon, dass gm.exe im Pfad zu finden ist!

    25.10.2019

    Ausgabe Blatt 01 / Einführung / Setup

    01.11.2019

    Q/A-Stunde

    08.11.2019

    Ausfall

    15.11.2019

    Besprechung Blatt 01 / Ausgabe Blatt 02

    22.11.2019

    Besprechung Blatt 02 / Ausgabe Blatt 03

    29.11.2019

    Besprechung Blatt 03 / Ausgabe Blatt 04

    06.12.2019

    Besprechung Blatt 04 / Ausgabe Blatt 05

    13.12.2019

    Besprechung Blatt 05 / Ausgabe Blatt 06

    20.12.2019

    Besprechung Blatt 06

    10.01.2020

    Ausgabe Blatt 07

    17.01.2020

    Besprechung Blatt 07 / Ausgabe Blatt 08

    24.01.2020

    Besprechung Blatt 08 / Ausgabe Blatt 09

    31.01.2020

    Besprechung Blatt 09

    07.02.2020

    Fragestunde

    Ray-Tracing Competition

    Gewinner der Raytracing Competition 2019
    Fabian Blömker, Nikkel Heesen und Melvin Scharke                                              Adrian Hoff, Malte Wessels, Hendrik Zajonc

    Freigegeben unter den Bedingungen der CC-BY-SA-3.0

    Die Teilnahme an der Ray-Tracing Competition ist Teil der Studienleistung

    • Präsentation am 05.02.2020 im Vorlesungsraum (IZ 160) zur Vorlesungszeit (9:45 Uhr)  
      (Zeigt Bilder, erklärt, was ihr implementiert habt und an welchem Teil der Szene man eure Erweiterung erkennen kann)
    • Folien und Source Code müssen bis 03.02.2020, 23:59 Uhr eingereicht sein
    • Gruppengröße: Einteilung wie bisher
    • Zielsetzung: Erweiterung im "Wert" von "Gruppengröße * 100" Punkten
    • Notwendig: Erreichen von "Gruppengröße * 50" Punkte
    • Mögliche Erweiterungen:
      • Baut eine komplexe, schöne Szene (bis zu 60 Punkte)
      • Neue komplexere Shader: (Punkte je nach Komplexität)
        • parallax mapping (50 Punkte)
        • nicht-photorealistisches Rendering (cel-, sketch-shading, ..., je 40 Punkte)
        • subsurface effects (80 Punkte)
      • Tiefenunschärfe, Flächen- / Volumenlichtquellen, … (je 100 Punkte)
      • MIP-Mapping, Prozedurale Texturen, Bewegungsunschärfe… (je 60 Punkte)
      • Tesselation von Geometrie, prozedurale Geometrie… (je 80 Punkte)
      • Spline Oberflächen, … (100 Punkte)
      • Globale Beleuchtung / Path Tracing (200 Punkte)
      • Portierung des Raytracers auf die GPU (CUDA/OptiX/OpenCL) (200 Punkte)
      • Und vieles mehr: Kaustiken, Multi-Spektrales Rendering, Polarisation, ...
    • Freie 3D-Modelle. Beachtet: Polygonal Tris only.

    Zusatzmaterial

    Hier findet ihr Zusatzmaterial, welches hilfreich sein könnte.

    • C++-Kompakt - Ein einfache Einführung in C++ (slides

     

    Anforderungen:

    Programmierkenntnisse empfohlen. 

    Klausur:

    • 12.02.2020: 10:30-12:00 Uhr in IZ 160 (MP 23.3)
    • 12.02.2020: 9:45-11:15 Uhr (bzw. 10:30-12:00 Uhr für  Personen, die vorher bereits eine Klausur schreiben) in IZ 160 (MP 23.3) 
    • Zugelassene Hilfsmittel:
      • Wörterbuch

    Literatur:

    • Andrew Glassner, An Introduction to Ray-Tracing, Academic Press, 1989
    • James Foley, Andries van Dam, et al., Computer Graphics : Principles and Practice, 3. Ausgabe, Addison-Wesley, 2013
    • Andrew Glassner, Principles of Digital Image Synthesis, 2 Bände, Morgan Kaufman, 1996
    • Alan Watt, 3D Computer Graphics, Addison-Wesley, 1999
    • Peter Shirley, Realistic Ray-Tracing, 2.Ausgabe, AK Peters, 2003
    • Frank Nielsen, Visual Computing, Charles River Media, 2005
    • Matt Pharr und Greg Humphreys, Physically Based Rendering, 3. Ausgabe, Morgan Kaufmann, 2016
    • Steven J. Gortler, Foundations of 3D Computer Graphics, Mit Press, 2012