GL_EXT_texture_format_BGRA8888 говорит, что BGRA - это круто, в чем же дело? - PullRequest
1 голос
/ 25 февраля 2011

Это еще один вариант ответа на вопрос, на который нет ответов. IPhone имеет расширение GL_EXT_texture_format_BGRA8888, которое должно позволить мне использовать BGRA в качестве внутреннего формата glTexImage2d.

У меня есть только данные BGRA, поскольку это единственное, что я могу получить от камеры (кроме YUV, с которой я не готов иметь дело).

Как я могу использовать BGRA с glReadPixels? Все, что я пробую, дает мне черный экран!

Ответы [ 2 ]

2 голосов
/ 25 февраля 2011

Проверяли ли вы наличие ошибок OpenGL после создания и загрузки текстуры?

Вы связали текстуру?

Вы включили отображение текстур с помощью glEnable?

Вы указали координаты текстуры для каждой вершины полигона?

0 голосов
/ 25 февраля 2011

В соответствии со спецификацией OpenGL ES 2.0 , glReadPixels() поддерживает только RGBA в качестве формата для чтения из вашего FBO.Я полагаю, что расширение, которое вы цитируете, позволяет только предоставлять данные формата пикселей BGRA для вашей текстуры, но не то, что вы можете читать FBO в формате BGRA.

Как предлагает Бен, вы можете просто менять цветав вашем фрагментном шейдере, если вам нужен конечный результат BGRA.

...