Я пробовал много формул и преобразований, но ничего не дало ожидаемого результата.
Сценарий очень простой:
Как 3DS Max и другие 3D-программы выполняют «преобразование» приращения локального вращения в глобальное абсолютное вращение?
Пример может помочь вам понять: 3DS Max - Maya - Modo (все три дали мне один и тот же результат, поэтому я склонен полагать, что этот результат правильный.) Предполагая абсолютный порядок вращения как XYZ.
1. World Rotation Y = 35.0;
2. Local Rotation X = 35.0;
После этих преобразований, в таком порядке, я смотрю на Мировое Абсолютное вращение и вижу X:40.524 Y:-28.024 Z:-21.881
Как они достигают такого результата? Что за формула? Используя матрицу, углы Эйлера или кватернионы, что угодно, как я могу получить тот же результат?
Спасибо.
PS: Простым решением может быть использование кватерниона или матрицы, добавление локального поворота к глобальному, а затем получение абсолютного результата. Но это не работает, потому что таким образом мы не можем контролировать порядок вращения, результат всегда получается с использованием порядка формулы для извлечения значений.