![]() |
PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 顯示卡討論區
(https://www.pcdvd.com.tw/forumdisplay.php?f=8)
- - 請對顯卡和3D技術有深入了解的網友進來一下 謝謝
(https://www.pcdvd.com.tw/showthread.php?t=403600)
|
|---|
請對顯卡和3D技術有深入了解的網友進來一下 謝謝
這是我在某論壇看的文章
我自己對3D技術相關方面不是很了解 但我覺的有些地方好像怪怪的 __________________ FPS 衝高不代表一切喔~ ATI 公司有種技術, 把多餘的FPS數, 拿來做畫面的美化. 每次在 render 3d 場景的時後, 要把場景中的三角片送給D3D (或opengl) 減少三角片的數量而不使畫面失真, 是程式設計師的真功夫了. 像 unreal引擎 (天堂二用的那個), 漂漂亮亮的場景, 竟然不到一萬個三角片! 這一隻引擎就可以賣 100萬 USD ( 當然不只這項技術使它值錢 :P ) 在場景資料送給 d3d 以後, shader 就上場了. 像那個PF的海浪用 vertext shader 3.0 畫的, 譬如說 大海用vs來畫 大海假設有一千個三角片, 每個三角片的頂點就叫一個vertex. 譬如每個vertex依它的坐標值,shader是每個頂點乘上一個 sin(x), 再乘個sin(y) 一大片平坦的三角形, 新的座標值看起來就像有了起伏~ 當然shader 的功能多得很 , 我也只知道皮毛~~ 這個部份的速度, programer跟硬體都要負上責任~ shader 跑完後, 3d prgramer的責任就沒了, 剩下就都是d3d 跟繪圖卡的事情了. 每個三角形要算成screen 上的點, 從3D 到2D screen 上 1024*768 的點的顏色都要算好畫出來, ATI 的技術可以知道現在FPS 是多少, 跑太快的話, 就用多餘時間幫你做畫面柔和的動作. 基本上跟像素之間的相鄰有關.. 這部份技術我就不太清楚了~ shader 要跑得漂亮得話, 要查看d3dcaps ... DirectX sdk 裡面有個directx caps viewer, D3D對卡的診斷都寫在裡面, 一個programer 讓電腦跑甚麼等級的shader, 都會先查一下d3dcaps, 一隻program 初始化的時候就會去檢查卡的 capbility , 不行的就跑次一級的 shader. 基本上卡的caps跟 gpu核心很有關, 核心差不多, caps 也差不多. 時脈再高, caps 沒有, 也是跑次一級的shader. 而fps 超過40 也很浪費, prgramer 有種常用的寫法, 計算這一輪跟上一輪差幾微秒, 差不多就不render 3d 場景了. 好的programer可以改進上述的第一步跟第二步, 好的卡可以改進第二步跟第三步. 譬如說pf 比 fb 場景大好幾倍, 電腦都不會慢, 顯然 3d engine 變強了~~ 昨天第一次玩好感動~~ 個人對買卡的建議, 如果gpu 核心差沒有太多, 可以不用追高, d3dcaps 看起來不會差太多. 如果錢一定要花, 可以考慮買ram大一點的卡, 這樣d3d可以把貼圖跟3d model 放在卡的ram 裡面. 卡的ram 不足, 材質就要壓縮, 或丟在主記憶體裡. |
| 所有的時間均為GMT +8。 現在的時間是05:44 PM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2025。