繁体   English   中英

LibGDX TiledMap从舞台粘贴到相机

[英]LibGDX TiledMap stuck to camera from Stage

我有一个带有舞台和TiledMap的屏幕。 地图可以很好地渲染,但是尝试移动相机不会对地图做任何事情。 在下面的代码中,摄像机被向右移动,结果图像在屏幕上左移,但地图仍“粘”在屏幕上。

之前

大约半秒钟后

public class TestScreen implements Screen{
private Stage stage;

private TiledMap testMap;
private OrthogonalTiledMapRenderer mapRenderer;
private Image image;

public TestScreen() {
    stage = new Stage(new StretchViewport(GameBase.WIDTH, GameBase.HEIGHT));

    testMap = GameBase.assets.getLevel("level25");

    image = new Image(GameBase.assets.getTexture("sleuth"));
    stage.addActor(image);
    mapRenderer = new OrthogonalTiledMapRenderer(testMap, 1f);
    mapRenderer.setView(stage.getCamera().combined, 0, 0, GameBase.WIDTH, GameBase.HEIGHT);
    image.setOrigin(Align.center);
}

@Override
public void show() {    
    // TODO Auto-generated method stub

}

@Override
public void render(float delta) {
    image.rotateBy(2);

    stage.getCamera().position.x += 5;
    stage.getCamera().update();

    mapRenderer.render();
    stage.act(delta);
    stage.draw();
}

@Override
public void resize(int width, int height) {
    stage.getViewport().update(width, height, true);
}

您必须调用mapRenderer.setView(stage.getCamera()); 在每一帧上更新图块地图上的视图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM