Можно ли определить текущий режим матрицы, используемый OpenGL?Текущий режим матрицы OpenGL
Например, я в настоящее время имеют следующие (запускаемого размеров окна):
glViewport(0, 0, width, height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-width, width, -height, height, -1.0, 1.0);
glMatrixMode(GL_MODELVIEW);
Однако предпочтительнее, чтобы вернуться в режим ранее используемой матрицы, а не предполагать GL_MODElVIEW
. Есть ли функция, которая может быть вызвана заранее, чтобы сохранить предыдущее состояние?
Почему вы ожидаете, что текущий режим матрицы будет чем-то другим, кроме 'GL_MODELVIEW'? – Kos
@ Kos Учитывая, что доступны четыре различных режима матрицы, я предполагаю, что любой из них может использоваться, когда происходит событие изменения размера. Хотя я не ожидал этого, я думаю, что это хорошо, по крайней мере, рассмотреть возможность. Это, как говорится, я новичок в этом, и поэтому это может быть не так. – nwn
Я не покупаю. У вас есть N мест в коде, которые ожидают, что «матричный режим должен быть таким, каким я его оставил», и M-местами, которые говорят «я должен оставить режим матрицы нетронутым»? Это кажется слишком сложным. Я бы лучше посмотрел на весь цикл рендеринга и установил соглашение, какой режим должен быть установлен на тех этапах рендеринга. – Kos