我在LibGDX中拉伸精灵有问题。
我在游戏中有一个png文件(1x1000像素),我想这样做1000x1000px
sprite.setSize(pixelWidth,pixelHeight);
编辑:以下是我想要展开的图片 - sky。如您所见,它从顶部到底部几乎没有渐变。我想让它的宽度为1000像素。我希望图像在宽度上有颜色变化。
但我得到了这个奇怪的结果: Image
你可以看到宽度有渐变的东西,即使是线条,但没有理由,因为我正在缩放1px图像...
奇怪的是,其他电脑和手机上的一切看起来都不错......但我不认为问题出在我的电脑上了??
我不知道该尝试什么... 有什么想法吗?
很抱歉,如果我没有解释得很清楚......抱歉我的英文不好
最终:来自过滤。我将过滤器从线性更改为最近,一切都很好
答案 0 :(得分:2)
我不明白你的问题究竟是什么,但扩展精灵的好方法就是这样
sprite.setSize(scrw * 0.16f, scrw * 0.16f);
此处螺钉是您的视口宽度
答案 1 :(得分:0)
我认为这是因为插值而发生的。当您的精灵和抓取的纹理区域的宽度为1像素,并且您将精灵缩放到屏幕宽度时,GPU会插入一些颜色值,它将使用纹理中邻域中的像素颜色。
您可以尝试将渐变更改为3px宽的纹理,并从3 px的中间抓取1px宽的精灵。 GPU仍然会插入颜色并使用邻域的像素颜色,但是因为它们会相同,所以它看起来还不错。
这里是一个图像,你的纹理区域目前看起来像是什么样子,它的抓取区域,以及跟随纹理区域的样子和它的抓取区域: