Ответы: «Нет» и «Нет». Вам нужно подумать о порядке байтов на вашем компьютере. Если у вас есть GL_RGBA
и GL_UNSIGNED_INT_8_8_8_8
, это означает, что пиксели хранятся в 32-разрядных целых числах, а цвета имеют логический порядок RGBA в таком целом числе, например, красный находится в старшем байте, а альфа - в младшем байте. Но если машина имеет младший порядок (как с процессорами Intel), из этого следует, что фактический порядок в памяти - ABGR. Принимая во внимание, что GL_RGBA
с GL_UNSIGNED_BYTE
будет хранить байты в порядке RGBA независимо от того, является ли компьютер прямым или старшим.
GL_BGRA
с GL_UNSIGNED_INT_8_8_8_8_REV
будет хранить цвета в целых числах в логическом порядке ARGB, но затем на машине с прямым порядком байтов вы получите порядок BGRA в памяти.