Bachelor of Game Programming - BSP

Short description

Game programming is a broad field of study where the skills required are relevant to many industries. Game programmers must have a broad understanding of computer programming and technology. The skills required range from understanding real-time graphics techniques to AI and computer architecture. Computer games drive the development of new technology, and push computing devices to their limit. Computer game programmers have to understand how to get the most out of limited hardware, such as mobile phones, to create enjoyable experiences.

Computer programming students at GUC have long been among the country's leader in developing software. This has led to GUC students, based on their bachelor projects, winning the prestigious Rosing Prize three times since 2002. Businesses regularly request and employ our software development graduates. Based on the continued growth in the game industry, and the requests for skills development and the great interest for advanced graphics and animation for various applications, GUC has established a separate 3-year bachelor degree in game programming.

After graduation, you have a solid educational programming that provides access to jobs in gaming companies, software engineering and the entertainment industry. The program also provides a good basis to meet the needs that businesses have in: Systems for e-learning, visualization, simulation, interactive web applications and graphics-based computer systems. This provides a good opportunity to obtain an evolving and exciting job within the area, and within other industries in need of skilled programmers.


The program is a 3-year undergraduate computer education that provides 180 study points spread over six semesters. Upon completion you are awarded a degree Bachelor in Game Programming. This program is eligible for admission to IT-related master's programs in Norway and abroad.

Expected learning outcomes

After completing the study you will be qualified to work with the development and maintenance of various types of software. In particular, you will have the ability to work systematically and analytically with the development of advanced graphics, artificial intelligence and interaction. The emphasis is on giving you a solid computer science foundation, while focused on creating attitudes of a professional life characterized by continuous learning within a rapidly changing subject.

In your final semester you will develop a game as part of the Bachelor's thesis. This project will form a critical part of your portfolio. The project will also have input from professional game developers, and the results will be reviewed by industry partners. This capstone project will help integrate all the subjects that you have been studying and provide vital group work experience.


Students can go abroad in semester 4 provided that they find a study program containing Operating Systems and Software Engineering. Contact the international office at GUC student administration for specific information, help and advice. As many of the course are taught in English the program is also very well suited to continuing your studies at the Masters level aboard.

Target Group

There is no requirement for particular computer skills before the course starts. Of course, the program assumes that students are interested in computer games and fascinated with how they are made. This course is designed to engage any student who meets the admission requirements and are motivated to immerse themselves in this exciting and competitive field.

Students from high school are the primary target group, but the program is also suitable for those who after some years of working have become interested in the development of graphics and interactivity.

Admission Criteria

Admission to the program is general admission plus R1/S2 (2MX) or real competence. If you do not have the required mathematics background, you can apply under the condition that you take the summer courses (R1) in mathematics offered by the university college, which starts a few weeks before the ordinary studies.

Course Structure

As a student in the Bachelor's degree in game programming, you will gain general computer science skills, which characterizes any skilled programmer. It is important to have a comprehensive understanding of the computer environment a game works within, from understanding the hardware and data networks to end users and game experience. The program is built up with elements of both basic computer science courses and games specific topics. The last part of the program heavily specialises in games programming.

The program will therefore have a particular focus on:

  • Programming: Basics and language-independent skills in structured and object-oriented programming.
  • Graphics: Theory and techniques in 2D and 3D graphics and modeling.
  • AI: Understanding how computers control agents in virtual worlds.

Many course use projects to embed theory in practical implementation. The program ends with a major game development project (bachelor thesis) which can be in association with industry or can be used as the basis for forming a new company. The college offers modern laboratories tailored to the needs of the individual topics. You will engage with lecturers from around the world in this highly skilled professional community. In addition, you will be involved in research activities under the direction of the department's professors. You will experience an inspiring and active study environment with students from various IT and media programs.

Some topics are shared with Computer Science and Engineering. This includes topics such as Computer Architecture and Operating Systems, which provides understanding of the underlying technological platform of different systems. Programming skills are built up gradually throughout the study in the topics Basic programming, Object-oriented programming and algorithmic methods courses. Other topics are game specific including Game Design, Mathematics for game programming, Graphics Programming, Game Programming and Artificial Intelligence.

20 credits are elective courses. Students will also be able to choose among a wide range of science topics from other IMT studies.

Table of subjects

Bachelor of Science in Game Engineering, 1st year 2010/2011

Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT1361 Game Design C 10          
REA1101 Mathematics for computer science C 10          
IMT1031 Fundamental Programming C 10          
IMT1082 Object-Oriented Programming C   10        
IMT2431 Data Communication and Network Security C   10        
REA2061 Mathematics for Game Programming C   10        
Sum: 30 30 0 0 0 0
*) C - Compulsory course, E - Elective course

Bachelor of Science in Game Engineering, 2nd year 2011/2012

Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT2272 Computer Architecture Fundamentals C     10      
IMT2531 Graphics Programming C     10      
IMT2021 Algorithmic Methods C     10      
IMT2243 Software Engineering C       10    
IMT2282 Operating Systems C       10    
IMT3591 Artificial Intelligence C       10    
Sum: 0 0 30 30 0 0
*) C - Compulsory course, E - Elective course

Bachelor of Science in Game Engineering, 3rd year 2012/2013

Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S) S3(A) S4(S) S5(A) S6(S)
IMT2571 Data Modelling and Database Systems C         10  
IMT3601 Game Programming C         10  
Elective course, 10 ECTS E         10  
Elective course, 10 ECTS E           10
IMT3912 Bachelor's thesis C           20
Sum: 0 0 0 0 30 30
*) C - Compulsory course, E - Elective course


Coursecode Course name C/E *) ECTS each. semester
  S1(A) S2(S)
IMT2471 Modelling in 3D E 10  
IMT3102 Object-Oriented Software Development E 10  
IMT3281 Software Development E 10  
IMT2291 Web Technology E   10
IMT3511 Discrete Mathematics E   10
IMT3611 GPU Programming E   10
Sum: 0 0
*) C - Compulsory course, E - Elective course