@Override public void render(float delta) { Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); camera.update(); sprite.setProjectionMatrix(camera.combined); mLevel.getTiledMapRenderer().getProjectionMatrix().set(camera.combined); Vector3 tmp = new Vector3(); tmp.set(0, 0, 0); camera.unproject(tmp); mLevel.getTiledMapRenderer().render(tmp.x, tmp.y, camera.viewportWidth, camera.viewportHeight); sprite.begin(); ... sprite.end(); }
Here is what I get when starting the desktop version:
Exception in thread "LWJGL Application" java.lang.IllegalArgumentException: Number of remaining buffer elements is 0, must be at least 1. Because at most 1 elements can be returned, a buffer with at least 1 elements is required, regardless of actual returned element count at org.lwjgl.BufferChecks.throwBufferSizeException(BufferChecks.java:162) at org.lwjgl.BufferChecks.checkBufferSize(BufferChecks.java:189) at org.lwjgl.BufferChecks.checkBuffer(BufferChecks.java:230) at org.lwjgl.opengl.GL15.glBufferData(GL15.java:141) at com.badlogic.gdx.backends.lwjgl.LwjglGL20.glBufferData(LwjglGL20.java:93) at com.badlogic.gdx.graphics.glutils.VertexBufferObject.bind(VertexBufferObject.java:208) at com.badlogic.gdx.graphics.Mesh.bind(Mesh.java:268) at com.badlogic.gdx.graphics.g2d.SpriteCache.begin(SpriteCache.java:868) at com.badlogic.gdx.graphics.g2d.tiled.TileMapRenderer.render(TileMapRenderer.java:336) at com.badlogic.gdx.graphics.g2d.tiled.TileMapRenderer.render(TileMapRenderer.java:286) at com.crunsh.libgdx.screens.GameScreen.render(GameScreen.java:102) at com.badlogic.gdx.Game.render(Game.java:46) at com.badlogic.gdx.backends.lwjgl.LwjglApplication.mainLoop(LwjglApplication.java:202) at com.badlogic.gdx.backends.lwjgl.LwjglApplication$1.run(LwjglApplication.java:131)
I tried both the tuton and this , and I get the same error in the same line mLevel.getTiledMapRenderer().render(tmp.x, tmp.y, camera.viewportWidth, camera.viewportHeight); , camera.viewportWidth, camera.viewportHeight).; .
EDIT: I just noticed that the data in my .tmx file was automatically encoded in the Tiled Map Editor, so I just deactivated it, but still get the same error.
If I copy / paste this project (I mean the whole project, not just the render () method), but when I try to load my own map in my own project, it just crashes ...
So, after that, I decided to simplify my render() method by simply following the link I gave earlier and using the TiledMapHelper class that the author provides, so now there is my render() method:
mHelper.getCamera().update(); mHelper.render();
More crashiiiiiiiiiiiiiiiingg .....
If someone can provide some help, it will be very grateful, because I'm really going crazy!