Students 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.
Students implement the major components of a traditional projective rendering pipeline:
- model and viewing transformations
- perspective projection
- Gouraud and Phong shading
- texture mapping and bump mapping
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
Intended learning outcomes
After the course, the student should be able to:
- Outline the software and hardware architecture of OpenGL
- Implement interactive graphics using OpenGL
- Describe light/material interaction and how it relates to the Phong lighting model
- Program GLSL shaders for the Phong lighting model and other effects.
- Use linear algebra to perform the transformations between coordinate spaces in the graphics pipeline
- Implement applications with scene graphs, textures, shaders, and lights
- Explain the math and theory behind virtual cameras in computer
- Describe advanced rendering techniques such as shadow maps and deferred shading.
Ordinary examExam type:
D: Submission of written work with following oral, external (7-trinsskala)
D22: Submission of written work with following oral exam supplemented by the work submitted.
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.
Oral exam: 20 min.