我试图在Android上制作带有Tiled地图支持的游戏,桌面版本运行正常, 但在Android上它显示黑屏,在LogCat中没有错误。我的设备支持GLES2.0并且运行的是Android 4.4。
我尝试减少了瓷砖地图中的图层数量并使其变小,没有效果。
Init方法:
w = Gdx.graphics.getWidth();
h = Gdx.graphics.getHeight();
tileW = w / 64f;
tileH = h / 64f;
x = tileW;
y = tileH;
camera = new OrthographicCamera();
camera.setToOrtho(false, w / 64f, h / 64f);
camera.zoom = 2;
camera.update();
assetManager = new AssetManager();
map = loadMap();
renderer = new OrthogonalTiledMapRenderer(map, 1f / 64f);
渲染方法:
Gdx.gl.glClearColor(100f / 255f, 100f / 255f, 250f / 255f, 1f);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
if(viewResized()) resetCamera();
calculateSpeed();
//updating camera position
renderer.setView(camera);
renderer.render();
地图加载:
assetManager.setLoader(TiledMap.class, new TmxMapLoader(new InternalFileHandleResolver()));
assetManager.load("map.tmx", TiledMap.class);
assetManager.finishLoading();
map = assetManager.get("map.tmx");
MapProperties prop = map.getProperties();
//Calculate some stuff from properties
return map;
答案 0 :(得分:1)
原来它是由纹理大小引起的,tileset太大了。