【问题标题】:libgdx- padding didn't solve black lines on tilemaplibgdx- padding 没有解决 tilemap 上的黑线
【发布时间】:2017-12-09 18:56:01
【问题描述】:

我阅读了所有关于在 libgdx 上渲染瓷砖地图时屏幕上显示黑线问题的数百万篇文章。所有的解决方案都在讨论向瓦片集添加填充。所以我做到了,但它并没有解决问题。 我想可能是我没看明白,所以我会在这里发布我正在做的过程,如果有人能指出我的错误,我会很高兴:

这是我的初始图块集的图像:

这是使用this 帖子建议的 GIMP 插件添加填充后我的图块集的图像:

然后在 Tiled 中,我添加这个图块集并将 Margin 设置为 1px,Spacing 设置为 2px,就像在 this 帖子中所写的那样。

现在我知道问题应该解决了,但是当我运行程序时仍然得到:

如果你愿意,我可以添加代码部分,但我渲染地图的方式并没有什么特别之处——只需使用 TmxMapLoader 加载它并使用 MapRenderer 渲染(当然,也使用相机,否则问题不会出现) .

【问题讨论】:

  • 我想你理解错了,让我给你一个提示,如果你使用正确的插件,你可以在每个图块的 4 个维度中得到一个重复的边框像素。你需要做的就是多玩插件,观察输出的图像,找到我说的效果。
  • 我想我想通了——在插件中,我应该将“Gutter”选项设置为“yes”,这样会生成带有重复边框的填充,而不是像以前那样的透明填充
  • 干得好,你明白了!

标签: java libgdx lines tiled


【解决方案1】:

我知道这个帖子很老了,但我自己花了两个小时才弄清楚解决方案。所以万一以后有人遇到同样的问题:

我注意到只有一些图块的行为是这样的 - 例如,草图块会,水图块不会。即使它们被用于地图中完全相同的位置。 对我来说,问题是 - 显然 - 我的 PNG tile sheet 的高度不是 2 的幂。几天前,我在现有的 tilesheet 中添加了一条线,并将高度从 1024px 更改为 1056px。经过大量的实验,我发现再次删除这条线后,黑色条纹就会消失。

【讨论】:

    【解决方案2】:

    像这样加载你的地图:

    TmxMapLoader.Parameters() params = new TmxMapLoader.Parameters();
    params.generateMipMaps = true;
    
    TmxMapLoader mapLoader = new TmxMapLoader();
    TiledMap map = mapLoader.load("pathToMap", params);
    

    【讨论】:

      【解决方案3】:

      我遇到了同样的问题,我通过将 spritesheet 的大小更改为 2 的幂来解决了这个问题 示例:

      • 640*640 --> 错误
      • 512*512 --> 对

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-09-16
        • 2015-10-30
        • 2011-01-14
        • 2022-09-25
        • 2015-04-12
        • 1970-01-01
        相关资源
        最近更新 更多