IT-Universitetet i København
 
  Tilbage Kursusoversigt
Kursusbeskrivelse
Kursusnavn (dansk):Graphics Programming 
Kursusnavn (engelsk):Graphics Programming 
Semester:Forår 2017 
Udbydes under:cand.it., spil (games) 
Omfang i ECTS:7,50 
Kursussprog:Engelsk 
Kursushjemmeside:https://learnit.itu.dk 
Min. antal deltagere:15 
Forventet antal deltagere:
Maks. antal deltagere:40 
Formelle forudsætninger:Students must have experience with and be comfortable with programming, and be capable of independently implementing algorithms from descriptions in pseudocode. This corresponds to at least having passed an intermediate-level programming course. The course will contain compulsory programming assignments.
High school level A (or equivalent) in mathematics is also required.
Moreover the student must always meet the admission requirements of the IT University. 
Læringsmål:After the course, the student should be able to:
• Outline the software and hardware architecture of WebGL

• Implement interactive graphics using JavaScript and WebGL
• 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 graphics
• Describe advanced rendering techniques such as shadow maps, deferred shading, 
Fagligt indhold:Changes to the course description can occur until semester start

This course provides a solid foundation in graphics programming at the implementation level. This is achieved by having the student implement the major components of a traditional projective rendering pipeline in JavaScript, such as:

- modeling and viewing transformations
- perspective projection
- shader programming
- 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 choosing. Example topics might include:

- parameterized surfaces
- physical simulation
- particle systems
- voxel rendering 
Læringsaktiviteter:

1) Eight weeks of foundational study in which text and online sources provide the background for in-depth programming assignments.

2) Six weeks of supervised project work including introductions to advanced topics.

Besides traditional lectures the class will also include class-based discussions and small quizzes to make the students reflect about the topics.
Weekly exercises are not handed in, but their solutions are published after one week.
Both the weekly exercises and the final project are solved individually. 

Obligatoriske aktivititer:None


Be aware: The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt. 
Eksamensform og -beskrivelse:D22: Aflevering med mundtlig eksamen suppleret af aflevering., (7-scale, external exam)

D22: Hand-in with following oral exam supplemented by the hand-in., (7-scale, external exam)
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.  

Litteratur udover forskningsartikler:Interactive Computer Graphics with WebGL: Global Edition,

Edward Angel, Dave Shreiner

Published 2014, 7th edition

Pearson Education Limited / ISBN 9781292019345