WebGL中的AlphaFunctions?

Mar*_*kus 4 opengl-es glsl webgl

是否有可能实现透明效果,其中丢弃alpha低于0.5的片段,而alpha高于0.5的片段呈现为不透明?从我读过的,

glEnable(GL_ALPHA_TEST);
glAlphaFunc(GL_GREATER, 0.5); 
Run Code Online (Sandbox Code Playgroud)

将是我正在寻找的但不幸的是,AlphaFunction没有在WebGL中定义.有解决方法吗?

我的问题是,透明片段写入深度缓冲区,从而防止更远的片段被渲染: alpha_error http://gebackene-ente.at/nudelsalat/sonstiges/pointcloud_alphaerror.jpg

排序不是一种选择,因为有太多的分数.

Nic*_*las 13

使用着色器执行此操作.在片段着色器的底部,设置输出颜色后:

if(gl_FragColor.a < 0.5)
  discard;
Run Code Online (Sandbox Code Playgroud)