将缓冲区绑定到多个目标

时间:2017-02-14 22:55:01

标签: java opengl lwjgl

我可以将opengl缓冲区对象绑定到多个目标。例如,我将缓冲区绑定到目标数组缓冲区,然后将相同的缓冲区绑定到SHADER_STORAGE_BUFFER或某个otger目标,是绑定到第一个或第二个目标的缓冲区吗?

1 个答案:

答案 0 :(得分:1)

OpenGL规范:

  

void [gl]BindBuffer( enum target, uint buffer );如果缓冲对象   命名缓冲区以前没有绑定,GL创建一个新状态   向量,用零大小的内存缓冲区初始化并包含所有内存缓冲区   表中列出的状态和初始值相同......

  

BindBuffer也可用于绑定现有的缓冲区对象。如果   bind成功,不会对新绑定的状态进行更改   缓冲区对象,以及以前绑定到目标的任何内容

所以,是的:您可以使用相同的名称(使用glGenBuffers创建)并使用不同的用法绑定此现有绑定缓冲区(OpenGL用语中的目标)。但我无法想出这样做的理由。