我正在尝试在Android设备上渲染平铺地图。但是,当我在Android手机上对其进行测试时,只有最顶层显示在屏幕上(总共两层)。有没有办法解决这个问题?我正在使用Libgdx以及Tiled Map Editor。
以下是我的项目的一些代码,这些代码实现了Screen界面。省略的代码对于该问题不是必需的,但是可以根据需要显示。
public class Play implements Screen {
public void render(float delta) {
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
renderer.setView(cam);
renderer.render();
/*code ommited*/
renderer.getSpriteBatch().begin();
animateAgent(time);
sr.setProjectionMatrix(cam.combined);
try {
animateBullets(sr);
} catch(IndexOutOfBoundsException e) {}
renderer.getSpriteBatch().end();
}
public void show() {
cam = new OrthographicCamera();
cam.setToOrtho(false);
cam.position.set(0,0,0);
cam.zoom = 8.0f;
cam.update();
map = new TmxMapLoader().load("data/batMap.tmx");
blocked = (TiledMapTileLayer) map.getLayers().get(1);
renderer = new OrthogonalTiledMapRenderer(map);
atlas = new TextureAtlas("data/specOps.txt");
agent = atlas.createSprites("agent");
/* code ommitted */
player = new Player(agent,blocked,bullets);
Gdx.input.setInputProcessor(player);
}
}
当前的外观如下:
这是它的外观:
最佳答案
您只能得到一层
blocked = (TiledMapTileLayer) map.getLayers().get(1);
还是在其他地方获得另一层?
关于java - 使用LibGdx在Android上渲染完整的平铺 map ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22651233/