Получение пикселей из ранее связанной текстуры — OpenGL
Вопрос
Можно ли в OpenGL получить массив пикселей из ранее созданной текстуры, зная только идентификатор текстуры?
Решение
Да.
свяжи его еще раз и позвони glGetTexImage()
Если вы не хотите возиться с привязанной в данный момент текстурой, вы можете привязать ее к другому текстурному блоку.Текстурный блок — это контейнер, содержащий связанную текстуру.вы можете привязать одну текстуру к каждому текстурному блоку.OpenGL 2.1 требует, чтобы реализация имела как минимум два текстурных блока.Текстурный блок по умолчанию, который вы регулярно используете, — это блок 0.для переключения текущего вызова текстурного модуля glActiveTexture()
:
glActiveTexture(GL_TEXTURE1);
glBindTexture(texid);
glGetTexImage(...);
glActiveTexture(GL_TEXTURE0); // don't forget to switch it back
Не связан с StackOverflow