2012-03-11 55 views
12

我遇到了AndEngine GLES2問題。Andengine淡入/淡出和alpha修飾符不起作用

我有這樣的代碼:

Sprite black = new Sprite(0,0, blackRegion, this.getVertexBufferObjectManager()); 
black.setSize(CAMERA_WIDTH, CAMERA_HEIGHT); 

black.registerEntityModifier(new AlphaModifier(2, 0, 255)); 

mScene.attachChild(black); 

所以它不工作。沒有任何東西......

什麼我需要做什麼?

回答

21

您是否正確設置了混合功能?例如:

sprite.setBlendFunction(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA); 
+0

不,謝謝你的回答! – 2012-03-12 14:26:49

4

我試過上面的,但它不適合我,因爲它應該。該修飾符的作品,但不是一個穩定的淡出,圖像淡出多次提到的持續時間。有任何想法嗎?

那麼最終我想通了,我在做什麼錯。這是它...

 anySprite.setBlendFunction(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA); 
    IEntityModifier iem = new AlphaModifier(seconds, 0, 255); //for some unknown reason i was passing invalid values and hence it didn't work then :) 
    iem.setRemoveWhenFinished(true); 
    anySprite.registerEntityModifier(iem); 
+0

我也是......我們需要做什麼? – 2012-04-02 16:52:18

+8

您多次淡出的原因是因爲AlphaModifier從0.0f的比例變爲1.0f而不是0到255.其中1.0f在常規色輪上爲255。 – Gatekeeper 2012-06-14 15:59:51