几何着色器高级应用
概念回顾
几何着色器(Geometry Shader)是 OpenGL 管线中的可选着色器阶段,位于顶点着色器(Vertex Shader) 和光栅化阶段 之间。
其核心功能是基于输入的图元(如点、线或三角形),生成新的图元,或对输入的图元进行修改。
几何着色器的执行是以图元为单位的:
- 输入是一个图元(例如一个点、线段或三角形);
- 输出可以是零个、一个或多个新的图元。
爆破效果
爆破效果的实现原理是将 3D 模型的每个三角形沿着法向量的方向移动一小段位移。结果就是,整个物体看起来像是沿着每个三角形的法线向量爆炸一样。
我们所要做的是计算垂直于三角形表面的向量,仅使用我们能够访问的 3 个顶点。基于这 3 个顶点ÿ