2013-09-13 1 views
3

Я использую glReadPixels для чтения пикселей из FBO в память.OpenGL ES2.0 glReadPixels() очень медленный

Вот код:

UINT8* data; 
glBindFramebuffer(GL_FRAMEBUFFER, FBOID); 
glReadPixels(0, 0, w, h, GL_RGB, GL_UNSIGNED_BYTE, data); 

Я нашел, что это операция очень очень медленно ... Есть ли альтернатива в OPENGL ES2.0 (Android)?

ответ

4

Да, это довольно медленно. OpenGL ES 2.0 не обеспечивает более быстрый способ Android. Вы можете использовать PBO на OpenGL ES 3.0, но это может быть не для вас, поскольку на данный момент очень мало устройств, и для этого требуется Android 4.3.

EDIT: Я знаю, что некоторые устройства имеют серьезные проблемы с производительностью Загрузка Текстуры RGB, возможно, это происходит и в противоположном направлении. Вместо этого попробуйте использовать формат RGBA.

 Смежные вопросы

  • Нет связанных вопросов^_^