Libgdx 地图闪烁 - 如何轻松地将 Border/Padding 添加到现有的 Tileset
Libgdx Maps Flickering - How to easily add Border/Padding to existing Tileset
我在使用 Libgdx 和 Tiled Maps 时遇到一些众所周知的问题,当玩家移动时我的地图会闪烁(相机跟随玩家)。
我搜索了答案并发现所有地图都这样做,并且要解决这个问题,您必须使用 4 个填充、2 个边框和重复边框(或某些工具中的挤压边框)来打包您的 sprite。使用libgdx自带的texturepacker,你可以打包你的图片,只要你先分割然后加上padding/border。但是,它们随机放置在 tileset 中,使得制作地图变得更加困难(您需要查看按原始顺序分组的 tiles)
我的问题是,我已经尝试这样做了几天,但从未完成。我有一个输入图块集,它是 32x32px。所以我到目前为止尝试的是:
我得到的最接近的是:从 tileset 中解压缩所有 32x32 图像,然后使用某种工具再次打包。
第一个问题是我使用的所有图像解包器(拆分器)都没有将透明度应用于背景,并且一些 tileset 非常详细,很难正确处理。
第二个问题是,当我想打包它时,大多数工具不提供顺序,所以我丢失了 tileset 配置(这在制作地图时非常重要)。
有人可以告诉我如何轻松完成吗?我真的需要浪费几天的时间才能让 tileset 在 Libgdx 中看起来不错吗?
我只需要将 border/padding 添加到 tileset 中,保持其原始位置。
我确定我缺少某些东西,它不会那么难。
谢谢
我也有和你一样的情况。
这是我一步一步做的:
- Split/Unpack 使用 Alferd-Spritesheet-Unpacker 将精灵 sheet 转换为单独的图像。该过程还将对背景应用透明度。您可以使用任何您喜欢的软件,只要它能完成工作即可。
Second problem is that when i want to pack it, most tools dont provide order, so i loose the tileset configuration
在重新打包之前,您按 字母顺序 重命名每个图像,这样 Texture Packer 将按字母顺序相应地对图像进行排序。
例如:walk_1.png、walk_2.png、walk_3.png 等等..
- 使用 LibGDX Texture Packer(这个有一个 GUI 版本)重新打包图像。这里的技巧是添加图像的填充,如下所示。
- 这是最重要的步骤。现在您已经完成了图像的重新打包。将精灵 sheet 添加到 Tileset 中并配置
边距 和间距。如果您的精灵从一开始就没有填充,请不要担心。 TiledMap 将对其进行配置。现在完成了。
好的,到目前为止我找到的更简单的方法是使用 Gimp 插件。
registry.gimp.org/node/26044
它允许您添加边框、装订线(在这种情况下,是其他工具的 dupplicatePadding 或 Extrude),也可以删除它。
工作起来很有魅力,一步就完成了工作。
要使用该插件,请将其添加到您的文件夹(在 windows、User/gimp/scripts 中)或查看文档。
所以在平铺配置中我使用
在 Gimp 插件中我使用了这个配置(菜单 -> 过滤器 -> Sprite Sheet -> 添加装订线)
我在使用 Libgdx 和 Tiled Maps 时遇到一些众所周知的问题,当玩家移动时我的地图会闪烁(相机跟随玩家)。
我搜索了答案并发现所有地图都这样做,并且要解决这个问题,您必须使用 4 个填充、2 个边框和重复边框(或某些工具中的挤压边框)来打包您的 sprite。使用libgdx自带的texturepacker,你可以打包你的图片,只要你先分割然后加上padding/border。但是,它们随机放置在 tileset 中,使得制作地图变得更加困难(您需要查看按原始顺序分组的 tiles)
我的问题是,我已经尝试这样做了几天,但从未完成。我有一个输入图块集,它是 32x32px。所以我到目前为止尝试的是:
我得到的最接近的是:从 tileset 中解压缩所有 32x32 图像,然后使用某种工具再次打包。 第一个问题是我使用的所有图像解包器(拆分器)都没有将透明度应用于背景,并且一些 tileset 非常详细,很难正确处理。 第二个问题是,当我想打包它时,大多数工具不提供顺序,所以我丢失了 tileset 配置(这在制作地图时非常重要)。
有人可以告诉我如何轻松完成吗?我真的需要浪费几天的时间才能让 tileset 在 Libgdx 中看起来不错吗?
我只需要将 border/padding 添加到 tileset 中,保持其原始位置。
我确定我缺少某些东西,它不会那么难。
谢谢
我也有和你一样的情况。 这是我一步一步做的:
- Split/Unpack 使用 Alferd-Spritesheet-Unpacker 将精灵 sheet 转换为单独的图像。该过程还将对背景应用透明度。您可以使用任何您喜欢的软件,只要它能完成工作即可。
Second problem is that when i want to pack it, most tools dont provide order, so i loose the tileset configuration
在重新打包之前,您按 字母顺序 重命名每个图像,这样 Texture Packer 将按字母顺序相应地对图像进行排序。
例如:walk_1.png、walk_2.png、walk_3.png 等等..
- 使用 LibGDX Texture Packer(这个有一个 GUI 版本)重新打包图像。这里的技巧是添加图像的填充,如下所示。
- 这是最重要的步骤。现在您已经完成了图像的重新打包。将精灵 sheet 添加到 Tileset 中并配置 边距 和间距。如果您的精灵从一开始就没有填充,请不要担心。 TiledMap 将对其进行配置。现在完成了。
好的,到目前为止我找到的更简单的方法是使用 Gimp 插件。
registry.gimp.org/node/26044
它允许您添加边框、装订线(在这种情况下,是其他工具的 dupplicatePadding 或 Extrude),也可以删除它。
工作起来很有魅力,一步就完成了工作。 要使用该插件,请将其添加到您的文件夹(在 windows、User/gimp/scripts 中)或查看文档。
所以在平铺配置中我使用
在 Gimp 插件中我使用了这个配置(菜单 -> 过滤器 -> Sprite Sheet -> 添加装订线)