關於面法線與移除隱藏曲面

有數種常用步驟可用來加速彩現程序。

為了最大程度地縮短彩現模型所花費的時間,最常用的做法是移除隱藏曲面或隱藏置於相機之外的物件。

每個塑型的曲面均由面組成。面可以是三角形,也可以是四邊形,並且每個面均有內側與外側。面指向的方向由稱為法線的向量定義。法線的方向指示該面的前表面或外表面。

面法線會決定光反射 (反射) 的方向和彎曲 (折射率)。如果相機位於一個面之後,面就不會對相機顯示,但仍會由彩現程式進行處理以反射光源與投射陰影。

如果您看到孔,通常表示面實際上已從模型中遺失或不是朝向相機。

如果遺失了面,則需要手動重新建構該面。如果物件是使用 3DFACE 所繪製,則法線的方向由在慣用右手座標系統中繪製面的方式決定:如果沿逆時鐘方向繪製面,則法線指向外部;如果沿順時鐘方向繪製面,則法線指向內部。您應以相同方式繪製面。

註: 實體物件上的法線通常已正確定位,它們可以協助您建立用於彩現的模型。

彩現時,彩現程式將搜尋從檢視點指向其他位置的所有法線,並從該場景中移除關聯的面。此移除步驟稱為背面剔除

移除了背面之後,彩現程式將使用一個 Z 緩衝區來沿 Z 軸來比較相對距離。如果 Z 緩衝區指示出某個面覆疊在另一個面上,則該彩現程式將移除要被隱藏的面。節省的時間與總面數中被捨棄的面數成正比。

彩現程式會處理場景中的每個物件,甚至包括「相機外」的物件,以及不需要顯示在彩現視圖中的物件。良好的圖層管理將有益於彩現模型。透過關閉包含位於目前視圖之外的物件的圖層,可以顯著提高彩現速度。