Regular Member
|
引用:
Originally posted by 性格男人
我希望我說一次就好 大家別再亂猜了
ati 跟 nvidia 基本上會出現貼圖錯誤
"大部分"的原因都出在 深度精確值
nvidia 主推 16bit 32bit ati 主推 24bit
為什麼深度精確值 會造成貼圖錯誤
這不好解釋 有圖會比較快 我懶得找圖了
我用說的好了
大家要先有觀念 3d遊戲 的模型 一般都用三角形所組成的
但是一個模型 可能會不只一個三角形
可能數百 數千 數萬....................
如此一來就會有一些問題 那就是哪個面先畫 那個面後畫
簡單的是用畫家原理 也就是底圖先畫 在依序(後前)慢慢畫
這樣才不會原本在後面的圖案卻檔到前面的圖
不過因為3d的模型 越來越複雜 所以畫家原理已經不敷使用
於是顯示卡公司提出 z-buffer的觀念 也就是 每一個三角形的頂點 在加入深度值
用以判斷 哪個面是前面哪個後面 一般顯示卡的記憶體大部分都是存這些資料
詳細原理不說 有觀念就好
所以如果深度精確值長度 不同 就會產生一些問題
也就是貼圖的問題
因為 24bit的精確值 轉換成 16bit 會造成一些值四捨五入後 變成一樣 導致貼圖混亂
照理來說 16 bit 轉成 24bit 並不會造成混亂 不過這中間還牽捨到一些轉換的問題
所以轉出來還是會造成貼圖的問題
所以廠商 必須準備ati 跟 nvidia 的深度精確值 不然就會造成貼圖不正確
如果沒有這樣的資訊 哪貼圖很容易出錯( 看開發的引擎)
也因此 在新的drive 也不會解決這問題
除非廠商提供資料
不然就一樣無法解決
附帶一提
dx9 的深度精確值 定義為24bit 喔
所以呢 nvidia 的卡...........多保重囉
|
+1
是這樣啊!?那廠商不會『資料』兩邊弄好??之後兩邊『賺』嗎?? 
|