在OpenGL中,是否可以绘制不检查深度的多边形序列(因此它们将始终绘制在之前绘制的其他多边形之前它,关于它们的z位置)在OpenGL(非着色器)中写入深度缓冲区而不进行深度测试
但是同时它们还写入深度缓冲区?
我想这是可以使用着色器,但现在我无法访问。
在OpenGL中,是否可以绘制不检查深度的多边形序列(因此它们将始终绘制在之前绘制的其他多边形之前它,关于它们的z位置)在OpenGL(非着色器)中写入深度缓冲区而不进行深度测试
但是同时它们还写入深度缓冲区?
我想这是可以使用着色器,但现在我无法访问。
不是严格意义上(从man page):
深度缓冲,如果深度测试被禁止没有更新。
但是...你可以启用深度测试,而没有任何片段测试失败:
glDepthFunc(GL_ALWAYS);
glEnable(GL_DEPTH_TEST);
当然,你做最后写入的ž是,不是最接近到视图。
你只能使用两遍来实现这一点。第一个是填充深度缓冲区只使用彩色面具:
glColorMask(GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE);
第二次再次启用彩色文字,禁用深度测试和渲染,以你的多边形的序列。