VBO、VAO

作者: 天天_盖世英雄 | 来源:发表于2018-10-29 20:28 被阅读17次

    VBO(Vertex Buffer Objects)顶点缓冲对象

    在显卡存储空间中开辟一块区域,用于存放顶点的各类属性信息。如顶点坐标,顶点法向量,顶点颜色等数据。在渲染时直接从显存取出数据,不必访问内存,提升效率。

    VBO的创建及配置:

        GLuint vbo; // 创建句柄

        glGenBuffers(1, &vbo); // 分配空间

        glBindBuffer(GL_ARRAY_BUFFER, vboId); // 绑定

        glVertexAttribPointer(0, 4, GL_FLOAT, GL_FALSE, 0, 0); // 指定解析方式

       

    VAO(Vertex Array Objects)顶点数组对象

    每次绘制模型之前需要绑定顶点的所有信息,当数据量大时,重复这样的操作会变的比较麻烦。VAO存储了顶点的数据格式以及顶点属性信息的结合,相当于存储了很多VBO。

    VAO的创建及配置:

        GLuint vao; // 创建句柄

        glGenVertexArray(1, &vao); // 分配

        glBindVertexArray(vao); // 绑定VAO之后所有对VBO的配置都将被VAO绑定

        

    相关文章

      网友评论

          本文标题:VBO、VAO

          本文链接:https://www.haomeiwen.com/subject/spcitqtx.html