Computing Transformation Matrices

The FBX SDK and Maya use the same formula to compute a transformation matrix. However, 3ds Max uses a different formula.

NOTE:The FBX importers and exporters for 3ds Max automatically convert transformation matrices to and from 3ds Max.

FBX and Maya

The following formula represents how the FBX SDK and Maya compute the transformation matrix for a node:

WorldTransform = ParentWorldTransform * T * Roff * Rp * Rpre * R * Rpost -1 * Rp -1 * Soff * Sp * S * Sp -1

Any given vector is transformed so that V' = WorldTransform * V.

Where the term: Is a 4 x 4 matrix that contains:
WorldTransform Transformation matrix of the node
ParentWorldTransform Transformation matrix of the parent node
T Translation
Roff Rotation offset
Rp Rotation pivot
Rpre Pre-rotation
R Rotation
Rpost -1 Inverse of the post-rotation

Rp -1

Inverse of the rotation pivot
Soff Scaling offset
Sp Scaling pivot
S Scaling

Sp -1

Inverse of the scaling pivot

Notes:

3ds Max

The following formula represents how 3ds Max computes the transformation matrix for a node. All the terms in the formula are the same as in FBX and Maya, except for the three terms that represent geometric transformation:

WorldTransform = ParentWorldTransform * T * R * S * OT * OR * OS

Where the term: Is a 4 x 4 matrix that contains:
WorldTransform Transformation matrix of the node
ParentWorldTransform Transformation matrix of the parent node
T Translation
R Rotation
S Scaling
OT Geometric transform translation
OR Geometric transform rotation
OS Geometric transform scaling

Notes: