早期3d開始發展為了效能很多演算法都出現了
二元樹 四元樹 八元樹 視角裁切 背照裁切 ( ccw) .公告牌(billboard).lod...etc
因為那時的技術就可以渲染很高面數的模型.很遠的場景...
3d的基本技術可以說已經成熟..問題在於速度太慢..
在directx7之前大家還是用2d double buffer 再處理
先投射到背景 在切換
directx8後就出現了 純硬體的渲染..
2d被丟棄了 (

頂點的處理/繞圖 (把材質貼上3d旋轉後的投射面)/去背 ccw / 視角裁切 viewport / 投影面..
都搬進了顯卡.
cpu只要付責把頂點的資訊用好 (位置.顏色.材質位置)..減少渲染數量 (bsp/osp tree)..viewport camera的設定. 渲染的順序(這有關alpha 通道問題).減少渲染器切換(那時多了種3d engine的寫法 渲染器狀況機的出現)
可是問題又出現...匯流排就那麼大..記憶就那麼多.每次都重搬不是工作量很大
所以directx 9 又多了種技術叫多通道..
也就是場景中一樣的模型不用再重覆由cpu搬去gpu..
你可以先搬每個模型..再換上不同的材質..不同的角度..不同的顏色
講了那麼多.只是想說 gpu是為了強化cpu的計算而存在.而且還單行程
問題現在cpu都多核了.以前做起來很複雜的.現在也很快了..
可是架構上還是要從記憶體搬到gpu算
NVIDIA說得應該是gpu門就一個..你cpu不管有2個人.4個人.還是8個人.一次也是只有1-2個人可以進來
能做的事也是一樣.八個人一起進來門卡住了.又要浪費時間發號碼牌排隊
除非gpu可以開好幾個門..但整個渲染的架構就這樣 又怎麼大改呢..
內文搜尋

X