引用:
Originally posted by 野口隆史
其實情況並沒有那麼嚴重~
大部份情況下材質記憶體不夠那就等於無法執行~
所以只能降低材質的大小~
顯示卡會停頓並不一定是記憶體不夠,有可能是某些場景的瞬間多邊形與像素填充速率不夠快~
如果說記憶體不夠,以前agp剛推時所說記憶體不足時可以跟你主機板上的主記憶體借,可是這只會使速度變的更慢而已
|
well, 另外一個問題是, 其實記憶體需求提高的現在, 一些"反應"會比過去來得激烈.
過去可能只是顯示卡配備32MB~64MB, 廠商也知道而不敢超過很多, 於是使用AGP textuing的時候就頂多是多一點點的量; 但是現在因為材質的流量比以前大出很多, 場景複雜度也較高, 所以失速的狀況要是發生就會比以前來得嚴重.
瞬間polygon rate與fillrate趕不上的話, 可以看到很明顯的fps down, 但是不應該會"still(失速)". 如果是直接性的停頓(數秒~十數秒)的話, 解釋成讀取場景與材質資料應該是比較適合的理由. 這個在UT也有發現過, 配備64MB時部份轉場會停頓數秒; 但是128MB時則完全不會.
畢竟同樣一個場景不應該在某個角度猛然出現複雜度遠遠大過其他角度, 甚至大到rendering time會變成其他角度的數十倍(100FPS -> 0.5FPS以下?)的部分, 似乎難以用引擎寫作不良或場景設計不佳來解釋, 而且還是發生在技術用的展示Demo上, 這就更令人難以理解了.
另一個理由是AGP-Texturing實際上實用性亦低, 當然AGP-texturing是一個備胎般的存在, 但是因為使用AGP頻寬的來源頗多(還有geometry, polygin-list等等需求), AGP-texturing的效率其實比想像中低很多.