문서를 보면 BGRA를 텍스처의 내부 형식으로 사용할 수 있어야합니다. 나는 BGRA 데이터로 텍스쳐를 공급하고있다. (glRenderBufferStorage에 GL_RGBA8_OES를 사용하면 BGRA가 허용되지 않는다.) 그러나, 다음은 작동하지 않습니다iPhone의 BGRA glTexImage2D 및 glReadPixels
glTexImage2D(GL_TEXTURE_2D, 0, **GL_BGRA**, w, h, 0, GL_BGRA, GL_UNSIGNED_BYTE, buffer);
...
glReadPixels(0, 0, w,h, GL_BGRA, GL_UNSIGNED_BYTE,buffer, 0);
를이 나에게 검은 색 프레임 제공하는 동안 :
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, w, h, 0, GL_BGRA, GL_UNSIGNED_BYTE, buffer);
...
glReadPixels(0, 0, w,h, **GL_BGRA**, GL_UNSIGNED_BYTE,buffer, 0);
을 그리고이 작업을 수행하지만, 블루스/붉은 색이 반전 (I는 텍스처에 BGRA 데이터를 제공) :
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA,w, h, 0, GL_BGRA, GL_UNSIGNED_BYTE, buffer);
...
glReadPixels(0, 0, w,h, **GL_RGBA**, GL_UNSIGNED_BYTE,buffer, 0);
... 전체적으로 BGRA를 사용할 수없는 이유는 무엇입니까? 나는 glRenderbufferStorage가 BGRA 포맷을 받아들이지 않는 것 같아서 ... 정말 혼란 스럽습니다. BGRA는 내 데이터가있는 유일한 형식으로, 아이폰의 카메라에서 나온 것입니다.
감사합니다. 그리고 그게 제가 해왔 던 것입니다. 문제는 화면에 표시 할 때 반전 된 것입니다. 나는 방금 마지막 쉐이더에서 화면을 보았고 그 효과를 보았습니다. 내 프레임 속도가 이미 고생하고 있으므로 추가 패스는 피하기 만했습니다. :) – akaru