2009-06-26 3 views
0

OpenGL ES 기반 iPhone 게임에서 그라디언트가있는 png를 텍스처로 사용해 보았습니다. 그래디언트가 올바르게 그려지지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?iPhone에서 OpenGL ES를 사용하여 그라디언트가있는 png를 올바르게 표시하려면 어떻게해야합니까?

"올바르게 그려지지 않았다"는 말은 부드럽게 진행되지 않고 부드러운 색조의 부분으로 저하되는 것 같습니다.

+0

"올바르게 그려지지 않았다"는 것은 무엇을 의미합니까? –

+0

투명성을 사용하고 있습니까? 또는 불투명 한 그라디언트이고 밴딩이 보입니까? 어떻게 텍스쳐를로드하고 있습니까? RGBA8입니까 아니면 압축 형식입니까? –

답변

1

기본 문제는 텍스처에 RGB 비트가 너무 적거나 프레임 버퍼가 부족하다는 것입니다. PNG 파일은 그래픽 하드웨어에서 직접 사용하지 않으므로 일부 내부 형식으로 변환해야합니다. 나는 OpenGL ES API를 모른다. 그러나 아마도 당신은 직접 .PNG 파일을 건네 주거나, 먼저 어떤 종류의 변환 단계를 수행하고 변환 된 데이터를 Open GL ES에 건네면된다. 두 경우 모두 관련 문서를 참조하여 사용 된 내부 형식이 충분한 지 확인하십시오. 예를 들어, 24 비트 RGB 또는 32 비트 RGBA 형식처럼 256 색 팔레 타이 징 이미지로도 충분합니다. PNG가 RGB15 또는 RGB16으로 변환 될 것으로 확신합니다. 색상 구성 요소 당 5 또는 6 비트 만 사용하면 부드러운 그라디언트를 표시 할 수 없습니다.

관련 문제