SPI2005 Applied mathematics for computer graphics and simulation
- Course codeSPI2005
- Number of credits15
- Teaching semester2027 Autumn
- Language of instruction and examinationEnglish
- CampusHamar
- Required prerequisite knowledge
Recommended prerequisite knowledge: all courses from year one
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:
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
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
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
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.
- 2 individual practical assignments
- 1 group assignment
- Attendance in all organised activities
| Form of assessment | Grading scale | Grouping | Duration of assessment | Support materials | Proportion | Comments |
|---|---|---|---|---|---|---|
Written examination with supervision | ECTS - A-F | Individual | 6 Hour(s) | 100 |