Hi,
I've been brushing up my matrix math because I ran into some issues. To be sure I get it right, I'd like to know if the following is correct:
- I create a World matrix for an object, by multiplying Scale, Rotation and Translation matrices
- this gives we for example:
[ 0.5 0.0 0.2 0.0 ]
[ 0.0 0.4 0.3 0.0 ]
[ 0.0 0.1 0.2 0.0 ]
[ 3.0 2.0 1.0 1.0 ]
When I try to 'read' this matrix I conclude:
- row 1/ 2 / 3 = X / Y / Z axis orientation = scaling + rotation combined (scaling first)
- row 4 = X/Y/Z/W translation
- if I want to extract a vector from the matrix, that gives my either X, Y or Z orientation (without translation), I could use the 1st three components of row 1, 2 or 3
- when I multiply a vector (position/point) with this matrix, for example:
[ 1.0 ]
[ 2.0 ]
[ 0.0 ]
[ 1.0 ]
=> the X component of the vector is only affected by the 1st row of the matrix
=> the Y component of the vector is only affected by the 2nd row of the matrix
=> the Z component of the vector is only affected by the 3rd row of the matrix
Are my assumptions correct or am I overseeing something?