GPU 图形计算综述 (二):固定管线
在计算机图形学中,图形管线(Graphics Pipeline)是指通过一系列软硬件算法,将三维空间中的物体表征,转换为二维空间的物体表征的过程。一般通过3D网格(Mesh)等图元(Primitive)来表示3D空间中的物体,经过坐标转换、曲面细分、裁剪、空间映射、光栅化、像素着色、深度测试、颜色混合等一系列阶段,最终生成屏幕上的2D图像。
GPU图形管线的发展,经历了从固定功能到可编程功能的演变,这一过程推动了计算机图形学的重大进步。
固定管线 (Fixed Function Pipeline)
早期GPU(如NVIDIA TNT2、GeForce 256)的功能和算力较为有限,通常作为CPU的协处理器,专注于加速一些特定的图形操作,比如顶点变换(模型视图矩阵)、光照计算(固定光照模型)、纹理贴图、光栅化,等等。所有渲染步骤由硬件预定义;软件层面,仅能通过图形API(如OpenGL 1.x、DirectX 7及更早版本)来设置参数(如设置光照颜色、纹理混合模式),无法自定义算法。
下图展示了经典的OpenGL固定渲染管线,其中每个方框代表一种特定的图形操作。
固定管线示意图
固定管线(Fixed Function Pipeline)的优点是开发简单,硬件执行效率高,适合当时有限的图形需求;由于参数组合较为有限,因此其所支持的功能较少,无法实现复杂的渲染效果(如动态光影、法线贴图),缺乏灵活性。
固定管线的代表硬件包括NVIDIA GeForce 2系列、ATI Radeon 7500等。