瀏覽單個文章
hooo1
Senior Member
 
hooo1的大頭照
 

加入日期: Aug 2001
您的住址: 數學的世界裡
文章: 1,175
引用:
Originally posted by samsung
這裡所謂的 MSAA 和 SSAA 是指做 AA 時,貼圖取樣的方式。
一般的 SSAA(包括 VSA-100、GeForce 1/2、Radeon、Kyro 等晶片所採用的方法),是在每個 pixel 中取數個 subsample。這是很正常、很基本的做法。但是它的主要缺點是效率方面的。比如說,如果每個 pixel 都取四個 subsamples(就是所謂的 4X FSAA),那就需要四倍的計算量和記憶體頻寬。這是很花資源的。

而所謂的 MSAA 就是想要解決這個問題。MSAA 基本上和 SSAA 一樣,每個 pixel 都取數個 subsample。但是,對於每個 pixel 中,所有屬於同一個三角面的 subsample,都共用同一個顏色的計算結果。也就是說,假設某一個三角面在某個 pixel 中,佔了兩個 subsample,那這兩個 subsample 就會只用一個顏色。這樣大量節省了計算量,也節省了貼圖方面所需要的記憶體頻寬。不過,要注意的是,MSAA 並不能節省 frame buffer 和 Z buffer 的頻寬。以 4X FSAA 來說,它還是需要四倍的 frame buffer 和 Z buffer 頻寬。

GeForce 3 就是採用這個方法,所以 GeForce 3 執行 FSAA 效率相當的高。

事實上,由於 MSAA 的效率特性,使它特別適用於 PowerVR 這類 deferred renderer。由於 deferred renderer 不需要擔心 frame buffer 和 Z buffer 頻寬,所以它們可以利用 MSAA 得到幾乎免費的 FSAA。PowerVR 的內嵌式顯示核心 MBX 就是利用這個方式,做到所謂的 FSAA4Free。將來的 Kyro 3 可能也會支援類似的功能。

不過,MSAA 並非全無缺點。MSAA 最怕的是利用 alpha texture 來做「有洞」的貼圖。由於對每個 pixel 來說,不管有多少個 subsample,只會做一次 texture sampling,所以 MSAA 完全無法對「有洞」的貼圖做到 anti-aliasing 的效果。像是在 CS 或 MDK2 裡面,常有用 alpha texture 來做欄杆或其它東西。這些東西在 GeForce 3 上,就完全沒有 anti-aliasing 的效果。這個問題目前並沒有理想的解決方案。

SAMSNUG兄:
你提到了很多,想必你也非常留意硬體的資訊
但我想告訴你,你所提的都是GEFROCE3獨到之處的功能
沒錯這些功能很好我們都知道
但你知道RADEON 8500有哪些新功能是GEFORCE3所沒有的嗎
我只能說,有非常多的新功能,如果你想知道我可以一一告訴你
最後我想說的是ATI,NVIDIA都有他們獨到之處
但你所說的都是對GF3有獨到之處的功能,這未免有點以偏蓋全
不夠客觀
若你要這麼細心為大家解說的你應該把R8500的新功能和獨到之處
和GF3的某某功能獨到之處都說給大家聽
不要一昧的指說GF3的某某功能好嗎,請不要給大家洗腦...OK....
舊 2001-10-01, 11:02 AM #20
回應時引用此文章
hooo1離線中