vao如何知道哪些vbo/ibo被绑定到它?

How does a vao know which vbo's/ ibo's are being bound to it?

本文关键字:绑定 ibo 何知道 vbo vao      更新时间:2023-10-16

在做了一些基本测试后,有几件事我还不清楚:

  • 在初始化应用程序时,绑定vao、vbo和ibo的顺序是否重要?从我看到的大多数教程中,你先生成vao,然后生成vbo,然后再生成ibo,但在其他教程中,他们改变了顺序,似乎可以工作。。。

  • vao如何知道与之绑定的是什么?当对活动的vao对象调用glBindBuffer时,您是否调用了一些特殊的函数(在后台)?

我不仅问它们是如何工作的,还问它们为什么工作,我试着阅读了一些openGL规范,但对于一个新手openGL程序员来说,这太令人困惑了。

Opengl是一个状态macine:当您调用glBindVertexArray时,它会"告诉"Opengl是这个vao处于活动状态,因此,vbo将绑定到这个vao。然后,您必须使用另一个vao索引调用glBindVertexArray来更改活动的vao,然后将另一个vbo绑定到它。