Мировая ось к локальной оси - PullRequest
0 голосов
/ 26 января 2011

Как я могу изменить / повернуть угол оси от мировых координат до координат объекта?

См. Ниже:

void RotateMatrix4(float *m, float angle, float *axis);
//This function rotates a matrix in object space

void RotateLocal(float angle, float *axis) {
    RotateMatrix4(m, angle, axis)
}

void RotateGlobal(float angle, float *axis) {
    //Do something to axis here
    RotateMatrix4(m, angle, axis)
}

1 Ответ

1 голос
/ 26 января 2011

Вы сами нашли ответ - это просто умножение матрицы преобразования на вектор - вы просто преобразовываете вектор оси в координаты объекта.

Посмотрите на Матрицу преобразования для получения дополнительной информации о матрицах преобразования.

(Я бы прокомментировал ваш ответ - но мой ранг еще недостаточно высок ...)

...