2013-02-13 2 views
0

저는 OpenGL을 처음 접했고 불투명도를 어떻게 처리해야할지 모릅니다. 나는 두 레이어를 겹쳐서 두 레이어를 화면에 그리는 중입니다. 전경에서 배경 이미지로 바뀌기를 페이드 아웃하고 싶습니다. 이 일을 할 수있는 방법이 있습니까 ?? 여기 내 무승부 방법입니다.OpenGL에서 즉시 텍스처의 불투명도를 변경 하시겠습니까?

public void draw(GL10 gl10) { 
    gl10.glDisable(GL10.GL_BLEND); 
    gl10.glEnable(GL10.GL_BLEND); 
    gl10.glBlendFunc(GL10.GL_TRUE, GL10.GL_ONE_MINUS_SRC_ALPHA); 
    gl10.glClearColor(0F, 0F, 0F, 0); 
    gl10.glBindTexture(GL10.GL_TEXTURE_2D, this.mTextureId); 
    this.layer1.draw(gl10); // i want to transition from this layer 
      this.layer2.draw(gl10); // to this layer by changing opacity 
      } 

나는 내 질문에 올바르게 답을하지 못한다. 희망을 얻으십시오 :)

답변

0

글쎄,이 전환을 위해 사용하는 방법에 따라 다릅니다. 애니메이션보기와 비슷한 상황이 있습니다. 불투명도 문제에 관해서는 사용할 수 없습니까?

View v; 
int i = 0; /*Values from 0 to 1, float cast might be needed for intermediate values*/ 
v.setAlpha(i); 
this.layer2.setAlpha(i); 

또는이 경우 귀하의 경우에는 적용 할 수 없습니까?

+0

Btw, "cange"제목 :-) – g00dy

+0

모든 레이어에는 단일 텍스처에서 렌더링 된 스프라이트가 포함되어 있습니다. 내 방법에는 알파에 대한 지원이 없습니다. 내가하는 모든 작업은 텍스처를 복제하는 것입니다. – user1909111

관련 문제