Как мы можем удалить заднюю текстуру в libGDX? - PullRequest
1 голос
/ 26 февраля 2012
private Texture  druidTexture;
private SpriteBatch batch;    
Sprite sprite;
@Override
public void create() {
druidTexture = new Texture(Gdx.files.internal("star-large.gif"));    
sprite = new Sprite(druidTexture);
batch = new SpriteBatch(); 
}
@Override
public void dispose() {

}

@Override
public void pause() {

}

@Override
public void render() {
    batch.begin();
    sprite.rotate(45);
    float x=sprite.getX();
    float y=sprite.getY(); 
    float newx=x+1;
    System.out.println(newx);
    float newy=y+1;
    sprite.setX(newx);
    sprite.draw(batch);
    batch.end();
}

@Override
public void resize(int arg0, int arg1) {

}

@Override
public void resume() {

}

}

Я получаю вывод для вышеуказанного кода, как этот enter image description here

, но мне нужно удалить звезду сзади, для каждой звезды, как я могу это сделать ??

Ответы [ 2 ]

5 голосов
/ 26 февраля 2012

Вам необходимо очистить экран перед каждым кадром, как описано здесь :

    public void render () {
            Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); // This cryptic line clears the screen.
            batch.begin();
            // Drawing goes here!
            batch.end();
    }
1 голос
/ 26 февраля 2012

Сначала очистить экран в функции render

@Override
public void render() {
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);
         .....
}
...