渲染管道(1)整体流程
1. GPU渲染輸入
即是給定GPU“視點、三維物體、光源、照明模式,和紋理等元素,如何繪制一幅二維圖像”。
GPU要做的事:
- 將物體3D坐標轉變為屏幕空間2D坐標
- 為屏幕每個像素點進行著色。
2. 4個階段
2.1 . Application階段
定義當下要構建世界的模型圖元, 對 GPU 中的各個 Shader 進行編程和參數設定。
開發者通過程序對圖元數據進行配置和調控, 由于可以對該階段進行完全控制, 可以通過更改實現方法來改變性能,通常有: 碰撞檢測, 加速算法, 輸入檢測, 動畫, 力反饋, 紋理動畫, 變換仿真, 幾何變形, 和一些不在其他階段執行的算法 (如層次視錐裁剪等加速算法)
輸出:將攝像機位置, 光照和模型的圖元數據輸出到幾何階段
2.2 Geometry Processing幾何階段
幾何處理,計算要繪制的內容,應如何繪制以及應在何處繪制。 GPU會把三維的坐標轉換成二維的屏幕上,同時讓二維畫面具有3D的效果,主要涉及到一系列的矩陣運算–坐標系變換。
2.3 Rasterization 光柵階段
基于幾何階段的輸出數據,為像素(Pixel)正確配色,以便繪制完整圖像,每個像素的信息存儲在顏色緩沖器(color buffer 或者frame buffer)中,一般需要輸入三個頂點,形成一個三角形
2.4 Pixel Processing 像素處理階段
計算出每個像素的顏色值。這個階段把幾何階段送過來的三角形轉化為片段,并對片段進行著色。片段經過裁剪測試、alpha測試、模板測試、深度測試、融合等處理后,最終和幀緩沖混合。
總結
以上是生活随笔為你收集整理的渲染管道(1)整体流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 图形基础 GPU架构(5)并行计算
- 下一篇: 渲染管道(2)应用阶段“功能”