发布网友 发布时间:2022-04-22 01:09
共1个回答
热心网友 时间:2023-11-11 19:34
opengl像素缓冲区
PBO,即Pixel Buffer Object也是用于GPU的扩展(ARB_vertex_buffer_object)。这里的缓存当然就是GPU的缓存。PBO与VBO扩展类似,只不过它存储的是像素数据而不是顶点数据。PBO借用了VBO框架和所有API函数形式,并加了上两个target标志。这两个标识是: GL_PIXEL_PACK_BUFFER_ARB将像素数据传给PBO GL_PIXEL_UNPACK_BUFFER_ARB从PBO得到像素数据 这里的“pack”还是“unpack”,可分别理解为“传给”和“得到”。它们也都可以统一理解为“拷贝”,也就是像素数据的“传递”。
比如说,glReadPixel就是数据从帧缓存(framebuffer)到内存(memory),可理解为“pack”;glDrawPixel是从内存到帧缓存,可理解为“unpack”;glGetTexImage是从纹理对象到内存,可理解为“pack”;glTexImage2d从内存(memory)到纹理对象(textureobject),可理解为“unpack”。