-2

我的问题是,我的 OpenGL 场景中的正常对象显然已经莫名其妙地翻转了。这里有一些图片可以帮助我解释。

第一张截图:
在此处输入图像描述

第二张截图:
在此处输入图像描述

是我的代码有问题(它不应该是因为我没有在那里改变任何东西),还是只是像显卡故障?如果是我的显卡问题,有什么办法可以解决?

旁注,在我升级显卡驱动程序之前它工作正常

4

1 回答 1

0

您的问题是您在没有使用深度测试的情况下绘制立方体的两侧(内部和外部)。有两种方法可以解决此问题。通常,您将启用两者,因为它们解决不同的问题,但在这种特殊情况下,任何一种技术都可以解决您的问题。

  1. 启用深度测试:glEnable(GL_DEPTH_TEST)。这将使立方体前面的部分被绘制在后面的部分上,但反之则不然。

  2. 启用背面剔除:glEnable(GL_CULL_FACE)。这将使立方体的外部被绘制,而不是内部。请注意,您必须确保所有三角形都面向正确的方向才能正常工作。另请注意,这只是一个完整的解决方案,因为您的模型是凸的。

于 2015-01-08T23:14:06.220 回答