LibGDX 中的纹理图集



我正在尝试加载一个 png 文件,但我不知道为什么它不起作用,因为我已经检查了文件路径并使用 TexturePacker 制作纹理图集。同一路径中的其他图像工作正常。任何帮助将不胜感激。

SpriteBatch batch;
Texture img, img2, img4;
private Player player, player2;
private Texture start, continued;
TextureRegion my, my2, my3;
TextureRegionDrawable myt, myt2, myt3;
Button button, button2;
Stage stage, stage2;
String fonte, starte, opcoes;
BitmapFont yesa, funciona;
Image ima;
Texture img3;
Sprite spider;
TextureAtlas textatlas;
FileHandle f;

public void create(){
Stage stage = new Stage();
OrthographicCamera camera = new OrthographicCamera();
camera.setToOrtho(false, 800, 480);
batch = new SpriteBatch();
textatlas = new TextureAtlas("TA/Agorafunfa.png");
TextureAtlas.AtlasRegion a = textatlas.findRegion("spider");
spider = new Sprite(a);
//player2 = new Player("spider.png", Info.WIDTH / 2, Info.HEIGHT / 2);
player = new Player("playerr.png", Info.WIDTH / 2, Info.HEIGHT / 2);
img = new Texture("Captura.PNG");
myt = new TextureRegionDrawable(my);
yesa = new BitmapFont(Gdx.files.internal("yesa.fnt"));
fonte = "Escape Planet";
img2 = new Texture("comeca.png");
img4 = new Texture("comeca.png");
img3 = new Texture("saturno.png");
ima = new Image(img3);
myt2 = new TextureRegionDrawable(my2);
funciona = new BitmapFont(Gdx.files.internal("yesa.fnt"));
starte = "Começar";
myt3 = new TextureRegionDrawable(my3);
opcoes = "Opções";
TextureRegion tx = new TextureRegion(img2);
Drawable dr = new TextureRegionDrawable(tx);
}

发生以下错误:

Exception in thread "LWJGL Application" 
com.badlogic.gdx.utils.GdxRuntimeException: Error reading pack file: 
TA/Agorafunfa.png
at com.badlogic.gdx.graphics.g2d.TextureAtlas$TextureAtlasData.<init> 
(TextureAtlas.java:187)
at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:231)
at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:226)
at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init>(TextureAtlas.java:216)
at com.badlogic.gdx.graphics.g2d.TextureAtlas.<init> 
(TextureAtlas.java:211)
at com.mygdx.game.MyGdxGame.create(MyGdxGame.java:63)
at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop
(LwjglApplication.java:149)
at 
com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run
(LwjglApplication.java:126)
Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Invalid line: 
at 
com.badlogic.gdx.graphics.g2d.TextureAtlas.readTuple(TextureAtlas.java:443)
at com.badlogic.gdx.graphics.g2d.TextureAtlas$TextureAtlasData.<init> 
(TextureAtlas.java:115)... 7 more

创建纹理图集后,您应该得到 2 个文件:.png图像和图集文件具有相同的名称和扩展名,如.atlas.pack

所以你应该使用这个文件。

可能:

textatlas = new TextureAtlas("TA/Agorafunfa.atlas"); // Or Agorafunfa.pack or simillar

最新更新