Game math for developers: vectors, angles and smooth motion

The practical maths behind movement, aiming, cameras and game feel, explained visually and applied in Godot and Unity examples

7 ratings 1,320 students Sample

Created by Hana Takeda

  • Updated September 2026
  • English
  • Intermediate

What you will learn

  • Use vectors to represent positions, directions and velocities confidently
  • Apply dot and cross products to facing, vision cones and side checks
  • Rotate and orbit objects with angles, sine and cosine
  • Write frame rate independent smoothing with interpolation and easing
  • Simulate projectiles and simple physics with stable integration
  • Use randomness and noise to add controlled variety

Course content

5 sections, 24 lessons, 4h 11m total

Vectors and directions 5 lessons · 51 min
  • Video: Why game maths is mostly vectors Preview 8 min
  • Article: Vector operations you use every day Preview 13 min
  • Article: The dot product: in front or behind 12 min
  • Article: Angles, radians and trigonometry 13 min
  • Quiz: Check your understanding 5 min
Smooth motion 5 lessons · 54 min
  • Video: Linear interpolation explained 10 min
  • Video: Easing curves 11 min
  • Video: Frame rate independent smoothing 12 min
  • Video: Moving toward a target at a fixed speed 9 min
  • Video: Springs and damping 12 min
Physics you can control 5 lessons · 56 min
  • Video: Velocity, acceleration and integration 12 min
  • Video: Designing jumps with real numbers 11 min
  • Video: Projectile arcs and aiming 12 min
  • Video: Steering behaviours 12 min
  • Video: Reflections and bouncing 9 min
Space and transforms 4 lessons · 43 min
  • Video: Local space versus world space 11 min
  • Video: Transforms as basis vectors 10 min
  • Video: Rotations in 3D and quaternions 13 min
  • Video: Cross product: left, right and normals 9 min
Randomness and variety 5 lessons · 47 min
  • Video: Random numbers done right 10 min
  • Article: Weighted choices and loot tables 9 min
  • Video: Noise for natural variation 11 min
  • Video: Putting it together: a living scene 12 min
  • Quiz: Final check 5 min

Requirements

  • Programming experience in any language
  • Some experience with a game engine such as Godot or Unity
  • School level algebra

Description

Most of the maths in games is not advanced. It is a small set of tools used again and again: vectors for positions and directions, the dot product for "is it in front of me", trigonometry for angles and circles, interpolation and easing for smooth motion, and a little bit of randomness used well. The trouble is that these tools are usually taught in abstract form, far away from the games where you need them.

This course teaches them through game problems. How do I make an enemy face the player? How do I check if the player is inside a vision cone? Why does my camera jitter? How do I make a projectile arc? Each lesson starts with a problem, explains the idea visually and then implements it.

What you will learn

  • Vectors: adding, scaling, normalising, length and distance
  • Dot and cross products and what they tell you
  • Angles, radians, sine and cosine for rotation and orbits
  • Interpolation, easing curves and frame rate independent smoothing
  • Projectile motion and simple physics integration
  • Random numbers, noise and weighted choices
  • An introduction to transforms, local versus world space and quaternions

Engine agnostic

Examples are shown in GDScript and C# for Unity, but the ideas apply to any engine or framework. Each lesson includes a small interactive demo you can play with to build intuition.

You should be able to program in at least one language and have tried a game engine before. School level algebra is enough; we rebuild everything else.

Who this course is for

  • Game developers who copy maths snippets without fully understanding them
  • Programmers moving into game development
  • Technical artists who script behaviours

Instructor

Hana Takeda

Indie game developer teaching Godot, Unity and the maths that makes games feel right

  • 4.4 instructor rating
  • 21 reviews
  • 6,710 students
  • 3 courses
  • Sample

I make small indie games and game jam prototypes, mostly in Godot and Unity. I care a lot about game feel: how a jump responds, how a camera follows, how a hit lands. Most of that comes down to a few lines of maths and careful tuning.

My courses are project based. You build a playable game in each one, and every section ends with something you can actually play and show to a friend.

I teach beginners who have never opened a game engine, as well as programmers who know how to code but have never thought about frames, physics or input.

View profile

Student reviews

4.4 7 ratings
5 star 57%
4 star 29%
3 star 14%
2 star 0%
1 star 0%
Teo V. Oct 4, 2026
Sample

Practical, not academic

Every lesson starts with a real game problem. That is exactly how I wanted to learn this.

Daniel P. Sep 23, 2026
Sample

Dot product finally makes sense

I have used dot products for years without understanding them. The vision cone demo made it obvious.

Keiko M. Sep 4, 2026
Sample

The smoothing lesson fixed my camera

My camera was jittery at high frame rates. The exponential decay explanation solved it in minutes.

Andre L. Aug 14, 2026
Sample

Great intuition building

Interactive demos are excellent. I would like a few more exercises at the end of each section.

Freya N. Jul 20, 2026
Sample

Jump design from real numbers

Deriving gravity from jump height and time to peak changed how our team tunes platformers.

Jakub W. Jun 25, 2026
Sample

Clear quaternion explanation

As clear as quaternions can be without heavy maths. The local versus world space lesson was very useful.

Imani D. May 24, 2026
Sample

Wanted more Unity examples

Most examples are in GDScript. The Unity code is there, but less detailed.

$39.99 Enroll now
SampleSample catalog: the instructors, courses, reviews and stats on this site are demo content.