Я использую wxGLContext и wxGLCanvas для 3D-визуализации. Я инициализировал opengl следующим образом
SetCurrent(*canvas);
glEnable(GL_BLEND);
glEnable(GL_CULL_FACE);
glEnable(GL_DEPTH_TEST);
glEnable(GL_LIGHTING);
glEnable(GL_COLOR_MATERIAL);
и рисовал объекты
glClear(GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-w, w, -h, h, -10.0f, 10.0f);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
quad = gluNewQuadric();
glPolygonMode( GL_FRONT_AND_BACK, GL_FILL);
//draw the objects
gluDeleteQuadric(quad);
glFlush();
Проблема в том, что этот код прекрасно работает в Windows, но в Ubuntu объекты обрезаются объектами, которые расположеныв спину. GlFrontFace корректен для всех объектов, но отсечение неправильно.