在WebGL中,是否可以写入片段的深度值或以其他方式控制片段的深度值?
据我所知,gl_FragDepth 不存在于 webgl 1.x 中,但我想知道是否有其他方法(扩展、浏览器特定支持等)来做到这一点。
我想要归档的是让光线追踪对象与使用通常的模型、视图、投影绘制的其他元素一起播放。
有扩展名EXT_frag_depth http://www.khronos.org/registry/webgl/extensions/EXT_frag_depth/
由于它是一个扩展,因此可能并非在所有地方都可用,因此您需要检查它是否存在。
var isFragDepthAvailable = gl.getExtension("EXT_frag_depth");
If isFragDepthAvailable
不是假的那么你可以在你的着色器中启用它
#extension GL_EXT_frag_depth : enable
否则你可以操纵gl_Position.z
在你的顶点着色器中,尽管我怀疑这并不是满足大多数需求的真正可行的解决方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)