You could try to add "rotationScale.setScale(1)" to remove the scale from rotationScale.
I cannot just revert the setScale. If I try to do a setScale(1d); the rotation still comes out the same. If I try to do a setScale(2d); same bad result.
The rotation is not corrupted inside the matrix4d, since my model displays correctly translation, scale and rotation in my 3D world. So somehow I should be able to retreive the rotation, it must be there, otherwise it would not be drawn correctly.
Is the corrrect Matrix4d inside the retained node only, and the normal matrix4d is corrupted but displays correct since it is not even used for displaying, the retained one is?