我只想在当前像素的alpha> 1时写入OpenGL深度缓冲区。 0.5 怎么做?
如果像素具有α< 0.5,我想渲染颜色,但不要将深度写入深度缓冲区。命令discard
不是我想要的,因为它丢弃了颜色和深度信息;我只想丢弃深度信息。
可以设置gl_FragDepth
变量,但值是多少?
并且对于α< 0.5,如何保持gl_FragDepth
不变?
我是否必须使用FBO,或者它是否也可以不使用? 我正在开发的项目是GLES 2.0 Android项目
答案 0 :(得分:18)
我使用
为我解决了这个问题glDepthMask(false)
此命令禁用写入深度缓冲区但仍执行深度测试。 我只是在所有其他对象之后渲染我的透明对象,并得到了我正在寻找的结果。