因此,当我想更改vbos时,我必须为每个单个绘制调用执行glVertexAttribPointer,但是对于vaos,我只需要绑定它们,而别的,glVertexAttribPointer我只在主外部做一次循环。我到处都看到vaos只是顶点格式,但是,为什么每次我都需要指定glVertexAttribPointer,如果我使用的是不同的vbo和相同的vao,它只是在循环中重复执行代码。
所以,如何循环绘制循环,
像这样:
bind vao
for each vbo
{
glattribpointers
glEnableVertexAttribPointerArray
draw elements
}
或者像这样:
for each vao
{
bind vao
draw elements
}
第一个选项似乎执行了不必要的功能,第二个让我认为vaos没有意义