〇、目標(biāo)
- 實時繪制:15-60fps
30+才會流暢 - 高分辨率
- CPU負(fù)荷很大
物理、AI(npc智能化)、聲音、 網(wǎng)絡(luò)……
- 圖形需求
高速內(nèi)存訪問、高帶寬、浮點數(shù)的運算(Flops,Floating Poing Operation)、矩陣-向量乘積(幾個G的Flops)、峰值可達幾個T
需要硬件高速處理圖形!??!
一、圖形硬件的歷史
- 90年代中早期
硅圖(SGI)主機和工作站
個人主機只有2D圖形硬件
- 90年代中期
- PC機顯卡:3dfx(Voodoo卡)、nVidia、Matrox、ATI
- 三角形光柵化移入顯卡(掃描線算法)
- 推動了大量3D游戲的發(fā)展
- 1999
PC-card with TnL(Transform and Lighting)
- NVIDIDA GeForce :Graphics Processing Unit (GPU)
- 現(xiàn)代
圖形流水線可支持部分可編程
行業(yè)領(lǐng)軍:ATI&NVIDIA
三、圖形流水線
- 應(yīng)用
視截體裁剪、場景轉(zhuǎn)換裁剪
- 幾何處理——頂點著色器
位置、形狀、光線、圖元組合、背面剔除)……
- 光柵化(Rasterization)——片段著色器
掃描填充、Fragment Shading、Frame buffer
- 輸出
如何才能實現(xiàn)可編程呢?
頂點和片段著色器
頂點的屬性坐標(biāo)——>頂點著色器——>頂點的新的屬性坐標(biāo)——>光柵化(坐標(biāo)、顏色、深度)——>片段著色器——>新的坐標(biāo)、顏色、深度
基本操作
SIMD(對四元組做的基本操作)
系統(tǒng)架構(gòu):
- 流水線
- 并行
- 并行流水線
早期游戲
《Half Life》、《DOOM》