World matrices and matrix multiplication


I was trying to convert a bone space location to world space using world matrices. It works fine when the transform node has no transformation, but it goes wrong when a rotation is applied. I have multiplied the bone’s world matrix by the transform node’s world matrix, but it doesn’t seem to solve the problem.

A possible reason may be the matrix multiplication, where the result is not as expected (as shown in the playground below). But I have no idea why this happens…


It seems that I have found a solution by myself:

  1. Use the cloned version of the bone’s world matrix;
  2. Change the multiplication order to BoneWorldMatrix * TransformNodeWorldMatrix.
1 Like