14 Nov 2026 · Math
In the previous post, we saw that an affine matrix mixes the rotation, scale, and shear in the same 9 values. It can drift, and it does not interpolate. The VQ and VQS transforms do the opposite: they keep each part separate, and they represent the rotation as a quaternion. As such, a VQ cannot hold a scale, and a VQS can hold only a uniform scale. Neither can represent shear. In this post, we look at how they work, and why that scale must be uniform.
Read the full post
08 Nov 2026 · Math
Affine matrices are the backbone of 3D virtual worlds. Every game engine, math library, and 3D piece of software includes support for them in one form or another. The primary reason for this is their flexibility: a single matrix can represent any combination of rotation, translation, scale, shear, and reflection. They can be composed through simple multiplication and their opposite transformation is achieved by inverting the matrix. However, that flexibility has a cost: a single representation for all of these means it cannot be optimal for each one and extracting a part from a whole can be quite difficult.
Read the full post
07 Nov 2026 · Math
Affine transforms are common in video games and other realtime applications. They can represent object rotations, translations, scale, and shear. These can also be mixed and combined in various ways (e.g. in a hierarchy of transforms). There are multiple ways to represent them and each format has its own strengths and drawbacks.
Read the full post
01 Nov 2026 · Math, Releases
The latest release of Realtime Math (RTM) contains many changes. I’ll highlight the most important ones here. See the changelog for the full list.
Read the full post