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