Чтобы использовать координаты вершины в качестве экранных координат, просто используйте glOrtho(0, width, height, 0, -1, 1)
в матрице проекции и сохраняйте идентичность матрицы вида модели (которая используется по умолчанию).Обратите внимание, что я перевернул дно и верх, так как в GL (0,0) внизу слева, и вы хотите, чтобы это было вверху (но имейте в виду, что это также переворачивает каждый объект и, следовательно, порядок треугольников).Вы также забыли установить ближнюю и дальнюю плоскости (все, что находится за пределами этого интервала, не будет отображаться).Но когда вы теперь рисуете все свои объекты с z = 0 (это значение по умолчанию, когда рисуете только 2d вершины), все должно быть в порядке.
glFrustum
- это просто альтернатива glOrtho
.Где glOrtho
создает ортогональный (параллельный) вид, glFrustum
создает вид в перспективе.Так что вам не нужно glFrustum
.