在 OpenGL 中,您只能绘制背面多边形、正面多边形或两者。如果渲染流形三角形网格,则清除帧缓冲区但不清除深度缓冲区,然后再次仅渲染背面多边形。期望看到什么?
我认为以下给我的答案是错误的:
您应该看到背面的三角形。第一个渲染通道将导致深度缓冲区具有正面三角形的深度值。您正在渲染背面三角形的第二个渲染通道,因此那些具有最大深度值的三角形。每个光栅化的三角形都将具有与该像素的当前深度值相比的深度值。由于深度缓冲区设置为所有最接近的深度值(小值),但区分最远的深度值(大值),将呈现背面三角形。”
但我认为答案是:
由于深度缓冲区没有被清除,并且仍然包含正面三角形的深度值,它会丢弃背面三角形,并且什么也不显示。
哪个答案是正确的?