One thing that I stuggle regularily with, is the order in which matrices should be multiplied to achieve a specific result. So I decided to get this clear for myself for good and all.
As you know, matrices (at least in our context of 3D graphics) represent transformations. Multiple transformation matrices can be combined using marix multiplication. But since this operation is not commutative, the order of the multiplication is important.
Since matrices represent transformations, they build new coordinate systems, too: These new systems are defined by axis vectors that have been transformed using the matrix. An example will clarify this fact:
In the examples used in this post, I will use a rotation matrix around 30 degrees, because and
, which is easy to write down and we still stay exact when calculating with it.
Part 1: A single transformation matrix
Given the origin system with the axis vectors and
, when we rotate these vectors around 30 degrees, we get the vectors
and
Continue reading

