API翻译:glBufferData

Name

glBufferData
创建和初始化一个buffer object的数据存储。

C Specification


void glBufferData( GLenum target,
GLsizeiptr size,
const GLvoid * data,
GLenum usage);

Parameters

target
指定target buffer object。必须是GL_ARRAY_BUFFER or GL_ELEMENT_ARRAY_BUFFER常量。

size
指定buffer object的新data store的大小。

data
指定即将被拷贝进data store并初始化的数据的指针,或者null,如果没有data要拷贝。

usage
指定你希望data store使用的模式。必须是GL_STREAM_DRAW, GL_STATIC_DRAW, or GL_DYNAMIC_DRAW.

Description

1.glBufferData为绑定在target上的buffer object currently创建了一个新的data store。任何之前存在的data store被删除。新创建的data store将被指定size和usage.如果data参数为NULL,data store将被这个pointer指向的data初始化。

2.usage参数提示了在GL实现中一个a buffer object’s data store将如何被访问。这使GL做出更明智的可能显著提升性能的选择。然而,如果没有,这将限制data store的准确的usage。usage可以被拆成两部分:一,被访问的频率(修改或使用),二,访问的性质。访问的频率是如下几个之一:
STREAM
该data store内容将被修改一次,且被使用的次数也很少;

STATIC
该data store内容将被修改一次,但会被多次使用;

DYNAMIC
该data store内容将被不断修改,且被多次使用;

访问的性质如下:
DRAW
该data store内容将被应用程序修改,且被当做GL渲染和图像设置命令的源数据。

Notes

1.如果data为null,指定了size大小的data store仍然会被创建,但它的内容是未初始化的,因而也是未定义的。

2.客户端必须针对客户端平台始终保持数据元素的对齐,并且一个基本的要求是,一个offset必须是N的平方?(Clients must align data elements consistent with the requirements of the client platform, with an additional base-level requirement that an offset within a buffer to a datum comprising
NN.)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值