LibGdx Assetmanager加载无效行

神话1c

当我尝试通过AssetManager加载TextureAtlas时,它将引发以下异常:

Exception in thread "LWJGL Application" com.badlogic.gdx.utils.GdxRuntimeException: com.badlogic.gdx.utils.GdxRuntimeException: Error reading pack file: data/atlas/mainmenu
at com.badlogic.gdx.assets.AssetManager.handleTaskError(AssetManager.java:517)
at com.badlogic.gdx.assets.AssetManager.update(AssetManager.java:351)
at com.badlogic.gdx.assets.AssetManager.finishLoading(AssetManager.java:372)
at nl.gameplayinc.tubularballs.util.Assets.load(Assets.java:31)
at nl.gameplayinc.tubularballs.util.Assets.create(Assets.java:24)
at nl.gameplayinc.tubularballs.screen.SplashScreen.show(SplashScreen.java:28)
at com.badlogic.gdx.Game.setScreen(Game.java:62)
at nl.gameplayinc.tubularballs.TubularBalls.setScreen(TubularBalls.java:70)
at nl.gameplayinc.tubularballs.TubularBalls.create(TubularBalls.java:27)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:136)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:114)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Error reading pack file: data/atlas/mainmenu
at com.badlogic.gdx.graphics.g2d.TextureAtlas$TextureAtlasData.<init>(TextureAtlas.java:177)
at com.badlogic.gdx.assets.loaders.TextureAtlasLoader.getDependencies(TextureAtlasLoader.java:58)
at com.badlogic.gdx.assets.loaders.TextureAtlasLoader.getDependencies(TextureAtlasLoader.java:34)
at com.badlogic.gdx.assets.AssetLoadingTask.handleSyncLoader(AssetLoadingTask.java:98)
at com.badlogic.gdx.assets.AssetLoadingTask.update(AssetLoadingTask.java:87)
at com.badlogic.gdx.assets.AssetManager.updateTask(AssetManager.java:454)
at com.badlogic.gdx.assets.AssetManager.update(AssetManager.java:349)
... 9 more
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Invalid line: mainmenu.png
at com.badlogic.gdx.graphics.g2d.TextureAtlas.readValue(TextureAtlas.java:425)
at com.badlogic.gdx.graphics.g2d.TextureAtlas$TextureAtlasData.<init>(TextureAtlas.java:110)
... 15 more

当我正常加载地图集时(使用:)new TextureAtlas("data/atlas/mainmenu/mainmenu.atlas";)就可以了。我需要资产管理器通过resolutionfileresolver加载文件,因此进行了以下设置:

public void create()
{
    Resolution _568x1136 = new Resolution(568, 1136, ".568x1136");

    ResolutionFileResolver resolver = new ResolutionFileResolver(new InternalFileHandleResolver(), _568x1136);

    manager = new AssetManager();
    manager.setLoader(TextureAtlas.class, new TextureAtlasLoader(resolver));
    load();
}

private void load()
{
    manager.load("data/atlas/mainmenu", TextureAtlas.class);
    manager.finishLoading();
}

发生在 manager.load("data/atlas/mainmenu", TextureAtlas.class);

我的.atlas文件位于assets \ data \ atlas \ mainmenu \ mainmenu.atlas。它指向第一行的png是mainmenu.png,它位于同一目录中,因为它可以找到带有'mainmenu.png的行。 '我以为它也找到了正确的地图集文件。

我也尝试添加分辨率扩展名(mainmenu.atlas.568x1136和mainmenu.png.568x1136),但结果相同。

我已经搜索了很多地方以寻求帮助,但似乎无法在任何地方找到我的问题。

如果有人可以帮助我,我将不胜感激!

另外,我似乎在ResolutionFileResolver上找不到很多信息。哪些文件应该具有分辨率扩展名(我同时给了它的地图集和img文件),并且与手动添加扩展名相比,有没有一种更简单的方法来生成分辨率资源?

编辑添加了mainmenu.atlas

