- Рейтинг
- 2
Здравствуйте. Я пишу скрипт для экспорта анимации в готовый формат, основанный на матрицах преобразования directX, и столкнулся с такой проблемой: при получении матрици преобразования объекта сцены в максе через myNode.transform перемещение объекта после экспорта направленно не правильно, т.к. направление осей координат в максе и directX азличаеться ( XYрZ в максе соответствует XZY в D3D). После гугления и курения уроков попробывал умножить матрицу преобразования ( дописав последний столбец ) на такую
как предлагалось сделать в одном из уроков. По моим прикидкам "на листочке" после умножения на такую матриц должно получиться следующее
т.е. второй и третий столбец меняются местами. После преобразования таким образом моей матрици анимация проигрываеться нормально за исключением одного: объект "выворачиваеться наизнанку", при этом все остальные преобразования происходят нормально.
Буду очень благодарен если кто-нибудь подскажет мне в чем я допустил ошибку или как мне лучше преобразовать исходную матрицу.
Код:
1 0 0 0 0
0 0 0 1 0
0 1 0 0 0
0 0 0 0 1
Код:
a11 a12 a13 0
a21 a22 a23 0 =>
a31 a32 a33 0
a41 a42 a43 1
a11 a13 a12 0
a21 a23 a22 0
a31 a33 a32 0
a31 a33 a32 0
a41 a43 a42 1
Буду очень благодарен если кто-нибудь подскажет мне в чем я допустил ошибку или как мне лучше преобразовать исходную матрицу.