我的 Tiled 地图未在 libgdx 中呈现
My Tiled map is not being rendered in libgdx
过去几天我一直在试图弄清楚我的代码有什么问题。我试图在 libgdx 中渲染一个瓦片地图 (.tmx),但它没有渲染,它只是显示一个没有错误的红色屏幕。我已经重写了几次代码,但总是得到相同的结果。
我的代码:
public class Main extends ApplicationAdapter {
SpriteBatch batch;
TiledMap map;
TmxMapLoader loader;
OrthogonalTiledMapRenderer renderer;
OrthographicCamera camera;
@Override
public void create () {
batch = new SpriteBatch();
loader = new TmxMapLoader();
map = loader.load("TiledMaps/TestMap.tmx");
renderer = new OrthogonalTiledMapRenderer(map);
camera = new OrthographicCamera();
camera.setToOrtho(false,Gdx.graphics.getWidth(),Gdx.graphics.getHeight());
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
camera.update();
renderer.setView(camera);
renderer.render();
batch.begin();
batch.end();
}
@Override
public void dispose () {
batch.dispose();
renderer.dispose();
map.dispose();
}
}
有人能找到这里发生的事情吗?我在 android assets 文件夹的 TileMaps 文件夹中有带有 tilesheet 的 tmx 文件。
感谢任何帮助,提前致谢。
如果我没理解错的话,你正在尝试一些复杂的事情(地图渲染)但是遇到了一个简单的问题(没有渲染任何东西)。
你有没有一个简单的程序,其中有一些渲染?构建它以便您有一些硬编码的图块渲染?进一步构建它以正确读取和显示地图中的第一个图块?在最终进一步扩展它以阅读和显示所有图块之前,一旦您知道基础知识是有效的?
这就是我解决这个问题的方式。多年来一直在编程,只是使用相同的过程让 CreateProcess 在 Windows 上以 C++ 运行。没有在我的代码中工作,所以我构建了一个空项目,它只在 notepad.exe 上运行 CreateProcess 并根据 whosebug.com 的答案进行调整,直到我让它工作,现在它是关于添加其他并发症位一点一点,这样我就不会因为一次承担太多而完全迷失。
过去几天我一直在试图弄清楚我的代码有什么问题。我试图在 libgdx 中渲染一个瓦片地图 (.tmx),但它没有渲染,它只是显示一个没有错误的红色屏幕。我已经重写了几次代码,但总是得到相同的结果。
我的代码:
public class Main extends ApplicationAdapter {
SpriteBatch batch;
TiledMap map;
TmxMapLoader loader;
OrthogonalTiledMapRenderer renderer;
OrthographicCamera camera;
@Override
public void create () {
batch = new SpriteBatch();
loader = new TmxMapLoader();
map = loader.load("TiledMaps/TestMap.tmx");
renderer = new OrthogonalTiledMapRenderer(map);
camera = new OrthographicCamera();
camera.setToOrtho(false,Gdx.graphics.getWidth(),Gdx.graphics.getHeight());
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
camera.update();
renderer.setView(camera);
renderer.render();
batch.begin();
batch.end();
}
@Override
public void dispose () {
batch.dispose();
renderer.dispose();
map.dispose();
}
}
有人能找到这里发生的事情吗?我在 android assets 文件夹的 TileMaps 文件夹中有带有 tilesheet 的 tmx 文件。
感谢任何帮助,提前致谢。
如果我没理解错的话,你正在尝试一些复杂的事情(地图渲染)但是遇到了一个简单的问题(没有渲染任何东西)。
你有没有一个简单的程序,其中有一些渲染?构建它以便您有一些硬编码的图块渲染?进一步构建它以正确读取和显示地图中的第一个图块?在最终进一步扩展它以阅读和显示所有图块之前,一旦您知道基础知识是有效的?
这就是我解决这个问题的方式。多年来一直在编程,只是使用相同的过程让 CreateProcess 在 Windows 上以 C++ 运行。没有在我的代码中工作,所以我构建了一个空项目,它只在 notepad.exe 上运行 CreateProcess 并根据 whosebug.com 的答案进行调整,直到我让它工作,现在它是关于添加其他并发症位一点一点,这样我就不会因为一次承担太多而完全迷失。