纹理中的透明度在libgdx中不起作用

Sco*_*dan 2 java opengl libgdx

我正在尝试在libgdx中绘制一个具有透明背景的精灵,但透明背景用白色填充而不是显示已在该位置渲染的内容.

透明度没有显示出来

精灵(带帽子)为64乘64,边缘和右边都有透明度.应该有两个瓷砖'C!' 在他身后,但它只是充满了白色.

这是我用来渲染图像的代码.

public void draw(SpriteBatch sb, float parentAlpha){
    sb.enableBlending();
    sb.draw(texture, getX() + 32, getY());
}
Run Code Online (Sandbox Code Playgroud)

Nic*_*las 7

如果你要实现融合,你需要设置混合功能setBlendFunction.这准确定义了混合的工作方式.据推测,你想要经典的GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA混合.