2012-12-17 3 views

답변

6

OpenGL이 작동하는 방식은 기본적으로 하나의 대형 전역 상태 시스템입니다. 텍스처를 바인딩하면 나중에 그릴 모든 삼각형이 해당 텍스처를 사용합니다.

여기에서 문제는 텍스트 그림이 나중에 텍스처를 바인딩 해제하지 않기 때문에 이후에 그릴 모양이 텍스처가 아닌 해당 텍스처를 사용한다는 것입니다. 렌더링을 "비활성화"한다고 생각하는 이유는 텍스쳐가 다른 모든 것이 투명하게 보이기 때문에 문자로 구성되기 때문입니다. 당신이보고있는 것은 OpenGL이 불투명도가 0 인 그림을 그리는 것입니다.

GL_TEXTURE_2D을 비활성화하면 텍스처가 언 바운드되고 텍스처없이 규칙적으로 그려지는 현상이 발생합니다.

+2

많은 의미가 있습니다. 그래서 나는 glEnable과 glDisable이 다른 것을 렌더링하기를 요구하는 것이 드문 일이 아니라고 생각합니다. 무리 감사 – adamk33n3r

2

문자열의 질감이 적용 되었기 때문에. 아마도 텍스처 좌표를 설정하지 않았을 것이므로 텍스처 섹션을 투명하게 사용하므로 아무 것도 볼 수 없습니다.

+0

그래서 문자열의 질감은 전체 화면을 덮고 모양을 덮고 있습니까? – adamk33n3r

+0

@ adamk33n3r 아니요 문자열 텍스쳐의 투명한 부분은 모양을 덮어서 아무 것도 그려지지 않습니다. – Goz

+0

일부 코드를 보는 것 역시 도움이 될 수 있습니다 ... – Goz

관련 문제