名称
glBufferData- 创建并初始化缓冲区对象的数据存储
C规范
void glBufferData(GLenum target,GLsizeiptr size,const GLvoid * data,GLenum usage);
参数
target
指定目标缓冲区对象。 符号常量必须为GL_ARRAY_BUFFER或GL_ELEMENT_ARRAY_BUFFER。
size
指定缓冲区对象的新数据存储的大小(以字节为单位)。
data
指定将复制到数据存储区以进行初始化的数据的指针,如果不复制数据,则指定NULL。
usage
指定数据存储的预期使用模式。 符号常量必须为GL_STREAM_DRAW,GL_STATIC_DRAW或GL_DYNAMIC_DRAW。
描述
glBufferData为当前绑定到target的缓冲区对象创建一个新的数据存储。 删除任何预先存在的数据存储。 使用指定的字节和usage创建新数据存储。 如果data不是NULL,则使用来自此指针的数据初始化数据存储。
usage是关于如何访问缓冲区对象的数据存储的GL实现的提示。这使GL实现能够做出更明智的决策,这可能会显着影响缓冲区对象的性能。 但是,它不会限制数据存储的实际使用。usage可以分为两部分:第一,访问频率(修改和使用),第二,访问的性质。 访问频率可能是以下之一:
STREAM
数据存储内容将被修改一次并最多使用几次。
STATIC
数据存储内容将被修改一次并多次使用。
DYNAMIC
数据存储内容将被重复修改并多次使用。
访问的性质必须是:

glBufferData 是 OpenGL ES 3.0 中用于创建和初始化缓冲区对象数据存储的函数。该函数接受目标缓冲区类型、大小、初始数据指针和使用模式作为参数,提供对缓冲区性能的优化建议。使用不当可能导致错误,如无效枚举、负大小值、无效操作或内存不足。相关函数包括 glGetBufferParameteriv 和 glBufferSubData。

734

被折叠的 条评论
为什么被折叠?