mainmenu.png
format: RGBA8888
filter: Nearest,Nearest
repeat: none
background
rotate: false
xy: 2, 617
size: 640, 1136
orig: 640, 1136
offset: 0, 0
index: -1
btnbuy
rotate: false
xy: 2, 537
size: 414, 78
orig: 414, 78
offset: 0, 0
index: -1
btncredits
rotate: false
xy: 2, 457
size: 414, 78
orig: 414, 78
offset: 0, 0
index: -1
btnhighscores
rotate: false
xy: 2, 58
size: 414, 77
orig: 414, 77
offset: 0, 0
index: -1
btninfo
rotate: false
xy: 2, 377
size: 414, 78
orig: 414, 78
offset: 0, 0
index: -1
btnmute
rotate: false
xy: 418, 537
size: 94, 78
orig: 94, 78
offset: 0, 0
index: -1
btnnewgame
rotate: false
xy: 2, 297
size: 414, 78
orig: 414, 78
offset: 0, 0
index: -1
btnrate
rotate: false
xy: 755, 1329
size: 58, 424
orig: 58, 424
offset: 0, 0
index: -1
btnresumegame
rotate: false
xy: 2, 217
size: 414, 78
orig: 414, 78
offset: 0, 0
index: -1
btntutorial
rotate: false
xy: 2, 137
size: 414, 78
orig: 414, 78
offset: 0, 0
index: -1
btnunmute
rotate: false
xy: 815, 1675
size: 94, 78
orig: 94, 78
offset: 0, 0
index: -1
display
rotate: false
xy: 2, 2
size: 343, 54
orig: 343, 54
offset: 0, 0
index: -1
longtube
rotate: false
xy: 644, 617
size: 109, 1136
orig: 109, 1136
offset: 0, 0
index: -1
没有人

“当我正常加载地图集时(使用:new TextureAtlas(“ data / atlas / mainmenu / mainmenu.atlas ”);),效果很好。

“异常发生在manager.load(“ data / atlas / mainmenu ”,TextureAtlas.class);“

“我的.atlas文件位于asset \ data \ atlas \ mainmenu \ mainmenu.atlas中

.atlas在调用packfile时添加到路径mainmenu.atlas,而不仅仅是mainmenu

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

libgdx assetmanager纹理加载

来自分类Dev

Libgdx:AssetManager未加载资产

来自分类Dev

LibGdx-从Assetmanager加载皮肤

来自分类Dev

AssetManager libgdx

来自分类Dev

使用AssetManager的Libgdx FreeTypeFontGenerator

来自分类Dev

LibGDX AssetManager:资产不会仅在Android上加载

来自分类Dev

正确处理LibGDX AssetManager

来自分类Dev

在libgdx中使用AssetManager类

来自分类Dev

LibGDX 正确使用 AssetManager 的方法

来自分类Dev

即使已加载我的文件(Android Studio,libGDX,Java),AssetManager.get()也返回null

来自分类Dev

libGDX将所有图像从目录中循环加载到AssetManager中,需要很长时间

来自分类Dev

LibGDX AssetManager 在模拟器上加载 .wav 文件,但不在移动设备上

来自分类Dev

加载图片libgdx

来自分类Dev

异步加载屏幕Libgdx

来自分类Dev

异步加载屏幕Libgdx

来自分类Dev

LibGdx resolutionFileResolver + Assetmanager,文件名?

来自分类Dev

libgdx AssetManager.finishLoading()无法正常工作

来自分类Dev

如何使用AssetManager在libGDX中构建ResourceManager

来自分类Dev

LibGDX中的行大小

来自分类Dev

在Libgdx中加载磁贴纸

来自分类Dev

无法加载简单的图像。Libgdx

来自分类Dev

libgdx robovm音乐加载错误

来自分类Dev

LIbgdx-为什么AssetManager无法正常工作?

来自分类Dev

LibGDX-绘制到FrameBuffer无效

来自分类Dev

LibGDX-绘制到FrameBuffer无效

来自分类Dev

TextureRegion在LibGDX中加载整个TextureAtlas

来自分类Dev

在libgdx中加载大背景的最佳方法

来自分类Dev

libgdx 1.5.5,帮助字体加载-.ttf

来自分类Dev

如何使用libgdx获取“加载屏幕”?