Могу ли я повернуть вид glOrtho()?

Я делаю программу, где мне нужна орфографическая проекция. Итак, я использую glOrtho(). Я сделал функцию масштабирования, но я блуждал, если вы можете повернуть свой вид? Потому что glOrho() выглядит параллельно другим плоскостям. Или есть другая проекция, которая может это сделать. glLookAt может вращаться, но меняет размеры при удалении от камеры. Я прочитал
Как заставить параллелепипед glOrtho вращаться? но это не дало мне ответа.


person abcdef    schedule 22.12.2012    source источник


Ответы (1)


Здесь важно то, что вы обычно делите операции на две матрицы: (Модель)Вид и Проекция.

Хотя glOrtho() обычно вызывается с glMatrixMode(GL_PROJECTION), все операции, связанные с перемещением и вращением камеры (например, glRotate*, glTranslate* и gluLookAt), должны предваряться glMatrixMode(GL_MODELVIEW).

В фиксированном конвейере конечное положение вершины вычисляется путем умножения входных данных на эти две матрицы, а используемая проекция (ортогональная, перспективная или нелинейная) не зависит от преобразований камеры.

person Bartek Banachewicz    schedule 22.12.2012