渲染管線是指為了在顯示器上顯示影象而經過的一系列必要操作,具體流程如下:
1、自身座標系
在自身座標系中建模不像在世界座標系中要考慮本物體相對於其他物體的位置、大小、方向關係。
2、世界座標系
一旦我們構造了各種模型,它們都在自己的自身座標系中,但是我們需要把它們都放到同乙個世界座標系中。物體從自身座標系到世界座標系中的變換叫做世界變換。世界變換通常是用平移、旋轉、縮放操作來設定模型在世界座標系中的位置、大小、方向。世界變換就是通過各物體在世界座標系中的位置、大小和方向等相互之間的關係來建立所有物體。
3、檢視座標系
將照相機平移變換到世界座標系的源點並把它的方向旋轉至朝向z軸的正方向,當然,世界座標系中的所有物體都將隨著照相機的變換而做相同的變換。這個變換就叫做檢視座標系變換。
4、背面揀選
乙個多邊形有兩個表面,我們將乙個標為正面,乙個為背面。通常,後表面總是不可見的,這是因為場景中大多數物體是密封的。乙個多邊形的邊都是面向照相機叫正面多邊形,而乙個多邊形的邊都背對照相機叫背面多邊形。
正面多邊形擋住了在它後面的背面多邊形,direct3d將通過揀選(即刪除多餘的處理過程)背面多邊形來提高效率,這種方法就叫背面揀選。
頂點以順時針方向(在觀察座標系中)形成的三角形為正面,以逆時針方向形成的三角形為背面。
5、光源
光源定義在世界座標系中然後被變換到檢視座標系中。檢視座標系中光源給物體施加的光照大大增加了場景中物體的真實性。
6、裁剪
揀選那些超出了可視體範圍的幾何圖形的過程就叫做裁剪。
7、投影
檢視座標系的主要任務就是將3d場景轉化為2d影象表示。這種從n維轉換成n-1維的過程就叫做投影。投影的方法有很多種,但是我們只對一種特殊的投影感興趣,那就是透視投影。因為透視投影可以使離照相機越遠的物體投影到螢幕上後就越小,這可以使我們把3d場景更真實的轉化為2d影象。
投影變換的實質就是定義可視體,並將可視體內的幾何圖形投影到投影視窗上去。
8、視口變換
視口變換主要是轉換投影視窗到顯示螢幕上。通常乙個遊戲的視口就是整個顯示屏,但是當我們以視窗模式執行的時候,也有可能只佔螢幕的一部分或在客戶區內。
9、光柵化
在把三角形每個頂點轉換到螢幕上以後,我們就畫了乙個2d三角形。光柵化是計算需要顯示的每個三角形中每個點顏色值。
光柵化過程是非常繁重的計算,它應該通過硬體圖形處理來完成。它的處理結果就是把2d圖象顯示在顯示器上。
固定渲染管線Shader
固定渲染管線是標準的幾何 光照 t l 管線,功能是固定的,它控制著世界 視 投影變換及固定光照控制和紋理混合 t l管線可以被渲染狀態控制,矩陣,光照及採製引數 固定渲染管線一般用於shader在老顯示卡無法顯示時的fallback 在shader的subshader都無法使用的時候呼叫 命令小括...
固定渲染管線與可程式設計渲染管線
1.固定渲染管線與可程式設計渲染管線的區別 1 固定渲染管線 這是標準的幾何 光照 t l 管線,功能是固定的,它控制著世界 視 投影變換及固定光照控制和紋理混合。t l管線可以被渲染狀態控制,矩陣,光照和採製引數。2 頂點著色器 圖形開發人員可以對渲染管線中的頂點運算和畫素運算分別進行程式設計處理...
3D渲染管線流程
首先用一張圖來回顧一下渲染管線的各個階段,目前為止我們接觸的著色器有頂點著色器和畫素著色器,而接觸到的渲染管線階段有 輸入裝配階段 頂點著色階段 光柵化階段 畫素著色階段 輸出合併階段.可以看到,幾何著色器是我們在將頂點送入光柵化階段之前,可以操作頂點的最後乙個階段。它同樣也允許我們編寫自己的著色器...