내 텍스처 중 하나를 투명하게 만들어야합니다. 내가 어떻게 해? 내 질감을 처리OpenGL 투명 텍스처 (블렌드)
모든 코드는 다음과 같습니다
glBindTexture(GL_TEXTURE_2D, textureName);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, textureImg);
무엇 내가 변경해야/(전체 알파) 텍스처가 완전히 투명하게 추가?
투명 텍스처가있는 것은 투명 지오메트리 렌더링과 동일하지 않습니다. 블렌딩은 당신이 필요로 할 것이고, Z- 정렬은 아마 또 다른 것입니다. – Kos
@Kos 나는 내가하고있는 일을 설명 할 것이다. 이미지를로드하고 텍스쳐를 만듭니다. 그리고 텍스처의 알파 채널을 0으로 변경해야합니다.이 경우 브러시 도구와 같이 알파를 0.0에서 1.0으로 변경할 수 있습니다. 멀티 텍스처링을 사용하기 때문에 한 텍스처가 다른 텍스처에 있으므로 두 번째 텍스처 알파가 0으로 설정된 경우 첫 번째 텍스처 만 표시되고 1 초로 변경하면 텍스처가 표시됩니다. 나는 z 정렬을 필요로하지 않을 것이라고 생각한다. 하지만 도움을 주셔서 감사합니다. – hockeyman
아, 투명 지오메트리를 그리지 않고 불투명 한 오브젝트에서 최종 색상을 얻기 위해 서로 다른 텍스처를 혼합하는 데 알파 채널을 사용하려는 경우 블렌딩이나 z 정렬이 필요하지 않습니다. 프래그먼트 쉐이더의 모든 텍스처를 샘플링하고 원하는 방정식을 사용하여 최종 색상을 얻으십시오 (예 : 'T1.rgb * T1.a + T2.rgb * (1-T1.a')). – Kos