Пытаюсь запустить пример из книги:
#include <GL/glu.h>
#include <GL/glut.h>
void RenderScene()
{
        glClear(GL_COLOR_BUFFER_BIT);
        glColor3f(1.0f,0.5f,0.5f);
        glRectf(-5.0f,5.0f,-5.0f,5.0f);
        glFlush();
}
void SetupRC()
{
        glClearColor(0.0f,0.0f,1.0f,1.0f);
}
void ChangeSize(int w,int h)
{
        GLfloat ar;
        if(h==0) h=1;
        glViewport(0,0,w,h);
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();
        ar = (GLfloat)w / (GLfloat)h;
        if(w<=h)
                glOrtho(-100.0,100.0,-100.0/ar,100.0/ar,1.0,-1.0);
        else
                glOrtho(-100.0*ar,100.0*ar,-100.0,100.0,1.0,-1.0);
        glMatrixMode(GL_MODELVIEW);
        glLoadIdentity();
}
void main(int argc, char *argv[])
{
        glutInit(&argc,argv);
        glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
        glutCreateWindow("GL!");
        glutDisplayFunc(RenderScene);
        glutReshapeFunc(ChangeSize);
        SetupRC();
        glutMainLoop();
}
В результате всё заливается синим цветом, квадрат не рисуется. Если не вызывать SetupRC(), всё заливается черным цветом, т.е. glClear, похоже, всё равно не вызывается. С чем такое связано?


