У меня возникают проблемы с тем, как это работает. Во-первых, в двумерной игре матрица проекции должна быть настроена как орто с левым, правым, верхним, нижним соответствием окну, верно? Но когда размер окна изменяется, я должен просто изменить glViewport, а не матрицу проекции? И как мне сохранить соотношение сторон?
Может ли кто-нибудь объяснить цели этих двух вещей в 2D-игре, чтобы я мог лучше понять это?
Такое ощущение, что OpenGL делает много бесполезных вещей в настройка 2d. Растеризация и вычисление фрагментов, когда изображения уже есть, преобразование координат вершин в NDC для преобразования их обратно в то, что они уже где, с помощью glViewport.
Кроме того, как в устаревшем бесплатном OpenGL мы должны создавать свои собственные матрицы, но не наши собственные вычисления, которые делает glViewport?
Спасибо.