OpenGL缓冲区

对着背影说爱祢 提交于 2019-11-26 20:48:57

缓冲区保存在GPU内存中, 可以在CPU不介入的情况下,完成数据操作。

1. 创建缓冲区

glGenBuffers()

2. 绑定缓冲区

glBindBuffer()

缓冲区绑定点:

GL_ARRAY_BUFFER数组缓冲区存储颜色、位置、纹理坐标等顶点属性,或者其他自定义属性

GL_COPY_READ_BUFFER用作glCopyBufferSubData进行复制的数据源

GL_COPY_WRITE_BUFFER用作glCopyBufferSubData进行复制的数据源

GL_ELEMENT_ARRAY_BUFFER索引数组缓冲区,用于保存glDrawElements、glDrawRangeElements和glDrawElementsInstanced的索引

像素缓冲区(PBO)绑定点

GL_PIXEL_PACK_BUFFER像素包装操作的源缓冲区glReadPixels

GL_PIXEL_UNPACK_BUFFER纹理更新函数的目标缓冲区glTexImage1D, glTexImage2D, glTexImage3D, glTexSubImage1D, glTexSubImage2D, glTexSubImage3D

GL_TEXTURE_BUFFER着色器可以通过纹理单元拾取来访问的缓冲区

GL_TRANSFORM_FEEDBACK_BUFFER变换反馈顶点着色器(transform feadback vertex shader)写入的缓冲区

GL_UNIFORM_BUFFER着色其能够访问的Uniform值

3. 填充缓冲区

glBufferData()

glBufferSubData()

4. 删除缓冲区

glDeleteBuffers()

5. 读取缓冲区

glReadbuffer()

glReadPixels()

转载于:https://www.cnblogs.com/lemonrong/p/4132039.html

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!