1.顶点缓冲对象VBO是在显卡存储空间中开辟出的一块内存缓存区,用于存储顶点的各类属性信息,如顶点坐标,顶点法向量,顶点颜色数据等。在渲染时,可以直接从VBO中取出顶点的各类属性数据,由于VBO在显存而不是在内存中,不需要从CPU传输数据,处理效率更高。所以可以理解为VBO就是显存中的一个存储区域,可以保持大量的顶点属性信息。并且可以开辟很多个VBO,每个VBO在OpenGL中有它的唯一标识ID,这个ID对应着具体的VBO的显存地址,通过这个ID可以对特定的VBO内的数据进行存取操作。
2.VAO本身并没有存储顶点的相关属性数据,这些信息是存储在VBO中的,VAO相当于是对很多个VBO的引用,把一些VBO组合在一起作为一个对象统一管理。执行VAO绑定之后其后的所有VBO配置都是这个VAO对象的一部分,可以说VBO是对顶点属性信息的绑定,VAO是对很多个VBO的绑定。
3.EBO中存储的内容就是顶点位置的索引indices,EBO跟VBO类似,也是在显存中的一块内存缓冲器,只不过EBO保存的是顶点的索引。
4.VAO简单理解其实代表的就是模型的数据,当可能需要很多个模型,每个模型对应一个VAO,所以需要有个id来区分,创建vao的时候会返回一个vaoID。VAO中有一个属性列表,默认有16个属性(0 - 15),我们可以为属性指定数据,其中属性可以是顶点位置,颜色,法线,纹理坐标等等我们需要的数据,其中的每一个属性对应的数据其实就来自VBO。
相关文章
- 02-14OpenGl(1) VAO、VBO、EBO的理解
- 02-14OpenGL中立方体的VAO和EBO表示方法
- 02-14opengl使用VAO和VBO绘制三角形时glVertexAttribPointer的调用位置不正确产生的小问题
- 02-14[转]OpenGL图形渲染管线、VBO、VAO、EBO概念及用例
- 02-14LearnOpenGL学习笔记(三)——VBO,VAO,EBO理解
- 02-14openGL中的原理理解1---一个视图需要支持OGL需要配置,GLenbalView的理解
- 02-14OpenGL ES VAO、VBO、EBO、FBO、PBO、TBO、UBO
- 02-14NDK OpenGL ES 3.0 开发(四):VBO、EBO 和 VAO