我正在使用framebuffer的深度缓冲实现纹理遮罩,参照以下示例:https://github.com/mattdesl/lwjgl-basics/wiki/LibGDX-Masking#masking-with-depth-buffer。我已经通过修改深度缓冲区来使形状渲染器正常工作,但现在我希望使用Pixmap修改深度缓冲区。我需要将Pixmap中的所有非不透明像素写入深度缓冲区作为1.0深度值,将所有不透明像素作为0.0深度值。
我看到了使用ShapeRenderer单独绘制Pixmap中的像素的解决方案,但这似乎效率不高。是否有更合适且更高效的方法?
if (tex.a!= 1.0) discard;
。 - Andon M. Coleman