X800深度解析,Pro版大戰(zhàn)68GT
● 頂點(diǎn)處理引擎
3D圖形運(yùn)算最基本的單位就是每一個(gè)單獨(dú)的點(diǎn)。因?yàn)橛羞@些點(diǎn),才能根據(jù)這些點(diǎn)的坐標(biāo)計(jì)算兩點(diǎn)間的線以及三個(gè)點(diǎn)形成的面。所以說(shuō)3D圖形處理中幾何部分的處理,其實(shí)就是對(duì)空間中的點(diǎn)進(jìn)行運(yùn)算,這也就是為什么人們會(huì)將3D圖形中幾何處理的引擎稱之為“頂點(diǎn)處理引擎”。
我們首先來(lái)看看X800系列顯示芯片中的頂點(diǎn)處理引擎的架構(gòu)。

我們看到,當(dāng)頂點(diǎn)的初始數(shù)據(jù)傳入頂點(diǎn)處理引擎的時(shí)候,數(shù)據(jù)被分配至6條并行的管線之中。這6條管線分別擁有一個(gè)128位矢量數(shù)據(jù)算術(shù)運(yùn)算單元以及一個(gè)32位標(biāo)量數(shù)據(jù)的算術(shù)運(yùn)算單元。數(shù)據(jù)經(jīng)過(guò)矢量運(yùn)算以及標(biāo)量運(yùn)算以后,并不一定就是最終需要的數(shù)據(jù)。而且由于矢量運(yùn)算器和標(biāo)量運(yùn)算器的關(guān)系是并行的,所以有的需要進(jìn)行兩種運(yùn)算的數(shù)據(jù)就需由流程控制器(Flow Control)再次送入前面的運(yùn)算單元了。
在經(jīng)過(guò)了6條并行的數(shù)據(jù)運(yùn)算以后,頂點(diǎn)處理的過(guò)程只能說(shuō)是完成了其中最重要的部分,但是距離數(shù)據(jù)最終輸出還有很遠(yuǎn)。
接下來(lái)進(jìn)行的過(guò)程需要進(jìn)行遮掩面的選擇(Backface Culling)、數(shù)據(jù)整理(Cliping)、透視分離(Perspective)和最后的可視范圍變換(Viewport Transform)。經(jīng)過(guò)這4個(gè)過(guò)程以后,數(shù)據(jù)就可以輸出至將3D數(shù)據(jù)轉(zhuǎn)換為2D數(shù)據(jù)的“Setup Unit”了。<
關(guān)注我們


