Процедура отладки glReadPixels - PullRequest
0 голосов
/ 16 января 2011

Итак, мой вызов glReadPixel:

  glPixelStorei(GL_PACK_ALIGNMENT, 1);
  GLfloat lebuf[128 * 128 * 4];
  glReadPixels(0, 0, 128, 128, GL_RGBA, GL_FLOAT, lebuf);

просто помещает 1.0 значения в массив lebuf. Это происходит сразу после завершения рисования страницы, и в результате получается «белое» изображение.

проверка ошибок GL указывает на то, что в этом нет ничего плохого.

что могло пойти не так?

1 Ответ

1 голос
/ 19 января 2011

Убедитесь, что glReadBuffer (GL_FRONT) установлено перед glReadPixels.Если это не так, вы можете читать из другого буфера, например, из заднего буфера при двойной буферизации.

И, конечно, убедитесь, что ваша область захвата - 128x128 - не вся белая.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...