Blender bones ended up being not that difficult. It's mostly a matter of finding the right syntax. For bones it turned out that all that was really needed was for the bone world matrix to be transposed, and then swap the z and y axis by using a matrix
yup = Matrix((
(1.0, 0.0, 0.0, 0.0),
(0.0, 0.0, 1.0, 0.0),
(0.0, 1.0, 0.0, 0.0),
(0.0, 0.0, 0.0, 1.0)
))
Working with bones
Threejs : Read 4x4 matrix, add to parent, import
Noesis: Read 4x4 matrix, multiply by parent, convert to 4x3 matrix and import
Blender: Calculate the head, tail (which does nothing), pose, and transforms. The ability to multiply matrices is not included, and the order of the matrices is changed, on top of the axis being in XZY order.
Stallmanite and Debian user. My focus is on classic games and open source file formats.
#linux #debian #foss #nobot