Skolan för
och kommunikation
KTH / CSC / Kurser / DH2323 / dgi13

Datorgrafik med interaktion, dgi13

Computer Graphics with Interaction (main page)

Computer Graphics with Interaction, dgi13


Computer Graphics is one of the most dynamic and rapidly evolving fields of computer science. With roots in computer aided design (see Ivan Sutherland's 'Sketchpad'), video games (some history) and the special effects industry for movies, computer graphics has become an indespenable tool in many areas, including entertainment, education and science, allowing us to investigate, sometimes create, but always to ponder perspectives that are otherwise currently closed to our direct experience. In fact, the technologies that computer graphics is fundamental to have progressed so much that, in some cases, it is becoming difficult to tell the difference between the real and the synthetic.

This course will teach you the fundamental techniques and underlying principles of computer graphics and interaction. We will start from a high abstraction level and look at the core processes underlying image generation. We will proceed to derive different mathematical models for describing this process based on different approximations of the underlying physical process. During the course you will implement some different interactive graphics techniques, noting the benefits and drawbacks of each approach.

In order to be able to successfully participate in the course you will need to do quite a lot of programming. However, this is not a programming course: we will assume that you are capable of using C and C++ as a tool and that you are capable of finding information regarding this on your own. If you wish to do some study to prepare for the course, making sure that you are proficient in C/C++ would be a good idea. We will provide a lecture detailing the development environment for the labs and aim to highlight some the important programming concepts necessary.

A less technically-oriented assessment route, focussing on demonstrated knowledge of state-of-the-art compupter graphics techniques, will also be provided for those who do not wish to engage in a lot of low level C/C++ programming issues.


  • Describe and analyse the physical process generating an image
  • Describe the image synthesis pipeline in a modern computer
  • Derive the mathematical foundation and investigate the implemention of a ray-tracer 
  • Implement an image pipeline based on rasterised graphics
  • Recognise the key challenges faced in modern interactive computer graphics

Course Literature

The lectures in this course will use the book Interactive Computer Graphics, A top-down approach with OpenGL (Sixth Edition) as a reference. However, given the huge amount of information available about these subjects on the Internet, buying a course book is not strictly necessary. If you are willing to spend some time looking around the Internet, you will eventually find everything that is necessary and you will also improve your search abilities - a vital skill in the Information Age! A book can be great as a starting source of information and reference.


Date Topic Slides

20 March 13:00-15:00 D2

Introduction to Course


25 March 08:00-10:00 D2

**Not taking place: Moved to 27 March

27 March 13:00-15:00 B3

Programming - C/C++ brush-up


08 April 08:00-10:00 B2

Raytracing and Image Synthesis


10 April 13:00-15:00 D2

Mathematics for Computer Graphics


15 April 08:00-10:00 B2

Lighting and Shading


17 April 13:00-15:00 D2

Guest Lecture: Carl Henrik Ek


22 April 08:00-10:00 D2

Global Illumination


24 April 13:00-15:00 B3

Rasterised Rendering 1


29 April 08:00-10:00 D2

Guest Lecture: Mikael Kalms, DICE Stockholm


06 May 08:00-10:00 D2

Rasterised Rendering 2


08 May 13:00-15:00 D2

Animation and Image Based Rendering


15 May 13:00-15:00 B3

Guest Lecture: Mario Romero

20 May 14:00-15:00 E35
Exam Q&A session pdf

24 May 14:00-18:00 L21, L31, L41, L43, L44

Exam (similar format to previous exam available here)


The course will be examined through a written exam worth 3hp and three practical assignments worth an additional 3hp. The assignment should be performed in groups of two but each one of you should be capable of describe the work. Passing the assignments and the exam will give you the grades (E to C). In order to achieve a grade of A or B you will have to do an individual project.

Unlike last year, all lab work will be submitted together near the end of the course. You can obtain feedback and help in the physical labs.

Clarification: completing an individual project does not guarantee you a grade A or B - overall grades are based on your lab work and written exam in addition to the individual project.


03/06/2013 Individual project meeting: slides uploaded to project section.
20/05/2013 Exan revision notes added for exam Q&A session.
15/05/2013 Exam Q&A session added to schedule (20/05/2013, 14:00-15:00 in E35).
13/05/2013 Lab submission can now be conducted through Bilda here, under 'Event -> Assignments -> DH2323 DGI13 Lab assignment submission'. The system will close at 23:59 on 16/05/2013.
06/05/2013 Last year's exam is available here. This year's exam will follow a similar format. Note that in this year's exam, there will be no bonus question - you will be required to answer 4 out of a choice of 5 questions.
Some extra details about lab documentation have also been added to the 'labs' section.
05/05/2013 Reminder: lab session tomorrow, Monday 6th May 2013, CSC Plan 4: 'Brun' lab @ 10 a.m.
30/04/2013 Lab 3 now online. Also remember there is a lab session this Thursday 2nd May 2013, CSC Plan 4: 'Gul' lab @ 1 p.m.
24/04/2013 SIGRAD 2013 graphics and interaction conference taking place at Norrköping. Contact me soon if you would like help to submit a short 4 page paper! (the deadline is 5th May)
22/04/2013 Physical labs (voluntary attendance) will take place at the following locations and dates:
10 a.m., 23rd April 2013, CSC Plan 4: 'Brun' lab
1 p.m., 2nd May 2013, CSC Plan 4: 'Gul' lab
10 a.m., 6th May 2013, CSC Plan 4: 'Brun' lab
22/04/2013 Update to schedule: Guest Lecture 2 will now be prestented by Mikael Kalms, DICE Stockholm on 29th April, 08:00-10:00 D2
19/04/2013 Lab 2 for theory route now available (see 'Labs' section).
16/04/2013 Lab 2 available (see 'Labs' section).
14/04/2013 Updated information on labs and individual projects (including a new less technically-oriented route for labs/assessment).
21/03/2013 Webpage moved to CSC website and updated
Note: 25 March lecture not taking place: Moved to 27 March 13:00-15:00 B3
19/02/2013 Initial webpage online (@KTH Social)

Copyright © Sidansvarig: Christopher Peters <>
Uppdaterad 2013-06-03