Course syllabus

Course-PM

Advanced Computer Graphics, DAT205/DIT226, VT20 (7.5hp)

Revised March 18th, 2020

Department of Computer Science and Engineering

Course purpose

The compulsory introductory course TDA362/DIT223 Computer Graphics was highly theoretically intensive, giving a brief introduction to a vast amount of topics within computer graphics. In this follow-up course, the students are given a chance to dig deeper into a particular subject, in which they perform a project. Compulsory seminars presents more details on a research-level for a selection of topics, e.g. ambient occlusion, hair rendering, GPGPU applications, ray tracing and global illumination, GPU-ray tracing, hard and soft shadows, real-time indirect illumination, spherical harmonics, wavelets for CG.

Schedule

For lecture times, see TimeEdit

We will soon add supervision hours (1/week) where you can join and discuss your project. 

[update:] Due to the covid crazyness, supervision is handled on-demand via slack/zoom until the pressure becomes high enough that we need a schedule. 

Contact details

Erik Sintorn 
phone: +46 729 744821 
email: (erik dot sintorn at chalmers dot se) 
office: room 4114A, floor 4, the corridor along Rännvägen, EDIT-huset 
Course assistants: Roc Ramon


Knowledge Entrance Requirements 

M.Sc. students must have taken the course TDA362/DIT223 Computer Graphics (named TDA361/DIT220 before 2017), or equivalent.

Course literature

There is no mandatory litterature in this course. 

Course design

The course begins with a number of seminars where the teacher introduces a number of advanced topics that will facilitate understanding of the research papers that will be presented by students. The remaining seminars will consist of student presentations of recent research papers. Every week, ~4 student groups will present a paper, and for each paper a group of students will be the discussion leaders. Discussion leaders will have prepared an overview of the paper for the rest of the class, and a number of questions for the class to discuss. During the whole course, students will work on individual projects which are presented to the examiner at the end of the term. 

Introductory lectures: 
The first four or five classes, the teacher will give lectures on a some theoretical basis in computer graphics that will facilitate the students understanding of the research papers that will be discussed in the following seminars. 

Presentation:
Every week ~4 student groups will present a recent research paper. A list of suggested papers to choose from will be provided on this homepage soon. The student may also choose a different paper of their choice, but it must be OK:ed by the teacher.
The student is expected to have a clear understanding of, and be able to explain to the class, the problem area and the main contributions of the paper.

Discussion:
After the presentation, the class will be divided into groups with one discussion leader in each group. The discussion leaders will have submitted a number of interesting questions to discuss. After the group discussions we will go through the questions in the full class and groups will be randomly selected to answer. 

Project
The students should perform a project of their choice. It can be a small graphics demo/game in OpenGL (with some advanced effects such as ambient occulsion, indirect illumination, advanced shadows, ...), an offline renderer (e.g. a path-tracer with some advanced additions such as depth-of-field or multiple importance sampling), or a general parallel problem implemented efficiently on the GPU (e.g., a sorting algorithm in CUDA). More suggestions and guidelines for grading are available on the Project Suggestions page.

The projects can be implemented in whatever language and framework the student prefers, but we suggest that you use C++ and OpenGL, and that you start from the code supplied with the TDA362 tutorials. 

You are expected to start working on your project immediately. There will be a short meeting with each student half-way through the course, where you will report your progress and discuss what is required for the grade you aspire to. 

Changes made since the last occasion

  • Optional homework assignments for the introductory lectures have been removed.
  • Presentations will be assessed and provide points that count toward the final grade.
  • The discussion leader role has been changed into a larger group work, where the group will create a short overview as well as some questions for discussion.

Examination form

There is no end-of-term exam. Instead, the student will collect points from the presentation and the project that will decide the final grade. Regardless of the number of points acquired all students must complete their project and presentation, and participate in their discussion leader groups, to pass the course. 

Presentation: After the presentation, the teacher will grade the presentation. A good presentation will provide 1 points.  An acceptable presentation gives no points. The presentation can be failed if the student has clearly not put any effort into their task.

Discussion leaders: Participating actively in the discussion leader group is required to pass the course. 

Project: The student shall obtain 3 points on the project to pass. More points will be awarded for more advanced projects. The final project will be presented to the teacher in a 20 minute session at the end of the course, and the number of points awarded will be decided then.

A more detailed guide to the number of points awarded for different types of projects and the number of points required for a specific grade will be published on this page when the course starts.

Learning objectives and syllabus

After completion of the course the student should be able to:

  • Describe more advanced algorithms and processes used to create computer graphics in 3D-games and movies.
  • Implement more advanced algorithms to generate real-time renderings and photo realistic renderings.

Syllabus: DAT205, DIT226

Course summary:

Date Details