我可以将opengl缓冲区对象绑定到多个目标。例如,我将缓冲区绑定到目标数组缓冲区,然后将相同的缓冲区绑定到SHADER_STORAGE_BUFFER或某个otger目标,是绑定到第一个或第二个目标的缓冲区吗?
答案 0 :(得分:1)
OpenGL规范:
void [gl]BindBuffer( enum target, uint buffer );
如果缓冲对象 命名缓冲区以前没有绑定,GL创建一个新状态 向量,用零大小的内存缓冲区初始化并包含所有内存缓冲区 表中列出的状态和初始值相同......
和
BindBuffer也可用于绑定现有的缓冲区对象。如果 bind成功,不会对新绑定的状态进行更改 缓冲区对象,以及以前绑定到目标的任何内容。
所以,是的:您可以使用相同的名称(使用glGenBuffers
创建)并使用不同的用法绑定此现有绑定缓冲区(OpenGL用语中的目标)。但我无法想出这样做的理由。