Computer Graphics

Postgraduate course

Course description

Objectives and Content

The course introduces the basic concepts of computer graphics. It provides the necessary theoretical background and demonstrates the application of computer science to graphics. The course further allows students to develop programming skills in computer graphics through programming assignments.

The course covers fundamental topics such as graphics representations and transformations, the viewing pipeline, visibility, lighting, and textures, as well as more advanced areas such as ray tracing and global illumination.

Learning Outcomes

On completion of the course the student should have the following learning outcomes defined in terms of knowledge, skills and general competence:

The student

  • understands the core concepts and mathematical foundations of computer graphics
  • knows fundamental computer graphics algorithms and data structures
  • has an overview of different modeling approaches and methods
  • has detailed knowledge about basic shading and texture mapping techniques
  • understands light interaction with 3D scenes

The student

  • can use modeling software to create basic 3D scenes
  • can apply basic mathematics in the development of graphics applications
  • is able to design and develop interactive 3D programs using WebGL
  • can develop software for modern graphics hardware

General competence
The student

  • is able to analyze, disseminate, and communicate visual computing solutions
  • can organize and structure problem solving approaches in a team environment



ECTS Credits


Level of Study


Semester of Instruction

Required Previous Knowledge
INF100 and INF101 (or a comparable education); MAT101 (or MAT111, or any other comparable course).
Recommended Previous Knowledge
INF250. INF251 builds on INF102. A solid background in (object-oriented) programming, comprised of both knowledge and practical experience, is required.
Credit Reduction due to Course Overlap
I291: 10 ECTS, INF211: 10 ECTS
Access to the Course
Access to the course requires admission to a programme of study at The Faculty of Mathematics and Natural Sciences
Teaching and learning methods
The course is built upon lectures, programming tutorials and programming assignments, as well as exercises. On average, students will meet up for lectures, tutorials, and exercises for 5 hours per week.
Compulsory Assignments and Attendance
The exercises must be attended. The programming assignments will be evaluated and must be passed. An exam (about the content of the lectures) needs to be passed, as well. Compulsory assignments are valid two semesters, the semester of the approval and the following semester.
Forms of Assessment
Portfolio assessment. The portfolio consists of hand-ins and 3 hours written on-campus-exam. On-campus-exams and hand-ins must be passed. The weighting is announced on MittUiB at the start of the semester.
Grading Scale
The grading scale used is A to F. Grade A is the highest passing grade in the grading scale, grade F is a fail.
Assessment Semester
Examination both spring semester and autumn semester. In semesters without teaching the examination will be arranged at the beginning of the semester.
Reading List
The reading list will be available within July 1st for the autumn semester and December 1st for the spring semester
Course Evaluation
The course will be evaluated by the students in accordance with the quality assurance system at UiB and the department.
Examination Support Material
Non-programmable calculator, according to the faculty regulations
Programme Committee
The Programme Committee is responsible for the content, structure and quality of the study programme and courses.
Course Coordinator
Course coordinator and administrative contact person can be found on Mitt UiB, or contact
Course Administrator
The Faculty of Mathematics and Natural Sciences represented by the Department of Informatics is the course administrator for the course and study programme.