SPI2005 Applied mathematics for computer graphics and simulation

    • Course code
      SPI2005
    • Number of credits
      15
    • Teaching semester
      2027 Autumn
    • Language of instruction and examination
      English
    • Campus
      Hamar
    • Required prerequisite knowledge

      Recommended prerequisite knowledge: all courses from year one

Course content

This course provides students with a solid foundation in the mathematical concepts most relevant to computer graphics, simulation, and game technology. Topics include vector spaces, basis, orthogonality, norms and metrics, and the use of 2D, 3D, and 4D vectors in geometric modelling. Students will learn about normal vectors and plane equations, matrix algebra (multiplication, transpose, inversion), and the solution of linear equations. The course further covers systems of differential equations, eigenvalues and eigenvectors, and their role in dynamic systems. Geometric transformations and homogeneous coordinates are introduced for scaling, rotation, and translation in space. Students will also gain insight into probability theory, combinatorics, and probability distributions as tools for modelling uncertainty. Finally, the course introduces complex numbers and their applications in mathematical problem-solving.

Emphasis is placed on practical application of mathematical tools in engineering and computer science contexts, particularly for graphics, simulation, and game development.

Learning outcome

Upon passing the course, students have achieved the following learning outcomes:

Knowledge

The student

  • can explain core mathematical concepts relevant to computer graphics and simulation, including vectors, matrices, transformations, probability, and complex numbers
  • is familiar with probability theory, combinatorics, and probability distributions as tools for modelling randomness, AI behavior, and uncertainty in game
  • understands the use of complex numbers in game-related mathematical problem-solving, such as rotations and signal processing
  • has a solid understanding of vector spaces, bases, orthogonality, norms, and metrics, and their role in modelling positions, movements, and transformations in games
  • understands the use of 2D, 3D, and 4D vectors, normal vectors, and plane equations for computer graphics, physics simulations, and collision detection in games
Skills

The student

  • can apply vector and matrix operations to implement geometric transformations, movement, and collision detection in games
  • can compute normal vectors, plane equations, and geometric transformations using homogeneous coordinates to model 3D environments and animations
  • can use complex numbers to solve game development problems such as rotations, oscillations, and wave-based phenomena
  • can apply probability theory and distributions to implement randomized game mechanics, AI decision-making, and procedural generation
  • can solve systems of linear equations and assess solution methods for efficiency and stability in game simulations
General competence

The student

  • can connect mathematical theory to practical game development challenges, including graphics, physics, and interactive systems
  • can work independently and collaboratively to solve mathematical problems in game development projects
  • can critically evaluate mathematical approaches for suitability, efficiency, and performance in real-time games
  • can communicate mathematical models, algorithms, and solutions clearly to peers and team members, both orally and in writing
  • demonstrates readiness to apply this mathematical foundation in advanced game development courses, including graphics programming, simulation, and game engine design
Working and teaching methods

The students work both individually and in groups to solve given assignments that connect theory to practice. Teaching is primarily conducted through in-class lectures combined with presented reading material, ensuring that key mathematical concepts are introduced and discussed interactively. Learning takes place mainly through classroom activities, both individual and group-based, where students apply theoretical knowledge to practical problems from graphics and games.

Each topic is supported by study materials such as texts, lectures, and online tutorials, along with minor assignments to be completed through self-study either individually or in groups prior to class. In-class learning activities include problem-solving assignments, group discussions, critique, pitches, and workshops, all designed to reinforce understanding of mathematical tools in real applications.

Supervision is provided both individually and in groups or project teams, ensuring that each student has access to the teaching resources and guidance needed in collaborative projects and productions where “problem-based learning” is applied.

Compulsory activities
  • 2 individual practical assignments
  • 1 group assignment
  • Attendance in all organised activities
Examination
Form of assessmentGrading scaleGroupingDuration of assessmentSupport materialsProportionComments
Written examination with supervision
ECTS - A-F
Individual
6 Hour(s)
100
Faculty
Faculty for Film, TV and Games
Department
Department of Game Development - The Game School
Area of study
Matematisk-naturvitenskapelige fag/informatikk
Programme of study
Bachelor in Game Technology
Course level
Foundation courses, level I (100-LN)