2016-05-17 66 views
0
game.batch.setColor(1,1,1,alpha) 

我延長遊戲和實現屏幕。所以遊戲類是傳遞給遊戲屏幕的類。然後,在遊戲屏幕,當你打我這樣做牆:Libgdx - SpriteBatch阿爾法工作不

alpha -= delta; 
if (alpha <= 0) { 
    alpha = 0; 
} 
game.batch.setColor(1, 1, 1, alpha); 
if (alpha == 0) { 
    restartGame(); 
} 

它正常工作,如果我手動更改transperency每個精靈。但它似乎像.setColor甚至不適用於SpriteBatch。

回答

0

當你調用sprite.draw(batch),它忽略任何顏色批次設置爲,並使用雪碧的顏色。如果你想淡出你的精靈中的每一個,你必須改變你的精靈的每一個的字母。

+0

哦,這是一個相當麻煩。上次我改變屏幕時手動淡化了所有內容。所以我雖然可以設置批量顏色。哦... –

+0

我相信你可以使用batch.draw(...),而不是sprite.draw(批次)。我認爲這將起作用。 – Barodapride

+0

是的,但你還不如用TextureRegions因爲你還必須指定posirion,旋轉,大小爲這個方法。 – Tenfour04