Создание 2D-вида в OpenGL просто: просто используйте GLOrtho
. Но, насколько я могу судить, это всегда даст вам прямоугольный вид. Но что, если вам нужна более сложная перспектива?
Предположим, что у меня есть карта, которая значительно больше моего видового экрана, и я хочу нарисовать ее в перспективном трапециевидном виде, где нижняя (ближняя) сторона уже, чем дальняя. Но я все еще хочу, чтобы все было 2D.
Как мне настроить отображение области просмотра таким образом, в идеале, без необходимости изменять мой действительный код рисования? Я хотел бы иметь возможность просто установить новый видовой экран, а затем нарисовать все по тем же координатам и заставить OpenGL работать с перспективным видом.
Базовая иллюстрация типа эффекта, который я ищу: вид дирижабля Final Fantasy 4
Кто-нибудь знает, как это настроить? Допустим, просто для того, чтобы выбросить некоторые числа, мой базовый видовой экран имеет размер 800x600, и я хотел бы, чтобы вид трапеции отображал те же 800 пикселей вдоль нижней части, но 1200 вдоль верхней.