0

如何确保spaceshipSprite按下按键时留在屏幕上。我不希望宇宙飞船离开屏幕。

public void render() {      
    if(Gdx.input.isKeyPressed(Keys.DPAD_LEFT)) 
      movex -= Gdx.graphics.getDeltaTime() *speed;
    if(Gdx.input.isKeyPressed(Keys.DPAD_RIGHT)) 
      movex += Gdx.graphics.getDeltaTime() * speed;
    if(Gdx.input.isKeyPressed(Keys.DPAD_UP)) 
      moveY += Gdx.graphics.getDeltaTime() * speed;  
    if(Gdx.input.isKeyPressed(Keys.DPAD_DOWN)) 
      moveY -= Gdx.graphics.getDeltaTime() * speed;
    Gdx.gl.glClearColor(0,0,0,0);
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
    Gdx.gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());

    batch.setProjectionMatrix(camera.combined);
    batch.begin();
    //sprite.draw(batch);
    batch.draw(background, 0, 0);
    batch.draw(spaceshipSprite, movex, moveY );
    //spaceshipSprite.draw(batch);
    batch.end();
}
4

1 回答 1

0

移动相机而不是精灵,或者与精灵一起移动。使用translate相机上的方法。请参阅https://code.google.com/p/libgdx/wiki/OrthographicCamera

于 2013-05-23T04:03:14.293 回答