glGetTexImage
возвращает текстурное изображение. Если вы хотите записать изображение обратно в текстуру, вы можете использовать glTexSubImage2D
:
glDrawPixels(GL_TEXTURE_2D, 0, 0, 0, win_x, win_y, GL_RGBA, GL_UNSIGNED_BYTE, &tex_buf[0]);
Если вы хотите скопировать блок пикселей из одного объекта кадрового буфера в другой, тогда Вы можете использовать glBlitFramebuffer
. Например, копия из именованного кадрового буфера в стандартный кадровый буфер:
glBindFramebuffer(GL_READ_FRAMEBUFFER, my_fbo);
glBindFramebuffer(GL_DRAW_FRAMEBUFFER, 0);
glBlitFramebuffer(0, 0, win_x, win_y, 0, 0, window_h, window_w, GL_COLOR_BUFFER_BIT, GL_LINEAR);
window_h
, window_w
может отличаться от win_x
, win_y
и является размером стандартного кадрового буфера.