Graphics Programming
Study plans 2016-2017 - IMT2531 - 10 ECTS

On the basis of

  • IMT1031 Fundamental Programming
  • REA1121 Mathematics for Programming

Expected learning outcomes

On completion of this course the students will be able to:


  • List and describe the components of the graphics pipeline.
  • Understand the mathematical foundations of computer graphics
  • Describe the process of Ray Tracing to create a image.
  • Explain the fundamental aspects of animation with respect to programming graphics.


  • Create 2D procedural animation.
  • Manipulate 3D models with loading, saving and onscreen display.
  • Create and manipulate lighting in a 3D scene
  • Use OpenGL for rendering 3D environments 
  • Ask better questions about what is required for a graphical effect 

General Competence

  • Present the solution to a defined problem orally, and answer question about the solution
  • Read and integrate academic material from various online sources
  • Improved software development ability
  • Reinforce version control and static code analysis
  • Improvement in asking quality questions


  • 3D Mathematics
  • 2D Graphics
  • Animation
  • 3D Graphics Pipeline
  • Data representation for graphics
  • Lighting and Textures
  • Vertex buffer objects and Pixel buffer objects
  • Management of graphical assets
  • Advanced surface descriptions including normal mapping
  • Ray Tracing
  • WebGL
  • Shadows and reflections

Teaching Methods


Teaching Methods (additional text)

Student will work in C++ using OpenGL and SFML/SDL, in a problem based learning approach.

Form(s) of Assessment

Home exam, 72 hours
Evaluation of Project(s)

Form(s) of Assessment (additional text)

The course will be evaluated with 40% on two internal projects and 60% on a 3-day take home exam which will conclude with an oral presentation and questions and answers.

Both parts must be passed.

Grading Scale

Alphabetical Scale, A(best) – F (fail)

External/internal examiner

Internal examiner, together with external examiner once every five years, next time in 2021.

Re-sit examination

Re-sit examination possible, in agreement with the course responsible.

Teaching Materials

Online Resources plus required text:

  • Anton's OpenGL 4 Tutorials [Kindle Edition]

with recommended texts:

  • OpenGL Programming Guide: The Official Guide to Learning OpenGL , Version 4.3 (8th Edition)
  • OpenGL superbible : comprehensive tutorial and reference , Richard S. Wright, 5th Ed.

Additional information

If there are fewer than 5 students in the course the form will change to suit the class size.