OpenGL中的反转深度测试?

OpenGL中的反转深度测试?,opengl,fragment-shader,depth-testing,Opengl,Fragment Shader,Depth Testing,如果希望正常渲染,在渲染离摄影机最近的对象的位置,可以按如下方式设置OpenGL标志: glDepthFunc(GL_LESS); glEnable(GL_DEPTH_TEST); 因此,我假设: glDepthFunc(GL_GREATER); glEnable(GL_DEPTH_TEST); 也允许我渲染离摄影机最远的片段。但是,当设置这样的标志时,我看不到任何输出。(我的申请没有做其他修改) 如何渲染距离摄影机最远的碎片?深度范围为0到1… 清除深度时,默认情况下,整个数组将填充1…

如果希望正常渲染,在渲染离摄影机最近的对象的位置,可以按如下方式设置OpenGL标志:

glDepthFunc(GL_LESS);
glEnable(GL_DEPTH_TEST);
因此,我假设:

glDepthFunc(GL_GREATER);
glEnable(GL_DEPTH_TEST);
也允许我渲染离摄影机最远的片段。但是,当设置这样的标志时,我看不到任何输出。(我的申请没有做其他修改)


如何渲染距离摄影机最远的碎片?

深度范围为0到1…
清除深度时,默认情况下,整个数组将填充1…
您可以使用
glClearDepth(0)

您可以使用
gldeptrange(近、远)


GL_LESS
(默认)声明:
“如果传入的深度值小于存储的深度值,则传递。”

GL\u greer
状态:
“如果传入的深度值大于存储的深度值,则传递。”

因此,您需要一些清除深度(0),以便更高的深度进行叠加。(仅查看最远的碎片)