本人自学opengl一段时间,希望如下内容能对初学者有所帮助。
1.opengl通过VAO,VBO,或者EBO的方式进行管理顶点数据的。
2.VAO就是结构体数组(里面存了VBO或者EBO的指针),VBO或者EBO就是具体数据,通过VAO的各个指针来告诉系统怎么解析VBO,EBO
3.VBO和EBO的区别是,VBO保存的是所有的点数据,由于opengl是通过三角形描画,所以会有冗余数据,比如长方形,VBO就要保存两个三角形,共6个点。
4.EBO就是为了解决VBO的冗余数据存在的,EBO会通过添加索引信息,来达到目的。如长方形的话,EBO会保存四个点,然后还有一个索引信息。比如四边形有两个三角形,那么索引信息就是两个三角形分别使用哪三个点。
5.整个openglGPU渲染管线流程为,顶点数据->几何阶段->光栅化阶段->屏幕图形。
5.1.几何阶段:顶点着色器->曲面细分着色器->几何着色器>裁剪->屏幕映射
5.2光栅化阶段:三角形设置->三角形遍历->片段着色器->逐片元操作
6.针对整个GPU渲染管线流程,我们能编写的就三个模块。顶点着色器,几何着色器,片段着色器。而其中几何着色器有auto部分。而我们主要开发的就是顶点着色器和片段着色器。
opengl浅析
于 2023-02-06 09:36:08 首次发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)