我正在尝试阅读我们的老师给我们提供的关于在OpenGL中使用VAO和VBO的一些代码示例,但我很难理解它。我评论每一行以显示我理解的内容。有人可以解释一下这里发生了什么吗?
document.body.innerHTML
另外,我理解VBO的性质,但我不太确定VAO的性质。它们是VBO阵列吗?它们是别的吗?
答案 0 :(得分:1)
您对第一行的理解是错误的。它生成2个VAO对象并将它们存储在数组中。与glGenBuffers行比较,生成一个VBO并将其存储在单个变量中。 & vboCube将vboCube视为数组[1]
除此之外,VAO可以被认为是场景图中的几何节点,顶点集合,纹理坐标等。
两个缓冲区调用确实会将数据发送到GPU。两个attrib调用定义了几何中将使用的数据。
在OpenGL中设置VBO / VAO数据有点重复和丑陋。好消息是,这几行都是你真正需要知道的,而且你很快就能在任何地方识别它们。
哦,如果您认真学习OpenGL,请购买OpenGL SuperBible。
希望这有帮助。