学习本文需要具备 OpenGL ES 编程基础,如果看起来比较费劲,可以先看入门文章 OpenGL ES 3.0 从入门到精通系统性学习教程
。
什么是几何着色器
几何着色器(Geometry Shader) OpenGL 管线中的可选着色器阶段,位于顶点着色器(Vertex Shader) 和光栅化阶段 之间。
其核心功能是基于输入的图元(如点、线或三角形),生成新的图元,或对输入的图元进行修改。

几何着色器的执行是以图元为单位的:
- 输入是一个图元(例如一个点、线段或三角形);
- 输出可以是零个、一个或多个新的图元。
几何着色器处理后,输出的是一个或多个新的图元将会被传递到光栅化阶段。
光栅化负责将几何图形(如三角形)转换为片段(即潜在的像素),并为每个片段计算属性(如颜色、纹理坐标、深度等)。
光栅化的主要任务是将几何数据(图元)转化为二维的像素信息(片段)。
几何着色器编写
几何着色器中有两个重要的内建函数:EmitVertex() 和 EndPrimi
订阅专栏 解锁全文
340

被折叠的 条评论
为什么被折叠?



