您当前的位置: 首页 >  Jave.Lin

OpenGL API - glBindBuffer

Jave.Lin 发布时间:2020-06-05 21:27:35 ,浏览量:3

文章目录

  • 名称
  • 原型
  • 参数
  • 描述
  • 错误

https://www.khronos.org/registry/OpenGL-Refpages/gl4/html/glBindBuffer.xhtml

OpenGL API - 笔记汇总

名称

glBindBuffer ---- 绑定带名称的缓存对象。

原型

void glBindBuffer(	GLenum target, GLuint buffer);

参数

target
绑定指定的缓存对象,绑定的类型必须是以下表格的:

Buffer Binding TargetPurpose
GL_ARRAY_BUFFERVertex attributes
GL_ATOMIC_COUNTER_BUFFERAtomic counter storage
GL_COPY_READ_BUFFERBuffer copy source
GL_COPY_WRITE_BUFFERBuffer copy destination
GL_DISPATCH_INDIRECT_BUFFERIndirect compute dispatch commands
GL_DRAW_INDIRECT_BUFFERIndirect command arguments
GL_ELEMENT_ARRAY_BUFFERVertex array indices
GL_PIXEL_PACK_BUFFERPixel read target
GL_PIXEL_UNPACK_BUFFERTexture data source
GL_QUERY_BUFFERQuery result buffer
GL_SHADER_STORAGE_BUFFERRead-write storage for shaders
GL_TEXTURE_BUFFERTexture data buffer
GL_TRANSFORM_FEEDBACK_BUFFERTransform feedback buffer
GL_UNIFORM_BUFFERUniform block storage

buffer
指定缓存对象的名称。(这个名称可以理解为类似C/C++中的指针)

描述

glBindBuffer 完成两项内容:

  • 如果绑定到一个已经创建的缓存对象,那么它将成为当前 target 中被激活的缓存对象。
  • 如果绑定的 buffer 值为0,那么 OpenGL 将不再对当前 target 使用任何缓存对象。

(OpenGL 中的所有glBind* 的函数,都是值一旦绑定后,后面对这类数据的操作都是对帮的数据操作。)

错误

如果 target 是无效的值,将生成 GL_INVALID_ENUM 错误。
如果 buffer 不是从 glGenBuffers 返回的缓存名称,将生成 GL_INVALID_VALUE 错误。

关注
打赏
查看更多评论

Jave.Lin

暂无认证

  • 3浏览

    0关注

    546博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录