Computergraphik - Grundlagen WS'25/26
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
Die Übung am Freitag, den 19.12.2025 fällt aus. Das 7. Hausaufgabenblatt ist somit auch erst bis zum 09.01.2026 fällig. Wir wünschen ein frohes Fest und einen guten Rutsch ins neue Jahr!
Außerdem sind ab sofort auf dieser Seite Informationen zur Ray Tracing Competition hinzugefügt worden. Beachtet unbedingt die dazugehörigen Fristen: Anmeldung bis spätestens Mittwoch, den 17.12.2025 per E-Mail an cgg@cg.cs.tu-bs.de, sowie bei Teilnahme die Frist zum Sonntag, den 01.02.2026, um euren Source Code und Präsentationsfolien ins Git zu laden.
Aktuelle Informationen, Nice
- Das Modul kann im Master nur belegt werden, wenn dieses oder ein äquivalentes Modul noch nicht im Bachelor-Studiengang belegt wurde.
- Bitte ein eigenes Notebook zur Bearbeitung der Übungen mitbringen. Falls kein eigenes Notebook verfügbar sein sollte, schreibt uns bitte eine Mail.
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
Anmeldung
Solltet ihr unseren institutsinternen Gogs-Git-Server noch nicht genutzt haben, loggt euch einmal mit eurem y-Account ein. Dabei wird automatisch ein Account erstellt.
Bitte nutzt dann unser Online-Teilnahmeformular. Dieses findet ihr direkt auf unserer Webseite, unter Teaching > Course Enrollment.
Den Git-Account-Name (des Gogs-Git-Servers) müsst ihr nur angeben, wenn ihr noch einen alten (nicht y-Nummer) Account besitzt/nutzt.
Die Anmeldung für die Prüfung erfolgt über das Prüfungsamt.
Ort und Zeit
Vorlesung
Mittwochs, 9:45 - 11:15 Uhr in IZ 160 (MP 23.3)
Wöchentlich, beginned am 22.10.2025
Übung
Freitags, 9:45 - 11:15 Uhr in IZ 160 (MP 23.3)
Wöchentlich, beginnend am 24.10.2025
Prüfung
Mittwoch 11.2.2026, 9:45 - 11:15 Uhr, IZ 160 (eventuell 161)
Weichnachtsferien
Sonntag, 21.12.2025 - Sonntag 04.01.2026
Vorlesungen
Die Vorlesungsunterlagen sind durch ein Passwort geschützt. Das Passwort wird in der ersten Vorlesung bekannt gegeben.
Die Unterlagen aus der Veranstaltung des vergangenen Wintersemesters sind hier zu finden.
17.12.2025
Distributed Ray Tracing [PDF] [Video]
18.12.2024
Perception [PDF] [Video]
04.02.2026
Ray Tracing Competition
Übungen
Bitte ein eigenes Notebook zur Bearbeitung der Übungen mitbringen. Falls kein eigenes Notebook verfügbar sein sollte, schreibt uns bitte eine Mail.
Die Übungen werden über unseren institutsinternen Git-Server verteilt.
Solltet ihr noch keinen Git-Account an unserem Institut haben, registriert euch bitte auf https://git.cg.cs.tu-bs.de/
Benutzername: v.nachname (v: 1. Buchstabe Vorname)
E-Mail: Eure @tu-bs.de Adresse
Bitte nutzt unser neues Online-Teilnahmeformular. Dieses findet ihr direkt auf unserer Webseite, unter Teaching > Course Enrollment.
Der Git-Account-Name bezieht sich auf euren Git-Account an unserem Institut (siehe oben).
Die Anmeldung für die Prüfung erfolgt über das Prüfungsamt.
Das Repository wird wöchentlich aktualisiert und befindet sich hier: https://git.cg.cs.tu-bs.de/CG1_WS2526/Base
Für alle, die versuchen, das Projekt unter Windows zu kompilieren: Die Bildbibliothek hängt von GraphicsMagick (http://www.graphicsmagick.org/) ab und davon, dass gm.exe im Pfad zu finden ist! Wenn was nicht funktioniert, checkt diese weirde Runtime-Library.
Einige der Übungen benötigen zusätzliche Daten, die sich nicht im Repository befinden. Diese könnt ihr [hier] herunterladen.
Um den zeitlichen Rahmen der Übungstermine einzuhalten, ist die Hausaufgabenabgabe wie folgt organisiert:
- Jedes Übungsblatt wird von mehreren zufällig ausgewählten Gruppen in der Übung am Abgabetag präsentiert.
- Jede Gruppe muss zwei Übungsblätter präsentieren. Bei Nichterscheinen gibt es keine Punkte.
- Sollte der unten genannte Präsentationstermin für eure Gruppe nicht passen, meldet euch bitte mindestens eine Woche vorher bei cgg@cg.cs.tu-bs.de, damit wir den Termin rechtzeitig tauschen können.
- Für die restlichen Gruppen, die nicht präsentieren müssen, wird der letzte Commit vor 9:45 Uhr am Abgabetage zur Bepunktung herangezogen.
24.10.2025
Ausgabe Blatt 1
Reformationstag Entfall
Abgabe Blatt 1 | Ausgabe Blatt 2 | Präsentation Gruppe 2, 7, 9
Abgabe Blatt 2 | Ausgabe Blatt 3 | Präsentation Gruppe 1, 3
Abgabe Blatt 3 | Ausgabe Blatt 4 | Präsentation Gruppe 5, 9, 10
Abgabe Blatt 4 | Ausgabe Blatt 5 | Präsentation Gruppe 2, 6
Abgabe Blatt 5 | Ausgabe Blatt 6 | Präsentation Gruppe 4, 5, 8, 11
Abgabe Blatt 6 | Ausgabe Blatt 7 | Präsentation Gruppe 1, 6
Keine Übung
Abgabe Blatt 7 | Ausgabe Blatt 8 | Präsentation Gruppe 3, 4, 12
Abgabe Blatt 8 | Ausgabe Bonusblatt | Präsentation Gruppe 7, 8, 10, 11, 12
Besprechung Bonusblatt | Präsentation freiwillig
Fragestunde Klausur
Gastvortrag "Game Dev" + Fragestunde Klausur
Die Teilnahme an der Ray-Tracing Competition ist freiwillig.
- Die erfolgreiche Teilnahme an der Ray Tracing Competition zählt als Modul Praktikum Computergraphik, und wird mit 5 Credits vergütet.
- Gruppeneinteilung & Anmeldung: Schickt mir bis spätestens Mittwoch, den 17.12.2025 um 16:00 Uhr eure gewünschte Gruppeneinteilung per Mail an cgg@cg.cs.tu-bs.de. Falls nur ein Teil eurer bisherigen Gruppe teilnehmen will, steht es euch frei, euch eine neue Gruppe für die Teilnahme an der Ray Tracing Competition zu suchen. Solltet ihr selbst keine Gruppe finden, könnt ihr euch auch einzeln melden. Ich versuche dann bestmöglich, Einzelteilnehmer zu einer Gruppe zusammenzufügen. Eine Garantie, dass eine solche Gruppe geformt werden kann, gibt es nicht.
- Präsentation im Vorlesungsraum (IZ 160) am Mittwoch, den 04.02.2026, zur Vorlesungszeit (9:45 Uhr)
(Zeigt Bilder, erklärt, was ihr implementiert habt und an welchem Teil der Szene man eure Erweiterung erkennen kann) - 5-6 Minuten pro Gruppe
- Folien und Source Code sollten bis 01.02.2026, 16:00 Uhr eingereicht sein
- Zielsetzung: Erweiterung im "Wert" von "Gruppengröße * 100" Punkten
- Notwendig: Erreichen von "Gruppengröße * 75" 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)
- glow effects (40 Punkte)
- emissive shading (20 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)
- Blurry Reflections und Refractions (100 Punkte)
- Und vieles mehr: Kaustiken, Multi-Spektrales Rendering, Polarisation, ...
- Freie 3D-Modelle. Beachtet: Polygonal Tris only.
- Praktisches Nachschlagewerk Physically Based Rendering: From Theory To Implementation
Zusatzmaterial
Hier findet ihr Zusatzmaterial, das hilfreich sein könnte.
- C++-Kompakt - Ein einfache Einführung in C++ (slides)
Anforderungen
Programmierkenntnisse empfohlen.
Literatur
- Andrew Glassner, An Introduction to Ray-Tracing, Academic Press, 1989
- James Foley, Andries van Dam, et al., Computer 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 Greg Humphreys, Physically Based Rendering, 3. Ausgabe, Morgan Kaufmann, 2016
- Steven J. Gortler, Foundations of 3D Computer Graphics, Press, 2012