美文网首页
OpenGL(一)第一个窗口

OpenGL(一)第一个窗口

作者: 小人步是小人 | 来源:发表于2019-03-26 15:57 被阅读0次

    1.初始化:初始化GLFW   创建窗口  上下文   初始化GLAD  创建视口  

    2.数据处理:生成和绑定VBO  VAO(何为),设置属性指针,解绑

        顶点缓冲对象VBO,将其绑定在顶点缓冲对象上(何为顶点缓冲对象)  好处:不用将顶点数据一个一个发送到显卡上,借助VBO可以一次性发送一大批过去,然后使用glBufferData将顶点数据绑定到当前默认的缓冲中。glBufferData(GL_ARRAY_BUFFER,sizeof(triangle),triangle,GL_STATIC_DRAW“三角形的顶点位置不会被改变”);  

        顶点数组对象VAO,我们使用的是核心模式,他要求我们使用VAO,其次使用VAO的好处是:在渲染(干嘛的?)时只使用一次VAO就可以了,之前的数据都存在VAO中,不再调用VBO.

        将数据发送到GPU后,还要用glVertexAttribPointer(0,3,GL_FLOAT,GL_FALSE,3*sizeof(float),(void*)0);  "0":定点数据位置值,"3":顶点属性(?)是一个3分量的向量(?);“GL_FLOAT":顶点类型;“GL_FALSE'':是否希望顶点标准化;3*。。。。:步长,下一个数据在3个float之后;6:数据偏移量数组开头     。    glEnableVertexAttribArray(0);开启零这个通道,默认是关闭的。

        解绑,防止之后绑定VAO时影响当前VAO,还有使代码更加规范

        现在,通过VAO VBO 已经将顶点数据储存在显卡GPU上了

    3.顶点着色器和片段着色器

    4.渲染

    5.善后工作

    白话总结:1.VAO,VBO是用来让计算机知道我要绘制图形的各顶点在哪

                      2.顶点着色器,片段着色器是让计算机知道它该将图形打印成什么颜色

    相关文章

      网友评论

          本文标题:OpenGL(一)第一个窗口

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