Сегодня я запускал свое приложение через Instruments и заметил, что в функции "glgConvertTo_32" тратится слишком много времени. В другом месте я читал, что это потому, что Apple использует «GL_BGRA и GL_UNSIGNED_INT_8_8_8_8_REV» для своего формата текстуры, а мой код использует GL_RGBA.
Я использую glTexture2D следующим образом:
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA, GL_UNSIGNED_BYTE, textureData);
Однако ни GL_BGRA, ни GL_UNSIGNED_INT_8_8_8_8_REV не доступны в заголовках GL для iPhone. Есть ли другая причина для большого количества вызовов этой функции, или, возможно, мне нужен другой формат текстуры?
EDIT:
Следует отметить, что я использую OpenGL ES 2.0.