在我的openGL程序中使深度缓冲区工作有很多困难。我已经尝试过所有常见问题,如:
以下是我的“显示”功能的代码段,可帮助您了解我的问题。我的窗口大小为600x600,我试图以图形方式显示我的对象。
glEnable(GL_DEPTH_TEST);
glDepthFunc(GL_LEQUAL);
glDepthMask(GL_TRUE);
glDepthRange(0.0, 1.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glClear (GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_PROJECTION);
//isometric view
glLoadIdentity();
glColor3f(0.0, 0.0, 0.0);
glOrtho (-300, 400.0,-300, 400.0, 10, 700.0);
gluLookAt(10, 10, 10, 300.0, 300.0, 162.0, 0.0, 1.0, 0.0);
//Center of object located at (300, 300, 162)
glViewport(0, 0, 600, 600);
glMatrixMode(GL_MODELVIEW);
//Code drawing my program
如果你们中的任何人认为它会有所帮助,我可以提供更多我的代码。谢谢大家的帮助!