java - 如何使用LIBGDXTexturePacker2?

标签 java libgdx texturepacker

我在使用TexturePacker2类时遇到困难...有人可以澄清我做错了什么吗?

我有一个名为 basics 的输入目录和一个名为 output 的输出目录。

这是我的输入目录:

这是我通过源使用 TexturePacker2 并将输入目录、输出目录和“basics.pack”作为参数后的输出:

然后,我将输出中的所有文件和旧的 .tmx 文件复制到我的 libgdx 项目的 asset/data/tiles 文件夹中:

最后,我尝试使用以下代码将所有内容加载到我的程序中,这也显示了我在底部遇到的错误:

我有两个担忧:

1) 不应该使用TexturePacker2 在我的输出目录中创建更新的.tmx 文件吗?

2)为什么找不到我的包文件(这是我的主要问题......它在同一目录中找到其他文件完全没问题)。

预先表示衷心感谢!

最佳答案

您的方式对于 tmx 文件来说已经过时了。不再有 TiledAtlas 了。如果您使用旧版本,只需使用常规的 TmxMapLoader 即可,无需打包您的图形。

这是一个如何加载 Tilemap 的简单示例:

TmxMapLoader load = new TmxMapLoader();
TiledMap map = load.load("path/to/file");

您甚至可以将其与 Assetmanager 结合使用:

assetmanager.setLoader(TiledMap.class, new TmxMapLoader(
            new InternalFileHandleResolver()));

请查看我在这个问题上所做的答案,以获取有关纹理内容所需位置以及如何更改 .tmx 内部文件路径等的更多信息:
tmxmaploader-to-use-packed-tileset

关于java - 如何使用LIBGDXTexturePacker2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18500999/

相关文章:

java - 在socket编程中如何判断服务器发送数据成功?

java - 如何在 SpringBootTest 中模拟 Spring 的 @Retryable 属性,例如 maxAttemps 和延迟

java - MappedByteBuffer中的 "put"和 "force"有什么区别?

java - Android libgdx如何避免静态方法和枚举

java - 如何在 libgdx 中计算按钮按下和按钮释放之间的时间

ios - 当 Cocos2D 2.0 支持 NPOT 纹理时,为什么要使用纹理图集?

Java - 如何停止另一个类的音频剪辑

opengl-es - 在 glsl 着色器中合成两个 alpha 纹理

android - 使用 AndEngine 播放动画

objective-c - Cocos2d - 使用TexturePacker创建的.pvr.ccz spritesheet(位置不正确,模糊)的问题