为了更加完全地在一个典型的3D库中描述顶点的信息和状态,可查看Microsoft的Direct3D描述。事实上,Direct3D处理管道技术在接下所讨论的步骤中与MMX技术的结合时十分紧密的。而且,我们也希望读者能用Direct3D来实际运用。
对顶点的一系列操作时可以变化的,但它的通常模式是:
裁剪和精选(移动)多边形---这是对在视图或背景之外的图形采取的操作。从被部分裁剪的图,新的多边形必须以除掉被裁区的地方来建立
建立扫描线—一条扫描线是由一系列的水平或y坐标恒定的点组成。通过计算每个角的度数,我们限定每条扫描线的起,终点,以及每条线上点的数目,每个点在r,g,b,u,v,z坐标上的变化。这种细微的变化常称为dr,dg,db,du,dv,dz。
建立透视纠正结构—对于结构这样的扫描线附加参数,或是跟小的扫描线的跨度,需要纠正因透视视图带来的前端缩短的影响。没有这样的纠正因数,结构就会扭曲,而且在多边形的边界处会不连续(见图三)
完美的透视纠正需要在每个点上作两次除法,或一次除法加上两次乘法。透视纠正也可不用除法而近似得到。这是通过在每个点上加上du和dv的瞬间变化。这些变化被记为ddu,ddv。在附录中,可参看纠正透视的近似算法。这种算法可以每秒作8或16个点的处罚,或者可以线性插入7或15个点。
在扫描线上画每个点。
图3:透视纠正的例子。左边的的有斑纹的立方体没有纠正,在边角处显示出不连续。