По умолчанию кажется, что объекты рисуются спереди назад. Я рисую двухмерный объект пользовательского интерфейса и хотел бы создать его обратно. Например, я мог бы сначала создать белый квадрат, а затем создать немного меньший черный квадрат поверх него, создав тем самым черную панель с белой рамкой. Этот пост имел некоторое обсуждение на нем и описал этот порядок как "Алгоритм Животворения", но в конечном счете пример, который они дали, просто визуализировал объекты в обратном порядке получить желаемый эффект. Я возвращаюсь назад (первые объекты идут назад, последующие объекты получают рисование сверху) рендеринг может быть достигнут посредством некоторого преобразования (gOrtho?)?
Я также упомянул, что меня не интересует решение с использованием библиотеки обертки, такой как GLUT.
Я также обнаружил, что поведение по умолчанию на Mac с помощью Cocoa NSOpenGLView, похоже, обращается назад, где, как и в Windows, я не могу получить это поведение. Код установки в окнах, которые я использую, это:
glViewport (0, 0, wd, ht);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho (0.0f, wd, ht, 0.0f, -1.0f, 1.0f);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();