将纹理数据从一个纹理部件移动到另一个部件

时间:2011-03-15 19:03:49

标签: linux performance opengl textures

是否可以将纹理的一部分移动到另一个纹理部分而没有性能命中?

我查看了opengl SDK,但没有找到任何可以做这样的事情。

1 个答案:

答案 0 :(得分:2)

glCopyPixels允许您从一个帧缓冲区复制到另一个帧缓冲区(我从未使用过它)。

glBlitFramebuffer可让您在framebuffers之间复制像素

glCopyTexImage可让您将帧缓冲区中的像素复制到纹理

使用这些功能,您可以通过以下操作完成任务:

  1. 创建FBO,将texture-1附加到第一个颜色通道
  2. 绑定fbo,将视口设置为包含源区域
  3. glCopyTexSubImage调用到texture-2中以获取内容