Я пытаюсь отобразить прямоугольник на экране. Когда программа запускается, появляется только четкий цвет и нет прямоугольника.OpenGL 2d прямоугольник не отображается
Вот код:
glClearColor(0.0, 0.0, 0.0, 0.0);
glViewport(0, 0, 1280, 720);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, 1280, 720, 0, -10, 10);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glClear(GL_COLOR_BUFFER_BIT || GL_DEPTH_BUFFER_BIT); //Clear the screen and depth buffer
int x = 100;
int y = 100;
while (!glfwWindowShouldClose(window)) {
glfwPollEvents();
glBegin(GL_QUADS);
glVertex2f(x, y);
glVertex2f(x + 10, y);
glVertex2f(x + 10, y + 10);
glVertex2f(x, y + 10);
glEnd();
gsm->update();
gsm->render();
glfwSwapBuffers(window);
}
'' GL_COLOR_BUFFER_BIT' & GL_DEPTH_BUFFER_BIT' являются bitflags, вам нужно побитовое ИЛИ их ('|') вместе, а не логическое ИЛИ ('' ||). – genpfault