【问题标题】:vertex buffer renders later vertexes in front of earlier ones顶点缓冲区将较晚的顶点呈现在较早的顶点之前
【发布时间】:2021-04-18 00:00:27
【问题描述】:

在尝试使用 OpenGL 渲染立方体时,我注意到我稍后在位置数组中定义的顶点呈现在之前定义的顶点之上:

在图像中很难看到,但如果仔细观察,您会发现立方体的背面呈现在最靠近相机的面之上。当我将相机移动到立方体的另一侧时,它会正常显示。

我是否需要检查我的片段着色器以查看面部相对于相机是否在其他人的后面,如果是,我该如何实现?

【问题讨论】:

标签: c++ opengl rendering


【解决方案1】:

起初我尝试启用深度测试(我不知道默认情况下它是关闭的)但后来没有渲染。问题是没有使用 glClear(GL_DEPTH_BUFFER_BIT) 清除每一帧的深度缓冲区。

问题解决了!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-29
    • 2019-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多