2013-03-31 5 views
1

Cocos2D에서 페인트 펜을 만들고 싶습니다. 그리고 이미지의 알파 채널 값을 지정하는 png 파일이 있습니다. (단 하나의 채널) 순수 색상 인 ccsprite의 텍스처에 알파 값을 지정하고 싶습니다. ccsprite 장치를 pan.to로 화면에 그려야합니다.CCSprite에 지정된 알파 채널을 지정하는 방법은 무엇입니까?

어떻게 프로그래밍 할 수 있습니까?

대단히 감사합니다.

답변

1

불투명도 범위는 0-255입니다. 커스텀 셰이더를 작성하지 않으면 텍스처의 알파와 모든 스프라이트를 한 번에 변경할 수 없습니다.

+0

대단히 감사합니다. 그러나 스프라이트에 알파 맵을주고 싶습니다. 다른 픽셀의 알파 값이 다릅니다. 내가 어떻게 해 ? – sxingfeng

2

내 프로젝트에도이 작업을 수행해야합니다. 나는이 아이디어를 생각해 냈다.

  1. (적인 Cocos2D-X에서)를 활성화 RGB 불가능하지만 알파와 '알파 스프라이트'를 렌더링 CCRenderTexture에 (glColorMask (GL_FALSE, GL_FALSE, GL_FALSE, GL_TRUE)을 통해).

  2. 당신에게 다음

  3. 는 이제 '알파 스프라이트'의 실제 스프라이트에서 RGB와이 (glColorMask (GL_TRUE, GL_TRUE, GL_TRUE, GL_FALSE)을 통해)를 활성화 비활성화하지만 RGB와 실제 스프라이트 렌더링 렌더링 텍스처의 스프라이트의 알파 혼합 속성을 {GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA}로 설정합니다.

  4. 이제 렌더 텍스처를 추가하고 장면에 그릴 수 있습니다.

저는 이것을 시도했습니다. 이것은 내 프로젝트에서 사용되었습니다. 이것도 당신을 위해 작동합니다 바랍니다.

관련 문제