正如你所说,你有很多可能解决这个问题。如果你靠近那些,拉伸通常看起来不太好。但如果他们远离,这可能是一个很好的解决方案。在我看来,生成这些确实需要时间,我猜这对游戏来说不是一个好主意。你甚至必须编写很多东西,我猜它们看起来总是相似的。
我认为平铺是不可能的,因为你的天空塔并不总是在瓷砖的基础上。因此,例如,您有 32 像素的瓷砖,而您的塔高 53 像素,它不能很好地工作,因为您需要拉伸/切割或这样的瓷砖之一。
我会采用带有良好过滤器的拉伸解决方案。为此获得超过 1 张图片,因此如果您有更大的塔,也可以拍摄更大的图片以获得更好的解决方案。您需要注意宽度和高度。你不应该把一个很宽的塔固定得太多,也应该把一个薄的塔固定在一个宽的塔上。你也可以将它随机化一点,这样你肯定会得到一些不同的图片。
过滤器示例:
// we set the linear texture filter to improve the stretching
splashTexture.setFilter( TextureFilter.Linear, TextureFilter.Linear );
从本教程
中还可以查看 libgdx 中的此条目:了解您的纹理过滤器!
但这只是我的看法。
要找出默认情况下使用的过滤器,请查看Texture
方法。
getMagFilter();
getMinFilter()
因为您像这样设置过滤器:
setFilter(Texture.TextureFilter minFilter, Texture.TextureFilter magFilter)