glBufferData如何知道哪些VBO上下工夫?(How does glBufferData k

2019-07-17 21:07发布

这里是正规报关glBufferData这是用来填充VBO:

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

什么是混乱的,但问题在于,你可以有多个维也纳组织,但该功能不需要处理一个特定VBO,所以它是如何知道哪些VBO您打算?

target参数可以是GL_ARRAY_BUFFERGL_ELEMENT_ARRAY_BUFFER但我的理解是,你可以拥有其中的每一个以上。

同样是相似的真实glBufferSubData方法,其目的是要叫上一个VBO随后的时间-它是如何知道哪些VBO处理?

Answer 1:

这是一个在OpenGL共用图案绑定对象到目标并通过发出函数调用无手柄上执行它的操作。 这同样适用于纹理。



Answer 2:

使用一个缓冲区对象OpenGL的操作,使用已绑定在最近一次调用glBindBuffer上使用对象的缓冲区。



Answer 3:

glBindBuffer是暴露给定缓冲液作为结合的功能。 这样的glBufferData访问它然后通过副作用,通过当前绑定缓存对象。



文章来源: How does glBufferData know which VBO to work on?