我正在从文件中读取高度图,并使用三角形条渲染它。
高度图:
效果很好,这就是它的外观:
它看起来不错,但只是从这个方向来看。如果我稍微转动相机,就会开始发生这种情况:
好像我的深度缓冲区已损坏了。我已启用它,它可以很好地与其他几何体一起使用。
以前有人有这样的问题吗?我甚至不知道要搜索什么。谢谢!
编辑:
我的投影矩阵设置:
1.2062851 0.0 0.0 0.0
0.0 2.1445069 0.0 0.0
0.0 0.0 -1.0 -1.0
0.0 0.0 -0.2 0.0
_fieldOfView(50.0f),
_nearPlane(0.1f),
_farPlane(10000.0f),
_viewportAspectRatio(16.0f/9.0f)
答案 0 :(得分:0)
谢谢大家的有益评论。我发现了这个问题,希望有这个问题的其他人会发现解决方案很有用。我必须在每个帧(glEnable(GL_DEPTH_TEST))之前重新启用深度缓冲,而不是在创建渲染器时重新启用一次。我的印象是这是一个全球状态,因此每次渲染时都不需要重置。
最终产品看起来像这样,没有深度缓冲问题:
无论如何,希望这有助于某人。