STE6245 Advanced Game and Simulator Programming - 10 stp
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.
On completion of the course, the successful student is expected to have the following:
- 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).
- 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).
- 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).
Lectures Spring 2019
f.aman. Rune Dalmo