2013-06-07 1 views
1

Я пытаюсь добавить карту в свое приложение libgdx в качестве доказательства концепции. Кажется, что независимо от того, как я делаю пакетный файл, конструктор com.badlogic.gdx.graphics.g2d.tiled.TileAtlas не будет правильно его читать. Моя карта плитки проста и имеет только 2 плитки, и как внешняя gui, так и внутренняя система будут генерировать упакованный файл.Android Libgdx TileAtlas

В этом случае проблема заключается в том, что я называю файл packfile с именем файла, соответствующим одному из моих изображений, для соответствия строке 2 ниже или ошибкам метода. Если я добавлю 2 packfiles, по одному для каждого имени изображения в моем наборе плиток, я считаю, что Atlas не построена правильно в памяти. Что мне здесь не хватает? Должна ли когда-нибудь быть одна плитка в виде плитки?

код из Libgdx:

for (TileSet set : map.tileSets) { 
     FileHandle packfile = getRelativeFileHandle(inputDir, removeExtension(set.imageName) + " packfile"); 
     TextureAtlas textureAtlas = new TextureAtlas(packfile, packfile.parent(), false); 
     Array<AtlasRegion> atlasRegions = textureAtlas.findRegions(removeExtension(removePath(set.imageName))); 
     for (AtlasRegion reg : atlasRegions) { 
      regionsMap.put(reg.index + set.firstgid, reg); 
      if (!textures.contains(reg.getTexture())) { 
       textures.add(reg.getTexture()); 
      } 
     } 
    } 

ответ

1

com.badlogic.gdx.graphics.g2d.tiled -> Похоже, вы используете старый плиточный API. Я даже не думаю, что пакет уже существует, поэтому вы, вероятно, должны скачать более новую версию.

Отъезд blog article. Я еще не использовал новый API, но с быстрым взглядом выглядит much проще для загрузки карт.

+0

Спасибо, это была огромная помощь, обратите внимание на себя, работая с открытым исходным кодом, всегда находите самое последнее. – Tyler