GraphicsUniversiteit Utrecht  Information and Computing Sciencesacademic year 2016/17 – 4th period 


Navigation 


News 
Recent news July 17:
June 30:
June 29:
older posts will be moved here. 
Course Overview 
Course: "Graphics" is an introductory course about computer graphics. Computer graphics deals with the algorithmic processing of visual (images) and spatial (geometry) data. The course will focus on the very basics of modeling and rendering, i.e., the mathematical description of threedimensional scenes and how to create (realistic) images of such models. Rendering Algorithms: We have several
options to convert the mathematical representation of a
virtual world into a digital image. Modern games typically
rely on the zbuffer algorithm. An alternative approach is
ray tracing. In this course we will explore both methods.
Ray tracing allows us to produce 'correct' images;
rasterization lets us approximate this in realtime. Math: An important aspect of computer graphics is the use of mathematics. This course provides a short coverage of the mathematical basics needed for rendering. We will introduce fundamental concepts of linear algebra and other areas of higher mathematics that are important far beyond the field of graphics. The language for this course will be English. The official schedule for this course is
available on Osiris.
Official course information via www.cs.uu.nl.
And here is a list of participants. 
Lecture 
Lecturers:
Teaching Assistants: Lecture:
Practicals tutorial/consultation hours

Topics 



The list is intended to give a rough orientation; topics might still be subject to change, and additional aspects might be covered. 
Lecture Slides & Recommended Readings 
Below is a list of all lectures
with a very brief summary of the topics, slides downloads,
and recommended readings to prepare for the lecture. 
Midterm
Exam Tue, May 23 
Midterm Exam:
Tue May 23, 08:3010:30 in EDUCGAMMA. What to study: Slides for
lectures 17, suggested readings for these lectures,
tutorials 1, 2 and 3. You may also want to take a look at
the 2016
midterm exam. And maybe you even find the 2015
midterm exam useful. Note that this year's tutorials
are a better indication of what to expect in terms of math
questions! For this exam, you are not
allowed to bring notes. 








Final Exam Thu, June 30 
Final Exam: Thu June 29, 13:3016:30, in OLYMPOSHAL2. 
Retake Exam Thu, July 13 
Retake Exam: Thu
July 13, 13:3016:30, in EDUCBETA. 
Course Schedule 

Period 4 Schedule

Tutorials 
Overview During the course we will hand out tutorial sheets.
Assignment Sheets / Downloads
Remaining sheets will be made available during the course. 
Practicals 
PRACTICAL ASSIGNMENTS There will be three practical assignments, covering traditional rasterization algorithms, shaders and ray tracing. The first assignment will be online on Tuesday, April 25. We recommend that you start working on it right away. Practicals tutorial/consultation hours On Tuesdays, teaching assistants will be present in various rooms to help you if you have questions. These practical tutorials are offered after the lectures on Tuesdays. Please see the schedule for a list of available rooms for each week. Remarks:
Important Rules Because of the large group of students taking this lecture, we need strict rules to keep everything manageable. The most important rules are listed below. Further explanations might be given during the lecture.
Soft / Hardware and Infrastructure:
Assignments: Assignment P1: OpenTK
Tutorial




The first assignment is a
tutorial introducing basic 2D graphics, coordinate
systems, and OpenTK. OpenTK allows us to create OpenGL
applications in C#. Details for the assignment are in the
document which you can download below. Files: Deadline(s):
The second assignment is all about ray tracing. Full details are in the assignment description which you can download below. Files: Deadline(s):
For the third and final
assignment, you will be creating a small 3D engine. See
the official assignment description for details. Files: Deadline(s):

Exam & Grading 
GRADING Programming assignments: There will be three programming assignments throughout the semester. The final grading P for your programming assignments is calculated as follows: P=0.2*P1+0.4*P2+0.4*P3. P must be at least 5.0 (before rounding) to pass the course. Exams: There will be a midterm exam T1
and a final exam T2. The final grading T for your exams is
calculated as follows: T = 0.3*T1 + 0.7*T2. T must be at
least 5.0 (before rounding) to pass the course. Final grade: If both T (= the grade for
the written exams) and P (= the programming grade) are at
least 5.0, the final grade for the course is (T + P) / 2.
Your final grade must be at least 6 (after rounding) to
pass the course. RETAKES AND REQUIREMENTS If you did not pass the course but your final
grade for the course is at least 4.0 (before
rounding), you are entitled to participate in a retake.
This can either be a retake assignment or a retake
exam. Retake (exam) T3: This exam will cover all lectures and tutorials. The result from your retake exam T3 will replace the lower one of your original scores, i.e. either T1 or T2 if and only if it improves your final grade. Criteria for passing stay the same as indicated above (i.e. P and T must be at least 5.0 before rounding, and your final grade must be at least 6 after rounding). Retake (practicals): There will be one retake assignment that can replace either P1, P2, or P3 if it improves your final grade. The topic for the retake assignment is decided individually. To get your assignment and related deadlines, contact the instructor. Exceptions: Exceptions to these rules in
principle always require involvement of the study coach. Results To be released.

Literature & Links 
Textbook:
Additional resources for the practicals: Resources that might be helpful, especially for programming assignment 2 and 3:
Web references:

News Archive 
Old posts
June 24:
June 20:
June 20:
June 15:
June 13:
June 7:
June 1:
May 30:
May 29:
May 23:
May 22:
May 19:
May 17:
May 11:
May 4:
May 2:
May 1:
April 26:
April 21:
