2012-03-11 1 views
12

AndEngine GLES2에 문제가 있습니다. Andengine 페이드 인/아웃 및 알파 수정자가 작동하지 않습니다.

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

아니요, 답변 해 주셔서 감사합니다! –

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

그래, 나도 ... 우리가 뭘해야하지? –

+8

AlphaModifier가 0f에서 1.0f로 변경 되었기 때문에 AlphaModifier가 0에서 255가 아닌 1.0f로 변경 되었기 때문에 여러 번 페이드 아웃되는 이유는 일반 색상환에서 1.0f가 255 인 경우입니다. – Gatekeeper