2009-04-06 2 views
0

저는 색깔이있는 정육면체 앞에 4 개의 꼭지점 (정사각형)을 렌더링했습니다. 버텍스는 흰색이지만 0.5f에서 블렌드됩니다.내 반투명 정점으로 인해 OpenGL에서 배경 오브젝트가 밝게 나타나는 이유는 무엇입니까?

관련 : Why does my colored cube not work with GL_BLEND?

누군가가 반투명 사각형에 의해 가려 할 때 색깔의 큐브가 밝게 표시됩니다 이유를 말해 주 시겠어요? 광장 앞에없이 렌더링

큐브 : 제곱에 렌더링

Normal cube http://img408.imageshack.us/img408/2853/normalcube.png

그리고, :

Cube with square http://img142.imageshack.us/img142/6255/brightsquare.png

create the colored cube에 사용되는 코드를 참조하십시오, 코드는 실제로 draw the cube에 사용 , 및 code where the cube and square are rendered.

glEnable(GL_CULL_FACE); 
glEnable(GL_BLEND); 
glBlendFunc(GL_SRC_ALPHA, GL_ONE); 
+0

모든 링크가 동일한 코드 세그먼트 –

+0

에 연결됩니다. 머리를 올려 주셔서 감사합니다! 지금 고정 ... –

답변

2

나는 당신의 반투명 사각형 따라서 자신의 강도를 증가, 기존의 픽셀에 추가됩니다 있기 때문에 말하고 싶지만 :

내 init 함수의 코드입니다.

documentation for glBlendFunc()은 두 번째 매개 변수를 투명성 구현을위한 상용구 인 GL_ONE_MINUS_SRC_ALPHA으로 설정할 것을 권장합니다. 시도 해봐.

+0

예, 흰색 반투명 ​​스퀘어처럼 보입니다. 문제가 보이지 않습니다. – Karl

+0

우수, 감사합니다! GL_ONE_MINUS_SRC_ALPHA가 문제를 해결했습니다. –

관련 문제