spring 2018
STE6245 Advanced Game and Simulator Programming - 10 ECTS

Application deadline

Applicants from Nordic countries: 1 June for the autumn semester and 1 December for the spring semester. Exchange students and Fulbright students: 1 October for the spring semester and 15 April for the autumn semester.

Type of course

The course may be taken as a single subject.

Admission requirements

A relevant undergraduate bachelor Engineering programme with minimum 30 credits mathematic/statistics topics

Application Code: 9371

Prerequisite(s) Knowledge of and experience with C++ and object oriented analysis, design and programming.


Course content

The course focuses on advanced concepts and techniques necessary for development of simulator software and computer games using the C++ programming language.

The course aims at solving problems by programming with emphasis on numerical stability, type safety, multi-threading, concurrency, efficient data structures and modularization. Some fundamental C++ programming topics include:

  • Memory usage and control
  • Templates and namespaces
  • Type safe programming
  • Abstractions and inheritance through advanced use of polymorphism
  • Topological data structures
  • Responsible objects / agents
  • Modularization and distribution of work
  • Debugging, dynamic and static analysis

 

The topics of basic geometry, affine space, projective space and physically accurate simulations are encountered through the mandatory project task.


Recommended prerequisites

SMN6190 Linear Algebra 2, SMN6191 Numerical Methods, STE6274 Computer Game Design

Objectives of the course

On completion of the course, the successful student is expected to have the following:

Knowledge:

  • The candidate will have knowledge in type safe programming in C++ (K2).
  • The candidate will have special knowledge in geometry and related mathematical spaces (K3).
  • The candidate will have basic knowledge about computer graphics (K1).
  • The candidate will have knowledge about simulation and ODE-solvers (K3).
  • The candidate knows how to use and write programming libraries and APIs (K2).

Skills:

  • The candidate will work independently with software development, by analyzing sub-problems and make plans for solving them analytically (S1).
  • The candidate will be able independently to construct large and complex computer programs running on different computer architectures (S2).

General competence:

  • The candidate is influenced to maintain and develop curiosity and values such as openness, precision and the importance of separating between knowledge and opinions (GC1).
  • The candidate can write a scientific report, which clearly distinguishes the candidate¿s own contribution (GC2).


Language of instruction and examination

English

Teaching methods

The subject is a project based course that gives 10 credits. It is distributed across two semesters (at least 6 weeks of work). There will be lessons distributed across the four weeks directed by the teacher. Most of the time will still be used for the project which is described on the subject's homepage.

Assessment

Oral examination (M) - individual

Grading will be done by using A-F grading scale, F is Fail. A re-sit exam will be arranged for this course.


Recommended reading/syllabus

Curriculum: 

Announced when the course starts.Additional literature

Additional literature

The C++ Programming Language, 4th edition - Stroustrup

Programming: Principles and practices using C++, 2nd edition - Stroustrup

Error rendering component

  • About the course
  • Campus: Narvik |
  • ECTS: 10
  • Course code: STE6245
  • Tidligere år og semester for dette emnet