任意一种shader language都必须基于图形硬件,所以GPU编程技术的发展本质上还是图形硬件的发展。
在shader language存在之前,展示基于图形硬件的编程能力只能靠低级的汇编语言。
顶点和片段处理器都拥有非常强大的并行计算能力,并且非常擅长于矩阵计算,片段着色器还可以高速查询纹理信息(目前顶点处理器还不行,这是顶点处理器的一个发展方向)
顶点程序运行在顶点处理器上,片段程序运行在片段处理器上。
输入寄存器存放输入的图元信息,输出寄存器存放处理后的图元信息,纹理buffer存放纹理数据
目前大多数的可编程图形硬件只支持片段处理器处理纹理,从外部宿主程序输入的常量放在常量寄存器中,临时寄存器存放着着色程序在执行过程中产生的临时数据。