News

Apr, 2018: We got invited by KUKA to showcase our demo at the European Robotics Forum 2018 in Tampere, Finland

Feb, 2018: The House of Science, Bremen hosts an exhibition about local scientists and science projects with collaborators around the world. One of the featured exhibits is a demo of our Autonomous Surgical Lamps, developed by Jörn Teuber of the Computer Graphics and Virtual Reality group. The exhibition will be open until the 21st of April (photos).

Feb, 2018: The University of Bremen participates in the opening of a research laboratory in Bangkok.

Nov, 2017: 2017 VRST Best Poster Award Winner. Michael Bonfert, Melina Cahnbley, Inga Lehne, Ralf Morawe, Gabriel Zachmann and Johannes Schöning are winning the award for the poster titled "Augmented Invaders: A Mixed Reality Multiplayer Outdoor Game."

Nov, 2017: Organizers of the French VR conference and trade show Laval Virtual immersed themselves into a variety of different virtual environments where they learned about current projects of the Computer Graphics & Virtual Reality lab at the University of Bremen (full report, in German).

Sep, 2017: Founding Everyday Activity Science and Engineering (EASE). EASE is a interdisciplinary research center at the University of Bremen that investigates everyday activity science & engineering. For more Information click here.

Jun 17, 2017: Haptic and hand tracking demos at the Open Campus 2017.

Feb-Apr 2017: David Vilela (Mechanical Engineering Laboratory, University of Coruna, Spain) visited our lab. He is working on benchmarks to compare different intersection calculation methods in collisions, and also different force models.

Feb 2017: G. Zachmann and J. Teuber visited the Mahidol University in Bangkok, Thailand as part of a delegation from the University of Bremen. The goal of the visit was to foster the cooperation between the two universities and lay ground-work for future colaborations.

Jun 2016: Radio Bremen visited our lab to film the works of the Creative Unit "Intra-Operative Information" for a news magazine on the local TV station. Click here for the film at Radio Bremen. And Click here for the same film on our Website.

May 16, 2016: Patrick Lange was honored with the SIGSIM Best PhD Award at the ACM SIGSIM PADS Conference 2016.

Jun 19-21, 2015: G. Zachmann gives invited talk at the DAAD-Stipendiatentreffen in Bremen, Germany.

Jun 2015: Haptic and hand tracking demos at the Open Campus 2015.

Dec 08-10, 2014: ICAT-EGVE 2014 and EuroVR 2014 conferences at the University of Bremen organized by G. Zachmann.

Sep 25-26, 2014: GI VR/AR 2014 conference at the University of Bremen organized by G. Zachmann.

Sep 24-25, 2014: VRIPHYS 2014 conference at the University of Bremen organized by G. Zachmann .

Feb 4, 2014: G. Zachmann gives invited talk on Interaction Metaphors for Collaborative 3D Environments at Learntec.

Jan 2014: G. Zachmann got invited to be a Member of the Review Panel in the Human Brain Project for the Competitive Call for additional project partners

Nov 2013: Invited Talk at the "Cheffrühstück 2013"

Oct 2013: PhD thesis of Rene Weller published in the Springer Series on Touch and Haptic Systems.

Jun 2013: G. Zachmann participated in the Dagstuhl Seminar Virtual Realities (13241)

Jun 2013: Haptic and hand tracking demos at the Open Campus 2013.

Jun 2013: Invited talk at Symposium für Virtualität und Interaktion 2013 in Heidelberg by Rene Weller.

Apr 2013: Rene Weller was honored with the EuroHaptics Ph.D Award at the IEEE World Haptics Conference 2013.

Jan 2013: Talk at the graduation ceremony of the University of Bremen by Rene Weller.

Oct 2012: Invited Talk by G. Zachmann at the DLR VROOS Workshop Servicing im Weltraum -- Interaktive VR-Technologien zum On-Orbit Servicing in Oberpfaffenhofen, Munich, Germany.

Oct 2012: Daniel Mohr earned his doctorate in the field of vision-based pose estimation.

Sept 2012: G. Zachmann: Keynote Talk at ICEC 2012, 11th International Conference on Entertainment Computing.

Sep 2012: "Best Paper Award" at GI VR/AR Workshop in Düsseldorf.

Sep 2012: Rene Weller earned his doctorate in the field of collision detection.

Aug 2012: GI-VRAR-Calendar 2013 is available!

Computergraphik - WS 17/18

