Computer Graphics 1

This course provides the theoretical and practical foundations for computer graphics. It gives a wide overview of topics, techniques, and approaches used in various aspects of computer graphics with a focus on image synthesis and rendering, including texturing, shading, aliasing, sampling, and many more. After introducing the two basic algorithms for image synthesis, ray tracing and rasterization, it discusses the physical foundations of ray tracing in greater depth. As part of the practical exercises, the students incrementally build their own ray tracing system, which they will then use to generate a high-quality rendering for the end-of-term rendering competition.

Instructors

Teaching Assistants

Tutors

Language

English

Pre-requisites

  • Programming experience with C++
  • Basic knowledge of linear algebra and analysis

Registration

Register for the course via the LSF online system.

Mailing List

Information relevant to the course (such as updates, corrections, etc…) will be posted on the mailing list.

  1. Students registered for the course must sign up for the mailing list.
  2. Go on the webpage: https://mail.cg.uni-saarland.de/mailman/listinfo/cg1
  3. Provide your name and student e-mail address (it ends with stud.uni-saarland.de).
  4. Press the subscribe button.
  5. You will receive a message with a confirmation of the subscription.

In order to send a mail to the mailing list, use the following address: cg1 at cg.uni-saarland.de. You can ask or answer questions about the course or the assignments on this mailing list.

Date & Time

Lectures

Monday 14:00 - 16:00
Wednesday 10:00 - 12:00

Location: E1 3, HS 1

Tutorials

Tuesday 12:00 - 14:00
Wednesday 14:00 - 16:00
Thursday 12:00 - 14:00

Location: E1 1, CG Chair, Room E 09

Assignments

The assignments will be posted under the course schedule. They include a mix of theoretical and programming exercises.

The paper copies for the theoretical parts of the assignments will be collected at the beginning of the lecture on the due date. The programming parts must instead be sent by email to your respective tutors. You can also send the scans of your paper copy by mail to your tutor if your are unable to attend the lecture.

The code submitted for the programming part of the assignments is required to reproduce the provided reference images, and the submission ought to include the mandatory generated images. The submission should also contain a creative image show-casing all extra-credit features that have been implemented.

The projects are expected to compile and work out of the box on the machines in the CIP-pool students’ lab in order to give the tutors a guaranty that the code will run on machines that both them and the students have access to.

Exams

Mid-Term exam: Thursday, 14 December 2017, 8.00 - 10.00, HS 002

Mid-term re-exam: Wednesday, 3 January 2018, 14.00 - 15.30, E1 1, CG-Chair, Room E 18

Final exam: Friday, 16 February 2018, 9.00 - 12.00, HS 002

Final re-exam: Friday, 9 March 2018, 9.00 - 12.00, HS 003

Grading

10% Rendering Competition
20% Mid-term exam (results, minimum 45% to pass)
30% Assignments
40% Final exam (results, re-exam, minimum 45% to pass)

Student id Mid-term Assignments RC Final Total Grade
253372751%101%70%52%68.25%3.0
254273453%93%65%54%66.47%3.0
254313879%101%70%82%85.80%1.7
254391961%93%65%49%66.36%3.0
254471995%110%110%86%97.32%1.0
254502160%82%95%55%68.08%3.0
254847185%87%105%64%79.14%2.3
254857065%87%105%41%66.09%5.0
255071164%97%31%0%45.08%5.0
255339466%96%50%51%67.70%3.0
255410245%96%50%38%58.15%5.0
255616985%94%90%58%77.54%2.3
255618480%94%90%75%83.30%2.0
255761448%80%95%20%50.79%5.0
255859576%101%50%70%78.57%2.3
255953461%96%70%65%73.82%2.7
256079860%97%31%58%67.43%3.0
256088690%101%50%62%77.94%2.3
256378379%99%50%55%72.49%2.7
256410968%80%100%75%77.36%2.3
256422045%99%40%46%61.19%3.3
256625873%76%100%61%71.63%2.7
256627068%99%70%83%83.43%2.0
256663163%105%120%59%79.58%2.3
256708295%111%120%82%97.18%1.0
256744566%76%50%56%63.37%3.3
256749273%112%80%75%86.00%1.7
256772791%112%80%75%90.04%1.3
257133869%88%85%65%74.76%2.7
257145645%108%65%47%66.68%3.0
257154785%108%65%89%91.29%1.3
257159260%105%120%49%75.14%2.3
257168874%86%40%75%74.31%2.7

Course Schedule

Date Instructor Topic Slides Assignments
23/10/2017 Slusallek Introduction pdf  
25/10/2017 Slusallek Introduction to Ray Tracing pdf  
30/10/2017   No lecture    
01/11/2017   Holiday    
06/11/2017 Slusallek Spatial Index Structures pdf  
08/11/2017 Slusallek Spatial Index Structures   pdf zip
13/11/2017 Lemme Transformations pdf pdf zip
15/11/2017 Lemme Camera Transformation pdf pdf zip
20/11/2017 Pérard-Gayot Light Transport pdf  
22/11/2017 Pérard-Gayot Material Models pdf  
27/11/2017 Slusallek Texturing pdf pdf zip
29/11/2017 Pérard-Gayot Texturing and Texture Filtering pdf  
04/12/2017 Slusallek Spectral Analysis and Sampling Theory pdf pdf pdf zip
06/12/2017   cancelled    
11/12/2017 Pérard-Gayot Distribution Ray Tracing pdf  
13/12/2017 Pérard-Gayot Splines pdf  
18/12/2017 Slusallek Human Vision System pdf  
20/12/2017 Slusallek Color pdf pdf zip
03/01/2018 Slusallek Color and HDR Imaging pdf  
08/01/2018   Perspektivenvorlesung   pdf zip
10/01/2018 Slusallek Rasterization pdf  
15/01/2018 Lemme Clipping pdf  
17/01/2018 Slusallek OpenGL pdf  
22/01/2018 Lemme GLSL pdf  
24/01/2018 Slusallek Volume Rendering pdf  
29/01/2018 Lemme Advanced Rasterization (Shadows, AO, etc.)    
31/01/2018 Slusallek Wrap-Up    

Rendering Competition

Rendering Competition is a final showcase of how the ray tracing engine that was developed throughout the course can be used to render interesting images.

The competition rules can be found here: pdf

Every submission will be graded based by its artistic merit.

Perspective change Broken Objects Looking down the rabbit hole UNTITLED ROOM LOST IN SPACE Plain Dreaming Pick Sliding Camping with a Friend ART GALLERY The Breathing Lake Flush! Goddesses taking Spring-bath MORNING WORKOUT Praise the Holy Grail (and the Holy Water) My place in the sky have a coffee, refresh yourself Crossroads Sailing In The Sea of Mushrooms... Reverie (Träumerei) The Return Still life

Literature

The course does not follow a particular book, but suggested readings include:

  • Matt Pharr and Greg Humphreys, Physically Based Rendering, 3rd Edition, Morgan Kaufmann, 2016
  • Peter Shirley, Fundamentals of Computer Graphics, 4th Edition, AK Peters, 2015
  • John Hughes et al., Computer Graphics: Principles and Practice, 3rd Edition, Addison-Wesley, 2013

Some articles on acceleration structures:

Possible Follow-Ups

SoPra, HiWi-Jobs, Diploma, Bachelor and Master’s Thesis