Into three dimensions
Every idea so far was demonstrated in a plane. If those ideas only work in 2D, they are a curiosity. Here is the test.
Drag to orbit. Space now has three basis vectors: right, up, and toward you.
What actually changed
The count. That is all.
A vector is : the recipe .
A linear transformation still keeps grid lines straight, evenly spaced, and pinned at the origin — now it is a grid of cubes rather than squares.
And the compression argument runs word for word. Linearity still lets you push through a recipe, so knowing where the three basis vectors land tells you where every point in 3D space lands. Three arrows, infinite information.
Write those three landing spots as columns and you have a matrix:
Multiplication is unchanged too: to compose two motions, push each basis vector through the first, then the second, and collect the results as columns.
Rectangles, and why they make sense
Nothing forces input and output to share a dimension.
A matrix takes 3D vectors to 2D ones. Read the columns: three columns, one per input basis vector, each landing somewhere in the plane. It flattens space, like a shadow cast on a wall.
A matrix takes 2D vectors into 3D: two columns, each a 3D landing spot. It plants a plane inside space.
The shape of a matrix is not a convention to memorise. Columns = how many input directions. Rows = how many coordinates each landing spot needs.
Where this goes
Act II is finished. You can describe any linear motion, in any dimension, and chain motions together.
But describing a motion is not the same as understanding what it does to space. Does it stretch or squash? Does anything get destroyed? Can it be undone? Act III asks those questions, and a single number answers the first one.