我正在尝试渲染我使用地图编辑器Tiled创建的OrthogonalTiledMap,但由于某种原因,我的游戏画面中没有显示任何内容;我得到的只是一张黑色图像。我正在使用Libgdx框架,该框架具有已经构建的这些类型的地图的功能,但是他们不能为我工作。
Libdgx还提供了一个呈现OrthogonalTiledMaps的示例,但是它已经过时但我将其调整为当前的Libdgx版本,但正如已经说明的那样它不起作用。
没有错误或异常被抛出。 .tmx文件也不包含任何错误。所有使用的tileset都存在且不会导致任何错误。
这是我的代码: `
public class My_Game extends ApplicationAdapter {
private TiledMap map;
private TiledMapRenderer renderer;
private OrthographicCamera camera;
private CameraInputController cameraController;
@Override
public void create () {
float w = Gdx.graphics.getWidth();
float h = Gdx.graphics.getHeight();
camera = new OrthographicCamera();
camera.setToOrtho(true, w/8f, h/8f);
camera.update();
cameraController = new CameraInputController(camera);
Gdx.input.setInputProcessor(cameraController);
map = new TmxMapLoader().load("map.tmx");
renderer = new OrthogonalTiledMapRenderer(map, 1f / 8f);
}
@Override
public void render () {
camera.update();
renderer.setView(camera);
renderer.render();
}
@Override
public void dispose () {
map.dispose();
}
}`
答案 0 :(得分:0)
我做了Libgdx已经有一段时间了,所以我可能会想到别的东西,但是你不必在render()函数中做一些清算吗? 尝试添加:
Gdx.gl.glClearColor(1, 0, 0, 1);
Gdx.gl.glBlendFunc(GL20.GL_SRC_ALPHA, GL20.GL_ONE_MINUS_SRC_ALPHA);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
作为前三行,让我知道这是否有帮助。