顶点着色器是完全可编程的,通常用于实现顶点的空间变换,即把顶点坐标从模型空间转换到齐次裁剪空间、顶点着色等功能。顶点着色器的处理单位是顶点,也就是说,输入进来的每个顶点都会调用一次顶点着色器。顶点着色器本身不会创建和销毁任何顶点,而且无法得到顶点与顶点之间的关系。
顶点着色器的最基本的任务,就是把顶点坐标从网格数据的模型空间变换到裁剪空间。上面的顶点着色器代码显示了如何实现这一过程:
顶点着色器不能判断各个顶点间的关系,也不能创建和销毁顶点。因为这样的**性,GPU可以利用本身的特性并行化处理每一个顶点,这一阶段处理速度很快。
顶点着色器是处理三角形网格的第一阶段。顶点着色器无法使用描述所形成三角形的数据。顾名思义,它专门处理传入的顶点。顶点着色器提供了一种方法来修改、创建或忽略与每个三角形顶点关联的值,例如颜色、法线、纹理坐标和位置。通常,顶点着色器程序将顶点从模型空间变换到齐次裁剪空间(第4.7节)。至少,顶点着色器必须始终输出该位置。
输入组装通常呈现为在执行顶点着色器之前发生的过程。这是一个物理模型通常与逻辑模型不同的示例。从物理上讲,获取数据以创建顶点可能发生在顶点着色器中,驱动程序会悄悄地为每个着色器添加适当的指令,这对程序员来说是不可见的。接下来的章节解释了几种顶点着色器效果,例如动画关节的顶点混合和轮廓渲染。顶点着色器的其他用途
英国汉学家闵福德翻译的《鹿鼎记》,共三卷,韦小宝火到了国外。小说《鹿鼎记》可以视为金庸创作的最高峰、最顶点。