学习本文需要具备 OpenGL ES 编程基础,如果看起来比较费劲,可以先看入门文章 OpenGL ES 3.0 从入门到精通系统性学习教程
。
什么是几何着色器
几何着色器(Geometry Shader) OpenGL 管线中的可选着色器阶段,位于顶点着色器(Vertex Shader) 和光栅化阶段 之间。
其核心功能是基于输入的图元(如点、线或三角形),生成新的图元,或对输入的图元进行修改。
几何着色器的执行是以图元为单位的:
- 输入是一个图元(例如一个点、线段或三角形);
- 输出可以是零个、一个或多个新的图元。
几何着色器处理后,输出的是一个或多个新的图元将会被传递到光栅化阶段。
光栅化负责将几何图形(如三角形)转换为片段(即潜在的像素),并为每个片段计算属性(如