LibGDX抗锯齿产生灰色边缘

时间:2017-07-14 12:06:50

标签: android libgdx textures gimp

我的libGDX阶段中有小(20x20)个圈子。我用GIMP创建了纹理,对于hdpi设备,它是(30x30)。当我在游戏中使用它时,它看起来像预期的那样。 enter image description here

但是当我尝试使用以下代码进行线性过滤时

textureRegion.getTexture().setFilter(Texture.TextureFilter.Linear,Texture.TextureFilter.Linear);

,圆圈出于某种原因出现了灰色边缘:

Circle with linear filtering

我检查了GIMP中的图像,它没有任何消除锯齿的像素。原始纹理与第一个图像看起来相同。它为什么会出现,我怎么能有一个光滑的圆圈?

1 个答案:

答案 0 :(得分:1)

如果使用缩小,那么边框可能必须更大。并且为避免灰色边界综合症,透明边框不应为color(0,0,0,0),而是Alpha通道为0的边缘颜色。因此白色边缘图片将使用255,255,255,0作为边框颜色。

enter image description here

修改

如何使用GIMP添加透明层边框:

  1. 创建任何尺寸的画布(GIMP中的图像尺寸)(文件 - >新)

  2. 使用图层上透明的外边框/空格绘制图像。

  3. 在图片图层下方创建新图层,不使用Colour(255,255,255,0)的空格/边框,以便此图层不可见。

  4. 导出图片。

  5. enter image description here