其他分享
首页 > 其他分享> > 如何删除平铺纹理之间的间隙?

如何删除平铺纹理之间的间隙?

作者:互联网

我正在使用LibGDX制作平台游戏.我正在为平台使用方形瓷砖,但是当它们被绘制时,它们中的一些在它们之间存在间隙.当我放大/缩小或移动相机移动间隙移动位置.

更多细节:

>瓷砖是32×32,我尝试了32×32和64×64.
>瓦片排列成32个像素(例如,第一个瓦片将是x = 0 y = 0,第二个x = 32 y = 0,依此类推,在x和y方向上都是如此).
>差距不是纹理伪像,因为我已经检查了这个.
>我使用带填充的TexturePacker.

我最好的猜测是,将纹理转换为屏幕坐标是一个问题,但不知道如何解决这个问题,我找不到任何解决方案.我已经检查并用瓷砖尺寸仔细检查了我的精度并将它们排成一行.

有没有人有同样的问题或知道如何解决它?

解决方法:

我通过将TexturePacker.Settings类的duplicatePadding字段设置为true来修复它.

示例代码:

import com.badlogic.gdx.tools.texturepacker.TexturePacker;
import com.badlogic.gdx.tools.texturepacker.TexturePacker.Settings;

Settings settings = new Settings();
settings.maxWidth = 1024;
settings.maxHeight = 1024;
settings.duplicatePadding = true;

TexturePacker.process(settings, "source", "destination", "name");

标签:java,libgdx,textures,tile,sprite
来源: https://codeday.me/bug/20190930/1836848.html