我有一个使用OpenGL在窗口中绘制一些内容的应用程序(基于here的示例)。使用NVIDIA GeForce GTS 450显卡在我的台式机上运行应用程序时,一切看起来都不错,但在其他计算机上看起来很糟糕(我试过2台带有集成英特尔显卡的笔记本电脑,以及在VirtualBox上运行的虚拟机上)。 / p>
效果如下:
我试图操纵gluPerspective功能,但没有结果。
这种影响可能是什么原因?
编辑: 从附带NVIDIA的计算机中更正文件:
答案 0 :(得分:2)
我看起来不像某种z-fighting。也就是说,您有几个具有重叠或非常相似的Z值的几何图形,并且Z值计算中的精度误差会使对象的某些部分被隐藏。
它可以在某些机器上工作而不在其他机器上工作,这可能是因为Z缓冲区是32位或16位,具体取决于机器。
请注意,即使将Z缓冲区强制为32位也可以解决问题,您应该考虑修复对象的Z值。有(以前是?)某些不支持32位Z缓冲区的硬件。