AbstractStudents attending this course will be able to implement core algorithms of Computer Graphics.
Computer graphics is used to visualise data in video games, virtual & augmented reality, simulations, and many other areas, like medicine and data visualisation. This course provides an overview over the most important concepts of 3D computer graphics. It includes an introduction to both rasterized and ray-traced graphics.
Students will implement the major components of a traditional projective rendering pipeline:
- model and viewing transformations
- perspective projection
- clipping, culling and rasterization
- reflection models
- programmable shaders
- texture mapping
- bump mapping
- environment mapping
- shadow mapping
- deferred shading
In addition, the student will be supervised in the acquisition of specialized knowledge in the graphics-programming area of their choice. Example topics include:
- parameterized surfaces
- physically based rendering
- particle systems
- voxel rendering
Students need to have good programming ability and a foundational understanding of discrete mathematics and linear algebra, especially vector and matrix operations.
Intended learning outcomes
After the course, the student should be able to:
- Implement interactive graphics using OpenGL
- Outline and describe the steps in the rasterization pipeline
- Describe the main differences between rasterization and ray-tracing
- Describe light/material interaction and how it relates to lighting model
- Program GLSL shaders for the lighting and other effects
- Use linear algebra to perform the transformations between coordinate spaces in the graphics pipeline
- Implement applications with geometry, textures, shaders, and lights
- Explain the math and theory behind virtual cameras in computer graphics
- Implement and explain advanced rendering techniques such as shadow mapping and deferred shading.
Foundational study in which text and online resources provide the background for in-depth programming assignments. Classes will also include supervised project work and introductions to advanced computer graphics topics.
Weekly exercises are not handed in but their solutions are published after one week.
The final project is developed individually.
The course literature is published in the course page in LearnIT.
Student Activity BudgetEstimated distribution of learning activities for the typical student
- Preparation for lectures and exercises: 18%
- Lectures: 14%
- Exercises: 33%
- Project work, supervision included: 25%
- Exam with preparation: 10%
Ordinary examExam type:
D: Submission of written work with following oral, External (7-point scale)
D22: Submission with following oral exam supplemented by the submission.
Submission of an individual project including source code, binaries (if any) and a short report describing the implementation details and the theory used.
The exam will cover both the curriculum as well a project.
Time and dateOrdinary Exam - submission Fri, 3 Jun 2022, 08:00 - 14:00
Ordinary Exam Mon, 13 Jun 2022, 09:00 - 21:00
Ordinary Exam Tue, 14 Jun 2022, 09:00 - 21:00
Reexam - submission Wed, 27 Jul 2022, 08:00 - 14:00