【发布时间】:2014-09-04 13:32:35
【问题描述】:
大家好,我一直在尝试将相机移动到地图的尽头,但它继续移动这是我的代码:
@Override
public void render(float delta) {
//moving tiled map
camera.position.x=camera.position.x+Gdx.graphics.getDeltaTime()*200;
camera.update();
//...........................................
Gdx.gl.glClearColor(1, 0, 0, 0);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
// renderer camera and map
renderer.setView(camera);
renderer.render();
//...................................................
}
@Override
public void show() {
batch = new SpriteBatch();
map = new TmxMapLoader().load("maps/map1.tmx");
renderer = new OrthogonalTiledMapRenderer(map);
camera = new OrthographicCamera();
}
@Override
public void hide() {
}
@Override
public void create() {
}
@Override
public void resize(int width, int height) {
camera.viewportWidth = width;
camera.viewportHeight = height;
camera.position.set(width/2f, height/3f, 0); //by default camera position on (0,0,0)
camera.update();
}
@Override
public void render() {
}
@Override
public void pause() {
}
@Override
public void resume() {
}
@Override
public void dispose() {
map.dispose();
renderer.dispose();
}
}
这是在地图上移动相机的代码,但是相机在地图的尽头并没有停止移动,请帮助我如何让相机在到达地图尽头时停止移动??????
【问题讨论】:
-
获取地图渲染的位置。如果camere超出范围,地图的位置+-地图的大小。只需停止朝那个方向移动相机即可。
-
please veljiKo 你能给我停止移动相机的代码吗? :D
-
我猜你的问题是检测到它。停止移动意味着您不必更新相机位置。你能提供呈现你的地图的代码吗?我不确定是什么让你感到困惑。
-
那里的代码我可以用相机移动我的地图,但它不会在地图的尽头停止它继续移动,你知道停止移动地图的代码吗?跨度>
-
停止增加相机 x 位置。我不明白。很好地解释您的问题并提供更多代码。
标签: java android camera libgdx