Diese Vorlesung soll eine Einführung in die theoretischen und methodischen Grundlagen der Computergraphik geben, als auch die Grundlagen für die praktische Implementierung von computergraphischen Systemen legen.

Der Schwerpunkt liegt auf Algorithmen und Konzepten zur Repräsentation und Visualisierung von polygonalen, 3-dimensionalen graphischen Szenen. Die Übungsaufgaben werden teils theoretisch, teils praktisch sein, wobei die praktischen Aufgaben gewisse Programmierfähigkeiten in C++ verlangen. Ich empfehle den Besuch des "Propädeutikums C/C++" vor der Computergraphik-Vorlesung. Die theoretischen Aufgaben setzen teilweise einfache Matrix-Vektor-Rechnung voraus.

Bemerkung: in der Vorlesung wird nicht die Benutzung von fertiger Software zur Modellierung, Animation, oder Bildbearbeitung (z.B. Photoshop, Blender, Maya, Cinema4D, etc.) behandelt! Wir beschäftigen uns mit den Algorithmen, die hinter diesen Programmen stecken.

Aus dem Inhalt:

  1. Gerätetechnische Grundlagen
  2. Mathematische Grundlagen
  3. OpenGL 3 and C++
  4. 2D Algorithmen der Computergraphik (Scan Conversion, Visibility Computations, etc.)
  5. Theorie der Farben und Farbräume
  6. 3D Algorithmen der Computergraphik (Rendering Pipeline, Transformationen, Beleuchtung, etc.)
  7. Techniken zum Echtzeit-Rendering
  8. Shader
  9. Texturierung

Aktuelles

Datum der Klausur: 5. März 2018, 11:00 , Raum: GW1 H0070

Folien

Die folgende Tabelle wird die behandelten Themen und die dazugehörigen Folien enthalten.

Woche Thema Folien Übungsaufgaben Frameworks
1. Organisation, Einführung, Geschichte, Raster- und Vektor-Graphik, Critical Flicker Frequency, PDF1 PDF2 Blatt1 OpenGL-"Hello World"
Sphere-Flake
2. Buffering-Varianten (double buffering, triple buffering), Synchronisation-Verfahren( VSYNC et al.), Display-Technologien, Gammakorrektur PDF
3. Feiertag (500 Jahre Reformation)
C++ CrashCourse (TicTacToe)
PDF
4. Geometrie: geometrische Bedeutung des Skalar- und Kreuzproduktes, Koordinatensysteme, Flächeninhalt von Dreieck und Polygonen, geometrische Prädikate, lineare Interpolation, Ebenen und Dreiecke.
PDF Blatt2 Vector
5. Übersicht über die Graphik-Pipeline, verschiedene Sichtweisen der Pipeline.
Einführung in OpenGL: programmable Pipeline, Shader, immediate mode versus retained mode, vertex array objects, vertex buffer objects.
PDF
6. Rasterisierung von Linien: Midpoint-Algorithmus, Span-basierter Algorithmus; Anwendung auf Raycasting zum Terrain-Rendering; scan conversion of circles. PDF Blatt3
7. Baryzentrische Koordinaten: affine Kombination, affine Abbildungen, konvexe Hülle, baryzentrische Koordinaten im Dreieck, baryzentrische Interpolation
Polygon Scan Conversion: Rasterisierung von Dreiecken, Algorithmus von Pineda, Interpolation von Farben im Dreieck, Parallelisierung (und die Pixel-Planes-Story).
Füllen nicht-einfacher Polygone, Odd-Even-Rule, Winding-Number-Rule, Triangulation
PDF1 PDF2 Blatt4 Pineda
8. Triangulation 2: ein O(n log n)-Triangulations-Algorithmus, Art Gallery Theorem, Flood Fill,
Font-Rendering: Begriffe, Outlines mittels Bezier-Kurven, Flag-Fill-Algorithmus von Ackland, Hinting.
Alpha blending.
Visibility Computations: Painter's Algorithm, Z-Buffer, Z-Fighting, Depth-of-Field, Depth Complexity & Overdraw, Hierarchischer Z-Buffer, Implementierung in Hardware, Object-Space & Image-Space-Algorithmen, BSP-Tree,
PDF1 PDF2 PDF3 Blatt5 BSP
9. Visibility Computations 2: Warnock's Algorithmus & Quadtree, Stencil buffer, Rendering planar reflections using the stencil buffer, Schatten-Rendering mittels Shadow Volumes.
Clipping: Problemstellung, Motivation für Clipping vor der Projektion.
Transformationen 1: Koordinatensysteme in der Pipeline, elementare Rotation, Skalierung, Scherung, Spiegelung,
PDF1 PDF2 PDF3
10. Concatenation, Euler-Winkel, Gimbal Lock, Rotation um beliebige Achse mittels Basiswechsel, Zerlegung einer Rotationsmatrix, Quaternionen, Darstellung und Durchführung von Rotationen mittels Quaternionen, Interpolation von Orientierungen mittels Quaternionen, virtueller Trackball, affine Abbildungen, homogene Koordinaten, Translation, Anatomie einer Matrix, starre Transformationen, Berechnung einer Rot.matrix für beliebige Achse+Winkel im Raum, Klassifikation aller Transformationen, Matrizen in OpenGL, relative/hierarchische Transformationen, Objekthierarchien und Matrix-Stack.
PDF Blatt6
11. Projektionen & Perspektive: Kamera-Transformation, orthographische Projektion, perspektivische Projektion, Eigenschaften der perspektivischen Projektion, allgemeine projektive Abbildungen, Projektion in OpenGL
Farben 1: Licht & Lichtquellen, Chromatizität, Reflectance spectrum, das Auge, Human Spectral Sensitivity, wahrgenommener Stimulus, Metamere,
PDF1 PDF2 Blatt7 Billiard Framework
12. Farben 2: Grassmann'sche Experimente und Gesetze, Linearkombination und Gleichheit von Spektren, die "Sensor-Abbildung", Farb-Basis-Wechsel, Definition des Begriffes "Farbe", Farb-Basiswechsel, CIEXYZ-Farbraum, matching curves, Chromatizitätsdiagramm, Gegenfarbenmodell, Farbmodelle RGB, CMY, HSV, Interpolation von Farben, uniforme Farbräume, CIE Lab-Farbraum, Gamut, Farbtransfer.
Lighting & Shading 1: Arten von Lichtquellen, diffuse Reflexion,
PDF1 PDF2 Blatt 8
13. Lighting & Shading 2: spiegelnde Reflexion, Phong-Beleuchtungsmodell, Blinn-Phong-Modell, BRDF's, Lafortune-Modell, Flat-/Gouraud-/Phong-Shading, Mach-Bänder, Per-Pixel-Shading,
Shader Programming: fixed-function pipeline, programmable pipeline, vertex processor, fragment processor,
PDF1 PDF2

