Почему перед использованием gluLookAt мне нужно написать glLoadIdentity

Я обнаружил, что если я не использую glLoadIdentity перед gluLookAT, то у меня появится пустой экран. Я не понимаю: почему?

1 ответ

Решение

gluLookAt в основном вычисляет матрицу преобразования, состоящую из перевода (в указанную вами точку зрения) и вращения (для его ориентации). Однако эта матрица преобразования умножается на текущую матрицу. Поэтому, если текущая матрица не идентифицирована, ваша камера окажется в другом месте, дополнительно будут применены операции поворота и перемещения. Обратите внимание, что, несмотря на название, gluLookAt в принципе может использоваться для позиционирования и ориентации любого объекта, а не только "камеры".

Другие вопросы по тегам