【发布时间】:2012-06-16 13:38:26
【问题描述】:
我在使用 LibGdx 开发 3D Android 应用程序时遇到了麻烦。我在回答 to my own question 中简要提到了它,但我一直无法弄清楚为什么我无法从 .png 图像中获得透明度。
纹理是透明的,我在 windows 上检查了我的 OpenGL3+ 框架,它们在正确的部分显示为透明的。
我的(简单占位符)片段着色器代码以:
结尾vec4 finalColor = ambient + diffuse;
finalColor.a = colorMap.a;
gl_FragColor = finalColor;
我试过 finalColor.a = 0.1; 还是不行。
我已将此添加到我的代码中,但无济于事:
Gdx.gl20.glEnable(GL20.GL_DEPTH_TEST);
Gdx.gl20.glBlendFunc(GL20.GL_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
Gdx.gl20.glEnable(GL20.GL_BLEND);
我什至检查并更改了:
AndroidApplicationConfiguration cfg = new AndroidApplicationConfiguration();
cfg.r = cfg.g = cfg.b = cfg.a = 8;
我认为这是每个通道的位数。
对此的任何帮助将不胜感激,我只是希望我没有忽略任何事情。 这不是一个大问题,我或多或少可以在没有透明度的情况下完成我的项目,但我真的很想知道为什么我不能让它工作。
【问题讨论】:
标签: android opengl-es-2.0 textures libgdx alpha-transparency