Here is an easy way to visualize vector operations with Geometry Nodes.
What Is A Vector?
A vector can be thought of as an arrow, with the following important aspects:
A vector only describes direction and length. It has its tail always at the origin!
A position in 2D or 3D space is a vector: an arrow pointing to the position from the origin.
Visualize A Vector
This can be visualized with Geometry Nodes:
- Create an empty, this is your position.
- Create a mesh (e.g. a plance) and create a Geometry Nodes setup on it.
- Bring in the empty and use its position in a Curve Line node as the end.
We can color the line by storing an attribute, and accessing it again with the Viewer node:
Add Another Vector
Adding another empty as a second vector:
Do Some Math
Now we can do some math. Use the Vector Math node and a Curve Line to visualize the result:
Apply several operations and see what happens:
The Node Tree
This is the final node setup. Most of it is for visualisation:
Get The Center Point
More vector math: how do we get the center between two positions:
Subtracting a vector A from B returns a vector pointing from B to A, but with its tail at the origin! Remember, a vector is only direction and length. Wen can not move it in space!
We can then scale the vector by multiplying it (Scale operation in the Vector Math node).
And then move the resulting position by adding vector A:
So the result is a vector pointing at the center between vector A and B. Move the empties, and the result will update:
Move Along A Vector
When we have a vector, we can move along it by multiplying it with a float. This operation is called Scale in the Vector Math node:
Example Operations: Reflect
What does Reflect do, the result seems wierd:
3D can be hard, so a way to simplify things, is to look at them in 2D (also move the empties so they are on a plane):
It makes a little more sense. Also try switching the direction of the result by Scaling it with -1:
Again, simplify by keeping one empty along a world axis:
Now it is a clear reflection of one vector using the other one as the “mirror”:
Example Operations: Projection
Same here, simplify by placing the emtpies on a plane:
The result is the projection of vector A onto B.

















