如何使用TexturePacker2将图像打包到一个.png文件中?

时间:2013-10-30 01:56:42

标签: libgdx

现在我打包这样的图片:

TexturePacker2.Settings settings = new TexturePacker2.Settings();
settings.flattenPaths = true;
settings.combineSubdirectories = true;
TexturePacker2.process(directory, "pack", atlasName);

但如果directory中有许多子目录,那么每个子目录TexturePacker2都会创建一个单独的.png文件,后缀为1,2,3,依此类推。如何告诉它将所有子目录中的所有图像打包成一个.png文件?

2 个答案:

答案 0 :(得分:1)

有关TexturePacker2的更多信息,请参阅this link。将每个子目录放在一个自己的packfile中是默认行为,因为大多数时候你不希望一个文件中的所有内容,因为它会变得太大。这样,您可以组织纹理。避免这种行为的一种非常简单的方法是将所有内容放入一个目录中,然后使用gdx-texturepacker.jar UI来打包它,告诉它使用最大宽度/高度4096或甚至更多。尽管如此,用户界面并未向您提供combineSubdirectoriesflattenPaths

因此,采用“代码方式”是正确的选择。这为您提供了TexturePacker2的所有可能性。它还允许您通过在maxWidth中设置maxHeightTexturePacker2.Settings来定义一个页面的最大大小。如果这足够高,封隔器将不需要创建多个页面。

答案 1 :(得分:1)

而不是:

TexturePacker2.process(directory, "pack", atlasName);

你应该使用:

TexturePacker2.process(settings, directory, "pack", atlasName);