我的 libGDX 舞台上有小 (20x20) 圆圈。我用 GIMP 创建了纹理,对于 hdpi 设备它是 (30x30)。当我在我的游戏中使用它时,它看起来像预期的那样。
但是当我尝试使用以下代码进行线性过滤时
textureRegion.getTexture().setFilter(Texture.TextureFilter.Linear,Texture.TextureFilter.Linear);
,由于某种原因,圆圈有灰色边缘:
我检查了 GIMP 中的图像,它没有任何抗锯齿像素。原始纹理看起来与第一张图像相同。为什么会出现,我怎么会有一个圆滑的圆?
最佳答案
如果使用缩小,那么边框可能需要大一点。并且为了避免灰色边界综合症,透明边界不应是 color(0,0,0,0)
而是 alpha channel 为 0 的边缘颜色。因此白边图片将使用 255,255,255 ,0
作为边框颜色。
编辑
我如何使用 GIMP 添加带透明层的边框:
创建任意大小的 Canvas (GIMP 中的图像大小)(文件 -> 新建)
在图层上绘制具有透明外边框/空间的图像。
使用
Colour(255,255,255,0)
在您的图像层下方创建没有空格/边框的新层,以便该层变得不可见。导出您的图像。
关于android - LibGDX抗锯齿使边缘变灰,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45102586/