Skip to main content

Mathematics for Game Programmers (3cr)

Course unit code: LUD2047

General information


Credits
3 cr
Teaching language
English
Responsible person
Anssi Gröhn, Vastuuopettaja

Objective

You are able to compute length between two points in xy -coordinate
You are able to convert degrees to radians and radians to degrees
You are able to compute coordinate points in circle when the midpoint,the radius and the angle is known
You are able to compute with negative and positive exponents
You are able to solve exponential functions
You are able to draw a vector just by looking its components
You are able to identify vector components from a drawn vector
You are able to compute length of a vector
You are able to determine direction of a vector
You are able to compute dot product of two vectors
You are able to compute cross product of two vectors
You are able to compute angle between two vectors
You are able to compute scalar projection
You are able to compute vector projection
You are able to identify size of a matrix and squareness
You are able to compare matrix equality
You are able to perform addition of matrices
You are able to negate a matrix
You are able to perform subtraction of matrices
You are able to transpose a matrix
You are able to determine whether a matrix is symmetric
You are able ot multiply a matrix with scalar value
You are able to identify which matrix multiplication operations are valid
You are able to multiply a matrix with another matrix
You are able to multiply matrices and vectors
You are able to calculate determinant of a matrix
You are able to determine if matrix is invertible
You are able to calculate inverse of a matrix
You are able to calculate whether two spheres collide, if you are given their centre points and radii.
You are able to calculate whether plane collides a sphere, if you are given plane equation and centre point and radius of a sphere.
You are able to calculate whether line or ray intersects a sphere
You are able to calculate whether two triangles intersect.
You know how intersections between rays and lines are calculated.
You understand the notion of coordinate systems.
You are able to define 3D object positions in different coordinate frames
You understand what translation means
You understand what rotation means
You understand what scaling means.
You are able to create matrices that translate, rotate and scale 3D points.
You are able to tell difference between orthographic and perspective projections
You know what is the proper transformation order in each case
You know what is a scene graph / transformation graph
You are able to explain how hierarchical transformation works
You are able to create computer programs which make computations using vector and matrix objects.
You are able to utilize Unity3D engine Math API in game programming tasks
You are able to modify game object transforms in Unity3D projects
You are able to compute distance between two game objects in 3D space
You are able to compute direction vector from one game object to another in 2D space
You are able to position a Unity3D game object to desired location in 3D space using C# code
You are able to move a game object appropriate step further using time step information and velocity vector.

Content

Trigonometric functions
Vectors
Matrices
3D coordinate systems
Unity 3D engine Math API
Applications of trigonometry in Unity3D engine
Application of matrices and vectors in Unity3D engine
Rotation, translation, scaling operations in 3D space.
Application of transforms in Unity3D engine

Go back to top of page