linux openGL depth_test不能正常工作

时间:2015-07-19 11:59:37

标签: opengl depth-testing

我在互联网上尝试了很多方法,但它仍然无法正常工作。 现在我想一想这个问题是否与我的操作系统(ubuntu)有关。

void init(void){
glClearColor(1.0, 1.0, 1.0, 0.0);
glShadeModel(GL_SMOOTH);
glEnable(GL_DEPTH_TEST);
glClearDepth(1.0);
glDepthFunc(GL_LESS);
glFrontFace(GL_CCW);
glCullFace(GL_BACK);
glEnable(GL_CULL_FACE);
init2();
}

void reshape(int w, int h){
int t = min (w,h);
glViewport (0, 0,  t, t);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-100.0, 100.0, -100.0, 100.0, 1.1, 200.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(40.0, 40.0, 100.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
}

以上两个函数来自我的代码..

1 个答案:

答案 0 :(得分:0)

必须在每帧的开头调用

glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)来清除颜色缓冲区和深度缓冲区。

除此之外,你应该发布更多细节。你在看什么?您是如何申请OpenGL上下文的?你能发布整个绘制循环吗?

相关问题