GPU渲染流水线

       任务:完成3D模型到图像渲染工作。常用图形学APIRirect3DOpenGL)的渲染被分为几个可以并行处理的部分,这些部分可以被GPU中渲染流水线的不同单元处理。

GPU输入输出:输入是语言定义的三维物体、物体特征、光源位置等,输出是观测点对3D场景观测到的二维图像。

典型的渲染过程:顶点生成——顶点处理(三维坐标向二维映射、计算顶点的亮度等)——图元生成(将顶点组织成有序的图元流)——图元处理——片元生成(光栅化)——片元处理(图形的填色等)——像素操作。

示例:GPU从显卡中读取玫瑰3D的顶点数据,生成反应场景的顶点。Vector shader 计算2D坐标和亮度值,在屏幕上绘制玫瑰顶点。顶点被分为三角形图元。Geometry shader 进一步细化,生成更多图元。GPU固定单元对图元光栅化,生成片元。Pixel shader 从显卡中读取纹理数据对片元上色和渲染。进行可视度处理,生成图像。

着色器:GPU的可编程单元称为着色器(shader),最主要的是顶点着色器和像素着色器。着色器的性能由DirectX规定的shader model来区分。Direct 10以可编程单元为主、图形固定单元为辅。

猜你喜欢

转载自812991616.iteye.com/blog/1849523