Ich versuche, eine Karte in LibGDX zu zeichnen. Die Karte wird in Tiled erstellt.LibGDX - Tiled nicht gesamte Karte
Problem: Klicken Sie auf here, um ein Bild zu sehen, wie meine Karte während der Wiedergabe aussieht. Und this Bild ist was ich versuche zu rendern. Ich habe versucht, eine frisch geflieste Karte mit nur einer Schicht Gras und ein paar Blumen zu machen, wenn ich versuche, das darzustellen, erscheint überhaupt nichts. Wie kann ich das beheben, um meine gesamte Tiled-Map zu rendern?
Jede Hilfe wird geschätzt!
Code:
Spielklasse
private GameScreen screen;
@Override
public void create()
{
setScreen(new GameScreen());
}
@Override
public void render()
{
super.render();
screen.render(Gdx.graphics.getDeltaTime());
}
@Override
public void dispose()
{
super.dispose();
screen.dispose();
}
@Override
public void resize(int width, int height)
{
super.resize(width, height);
screen.resize(width, height);
}
@Override
public void pause()
{
super.pause();
screen.pause();
}
@Override
public void resume()
{
super.resume();
screen.resume();
}
public void setScreen (GameScreen screen)
{
if (this.screen != null)
this.screen.hide();
this.screen = screen;
if (this.screen != null)
{
this.screen.show();
this.screen.resize(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
}
}
GameScreen Klasse
private TmxMapLoader mapLoader;
private TiledMap map;
private OrthogonalTiledMapRenderer mapRenderer;
private OrthographicCamera camera;
private FitViewport viewPort;
public GameScreen()
{
camera = new OrthographicCamera(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
camera.setToOrtho(false);
camera.update();
viewPort = new FitViewport(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
viewPort.setScreenPosition((int) (Gdx.graphics.getWidth() * 0.5f), (int) (Gdx.graphics.getHeight() * 0.5f));
mapLoader = new TmxMapLoader();
map = mapLoader.load("maps/town.tmx");
mapRenderer = new OrthogonalTiledMapRenderer(map);
}
@Override
public void show()
{
}
public void input()
{
}
public void update(float delta)
{
input();
camera.update();
mapRenderer.setView(camera);
}
@Override
public void render(float delta)
{
update(delta);
Gdx.gl.glClearColor(0, 0, 0, 1);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
mapRenderer.render();
}
@Override
public void resize(int width, int height)
{
viewPort.update(width, height);
}
@Override
public void pause()
{
}
@Override
public void resume()
{
}
@Override
public void hide()
{
}
@Override
public void dispose()
{
map.dispose();
mapRenderer.dispose();
}