2010-08-09 2 views
3

내가 가장 정상 이미지 부분 위에 손가락을 이동할 경우 현재지우개는 OpenGL에서 ES 아이폰

서로. (카드가 서로의 상단에 배치하는 방식)에 중첩되는 두 이미지가 이미지의 투명도가 높아야합니다 (해당 부분의 불투명도는 0이되어야합니다).

OpenGL ES 개발을 처음 사용했습니다.

친절하게이 기능을 완성하기 위해 나를 도와주세요. 사전

답변

1

에서

덕분에 당신은 텍스처로 렌더링하는 프레임 버퍼 개체 (식 코멘트)을 사용하여 원하는 것입니다. glColorMask (알파 채널을 제외한 모든 색상 채널을 마스크 할 수 있음)를 사용하여 알파 채널에만 렌더링 한 다음 알파 채널에 패턴을 그려 알파를 0.0으로 설정 한 다음 텍스처를 표시합니다. 정상적으로.

+0

답장을 보내 주셔서 감사합니다. GLPAINT (iPhone 샘플 코드)와 같은 iphone에 페인트 앱을 구현했습니다. 내 그림을 실행 취소하는 방법을 알고 있습니까? – bazooka

+0

이런 뜻인가요 ?? 'FrameBuffer.clearAllFrameBuffers (Gdx.app); fbo1.begin(); Gdx.gl20.glClearColor (0, 0, 0, 0); batch.begin(); rubber.draw (배치, 0); Gdx.gl20.glColorMask (false, false, false, true); coverHeart.draw (batch, 1); Gdx.gl20.glColorMask (true, true, true, false); batch.end(); fbo1.end();' libgdx 프레임 워크를 사용하고 있습니다. 나는 그 안의 빈 칸으로 마음을 그리려하고있다. 그러나이 것은 작동하지 않습니다. 나 좀 안내해 주실 래요? – Rafay

0

난 그냥 비슷한 일을했고, 나는 GLBlending에 해결책을 발견 :

if (eraseMode) { 
    glBlendFunc(1.0,0.0); 
} 
else { 
    glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA); 
} 

일부 화장품은이 문제를 해결 필요하지만, 기본적인 요구에 맞는 간단한 솔루션입니다.

관련 문제