And obviously we can do the same with all his friends that form the cube:

This is our third transform: the Rotation. But this is not the end; it is just the start since you can do anything you want to our little vertex friendâ€™s position. Do you want to take his square root? Multiply the X and Y coordinate and put it in the Z coordinate? Add X, Y and Z coordinate, raise it to a power, divide by the sine of the X coordinate, and â€¦ and â€¦ well you get the idea: you can do anything you want with your little vertex friend and something really exciting might happen to him, and his friends and obviously something will also happen to the triangles and objects that they form together.

All these exotic transformations sound cool, but they might not be immediately functional. The Translation, Rotation and Scaling Transformations are the most used ones. Obviously you have already figured out the use of these transformations within a game. Using these transforms any objects can be moved around in the 3D world: the car driving along the road, the mouse chasing the cat (errr?), etcâ€¦ transforms make it all possible.

### The Matrix, the one that changes the world

To efficiently execute transformations (and lots of other things) mathematicians invented something called a matrix and on a matrix you can perform various matrix operations. We are mainly interested in the matrix operation that allows us to execute the basic transformations: the matrix product, which is defined as follows:

All other basic transformations can be done using this matrix representation:

One thing to note is that weird exotic transformations of coordinates are not possible using the matrix representation. So if you want a transformation that expresses that Xâ€™=sine(X) + cosine(Y) + Z3 then youâ€™ll have to look elsewhere.