3D渲染管线

来源:互联网 发布:常熟淘宝培训南天电商 编辑:程序博客网 时间:2024/04/30 23:23

什么是渲染(Rendering)

渲染简单的理解可能可以是这样:就是将三维物体或三维场景的描述转化为一幅二维图像,生成的二维图像能很好的反应三维物体或三维场景(如图1):

什么是渲染管线

    渲染管线也称为渲染流水线,是显示芯片内部处理图形信号相互独立的的并行处理单元。一个流水线是一序列可以并行和按照固定顺序进行的阶段。每个阶段都从它的前一阶段接收输入,然后把输出发给随后的阶段。就像一个在同一时间内,不同阶段不同的汽车一起制造的装配线,传统的图形硬件流水线以流水的方式处理大量的顶点、几何图元和片段。

    图2显示了当今图形处理器所使用的图形硬件流水线。三维应用程序传给图形处理器一序列的顶点组成不同的几何图元:典型的多边形、线段和点。正如图3所示,有许多种方法来制定几何图元。

 

 

 

Local Space -->  World Space --> View Space -->  Backface Culling --> Lighting --> Clipping --> Projection --> Viewport Space -->  Rasterization


Local Space(本地空间):本地空间以叫建模空间,这是我们定义物体三角形列的坐标系。
World Space(世界空间):世界变换就是设置在世界中的各物体彼此的位置,大小和方向关系。
View Space(视图空间):视图空间变换就是世界坐标系中的所有物体随着摄像机的变换而做的相同的变换。
Backface Culling(背面拣选):背面拣选是指正面多边形挡住了在它后面的背面多边形,Direct3D将通过拣选(即删除多余的处理过程)背面多边形来提高效率的过程。
Lighting(光照):光源被定义在世界空间中,不是通过视图空间变换到视图空间中。
Clipping(裁剪):裁剪是拣选那些超出了可视体范围的几何图形的过程。有三种情况完全包含,完全在外,部分在内。
Projection(投影):从n维转换成n-1维的过程。
Viewport Transform(视口变换):视口变换是将投影窗口变换为屏幕上一个矩形区域的可靠的变换。
Rasterization(光栅化):光栅化过程是计算需要显示的每个三角形中每个点颜色值。

原创粉丝点击