OpenGL Geometry Shader 示例

Geometry Shader是OpenGL新的一种GPU shader类型,它在顶点变换之后,颜色clamp、flat shading和剪切之前作用。
其主要作用是在GPU之内产生出新的图元。众所周知,OpenGL的图元数据来自于这样几个方面:glBegin/glEnd、
顶点数组、显示列表、VBO以及OpenGL对于曲线曲面的计算器,现在GS则从GPU直接产生了图元数据。
GS的用途将会很广,举一个例子而言,对于pointsprite,完全可以以GS来模拟。外部绘制点图元,GS则从每个点发射
出含有2个三角形的三角形带,即为一个Quad,赋予颜色、纹理、大小等等,即可得到带有纹理的“point”。
以下demo演示的是从100个点通过gs转为100个随机颜色的quad:
(代码在下载区https://files.cnblogs.com/CGDeveloper/FBO-GS%20Example.rar

posted on 2007-06-20 09:39  CGDeveloper  阅读(1899)  评论(2编辑  收藏  举报

导航