Objectives
Computer graphics methods are essential for many areas, such as visual effects in movies, computer games, scientific and information visualization, and many others. In this course, participants will learn basic computer graphics techniques, and will understand the general concepts behind real-time and photo-realistic rendering. Besides the fundamental principles, this course will also provide a glance on modern approaches in computer graphics and visualization. A sufficient introduction into WebGL, GPU shader programming in CUDA, and visualization libraries, such as the Visualization Toolkit (VTK) are parts of the hands-on component (lab) of this class.

Subject
Transformations and projections, raster algorithms and depth handling, local and global shading and illumination, texture mapping basics, advanced texture mapping & graphics pipelines and scene graphs, raytracing and radiosity, volume rendering, scientific data visualization, curves and surfaces, basics of animation, introduction into graphics programming concepts such as WebGL, CUDA, and Visualization Toolkit (VTK).

Criteria for Evaluation
Lecture: Written exam, Lab: Group project submission plus individual interviews

Selected Readings

1) Fundamentals of Computer Graphics, Peter Shirley and Steve Marschner, CRC Press
2) Transformations and Projections in Computer Graphics, David Salomon, Springer
3) Radiosity and Realistic Image Synthesis, Hanrahan and Greenberg, Morgan Kaufmann
4) Real-Time Rendering, Akenine-Möller, Haines, and Hoffman, CRC Press
5) Information Visualization: Perception for Design, Colin Ware, Morgan Kaufmann
6) Information Visualization: Design for Interaction, Robert Spence, Prentice Hall
7) Real-Time Shading, Marc Olano, John Hart, and Wolfgang Heidrich, Peters, Wellesley
8) Data Visualization: Principle and Practice, Alexandru C. Thela, CRC Press

Format
Hybrid + Recordings (HS18, Zoom-Link, pwd: 1234)