GLES 2.0 사양에서는 RGBA4444가 프레임 버퍼에 유효한 색상 유형이라고 말합니다. 텍스쳐로 렌더링 할 때 어떻게 알파 채널에 데이터를 쓸 수 있습니까? 조각 쉐이더에서 할 수 있습니까? ES 2.0을 지원하는 모든 iOS 및 Android 기기에서 사용할 수없는 확장 프로그램을 사용하지 않고도이 작업을 수행 할 수 있습니까?프레임 버퍼 컬러 버퍼의 알파 채널에 쓰기
이것은 혼란의 원형 크기가 알파 채널의 각 픽셀에 인코딩 될 수있는 피사계 심도 효과에 유용합니다.
또한 알파 채널에 쓰는 데 특별한 프래그먼트 셰이더가 필요하지 않는 것이 좋습니다. 그렇지 않으면, 쉐이더를 블러 계산에 사용 된 프레임 버퍼에 렌더링 할 때와 메인 버퍼에 직접 렌더링 할 때 모든 쉐이더를 스왑 아웃해야합니다.
프레임 버퍼에 쓰는 것에 대해 이야기하고 있습니다. 이것은 프래그먼트 셰이더의 알파 색상으로, 사용자가 설정 한 blendfunc에서 사용됩니다. 내가 알고 싶은 것은 텍스처 (프레임 버퍼 컬러 버퍼)에 렌더링 할 때 텍스처의 알파 채널에 쓰는 방법입니다. – Tenfour04
블렌딩은 FBO 또는 기본 프레임 버퍼로 드로잉하는 것과 같은 방식으로 작동합니다. 기본 혼합 함수는 단편의 색상에 ** 1.0 **을 곱한 다음 색상 버퍼에 씁니다. 기술적으로 색상 버퍼의 기존 색상에 ** 0.0 **을 곱하고 그 값을 더합니다. 그러나 ** 0.0 **을 곱하면 왜 무시할만한 가치가 있는지 설명 할 필요가 없습니다. 그럼에도 불구하고 기본 프레임 버퍼의 픽셀 형식은 여기에서 전혀 관련이 없습니다. 알파 채널 (예 :'GL_RGBA8')을 저장하는 *** 텍스처 이미지 ***가 필요합니다. –