Die Aufzeichnung der Vorlesung findet ihr am Ende des Semesters hier
Das Passwort ist "cg1718".

Literatur

Folgende Literatur eignet sich als begleitende Literatur:

Falls Sie sich diese Bücher anschaffen möchten sollten Sie vielleicht überlegen, gebrauchte Exemplare zu erwerben -- oft gibt es diese zu einem Bruchteil des Neupreises. Zwei gute Internetadressen sind Abebooks und BookButler.

Übungsbetrieb

Die Übungsblätter werden jeweils am Dienstag Abend auf der Homepage der VL (also hier) ins Netz gestellt.

Die Abgabe der Lösungen ist jeweils am Montag bzw. Dienstag eine Woche später direkt in der Vorlesung bzw. in der Übung. Theoretische Aufgaben werden schriftlich abgeliefert, praktische Aufgaben werden in der Übung am Rechner vorgeführt.

Hinweise zur Klausur

Die Klausur ist "closed book, open notes", d.h., während der Klausur sind erlaubt:

Außer diesen Dingen darf sich sonst nichts auf dem Tisch befinden, insbesondere nicht erlaubt sind:

Hier findet Ihr einige Probeklausuren. (Etliche sind auf Englisch, die richtige Klausur wird natürlich auf Deutsch sein.) Der ZIP-File ist Passwort-geschützt -- Ihr bekommt das Passwort von Eurem Tutor oder Professor.
Bitte lasst euch nicht von einer eventuell leicht abweichenden Terminologie irritieren. Es gilt in der Klausur immer die Terminologie, die ich eingeführt habe. Lasst Euch bitte auch nicht von der Fülle der Probeklausuren einschüchtern. Ihr müsst sicherlich nicht alle durchrechnen, um fit zu werden.

Online Literatur und Links zum Programmieren in C/C++ und in OpenGL

Online Literatur und Resources zu Computergraphik

Literatur und Infos, die nichts mit Computergraphik zu tun haben

Philipp Dittmann
Last modified: Sun Mar 18 23:41:54 CET 2018