曲面細分

曲面細分

曲面細分,英文稱Tessellation,如果直譯的話應該譯作“鑲嵌化處理技術”。由ATI開發,微軟採納後將其加入DirectX 11,成為DirectX 11的組成部分之一。由於這種技術廣泛的套用在曲面的幾何處理上,因此國內翻譯時通常譯作“曲面細分”。但實際上,這種技術不是只能用在曲面的細分處理上。曲面細分絕不是DX11更新的全部內容,從某種角度看,甚至稱不上最具革命性的更新。那為什麼A/N雙方對於曲面細分這樣的在意,寸土不讓,NVIDIA以GTX400系列擁有超強的曲面細分性能而自居,而AMD在開始推廣DX11顯示卡時也把重點放在了對它的訴求上,甚至目前被最廣泛使用的DX11測試程式Heaven也基本是圍繞著曲面細分來做文章。

基本信息

概述

曲面細分曲面細分
曲面細分最早出現在專業領域,在蟄伏了多年後,終於被AMD引入到PC圖形技術中,通過R600系列的發布,見諸於桌面圖形市場。但由於沒有微軟給予的官方身份,專屬性太強,無論是其它圖形核心生產廠商,還是遊戲開發商,都很難也不願意去跟進這樣的技術。幸好AMD為微軟打造的XBOX360圖形核心Xenos採用了它,由於主機市場的封閉性,所以XBOX360的大量遊戲中都採用了曲面細分技術,微軟親自體驗到了它的好處,並終於在DX11中收編,通過自己的標準強勢推廣,否則還真不知道它要在邊緣徘徊多久。

作用

只是機械的為一個多邊形模型增加更多的多邊形數量,這就是其核心內容,如果不加前後期控制,這樣的技術對於提升圖形效果起不到任何作用,對於性能反而還會起到負面影響。 之所以在DX11中,曲面細分會有改善畫質的作用,我們通過一張DX11流水線圖的觀察就能發現其原因。在增加了Tessellator外,流水線前面還多出了Hull Shader後面還增加了Domain Shader兩個模組,也就是說要想通過曲面細分獲得圖形效果提升,必須在曲面細分前後加以人工控制,不能任由其發揮。

模型

曲面細分曲面細分
由於現在桌面級圖形技術都是基於多邊形建模原理,所以無論是四邊形、三角形圓形,還是任意形狀,都是由數量有限的三角形構成的。這就導致我們經常會發現物體,特別是本應圓滑的物體出現生硬的邊緣,即使粗看下是圓滑的邊緣,在放大觀察的情況下,也是由一條條直線連線而成,這都是因為多邊形數量不足造成的。如果想要獲得能欺騙視覺的圓滑效果,就必須將多邊形數量提升到一定程度。
舉個例子,現在不再火熱但卻更加風情萬種的蘿拉小姐,在《古墓麗影》第一代中出現的時候,全身都是“硬朗”風格的直線條,號稱肌肉美女。但並不是遊戲開發人員希望把蘿拉變成史泰龍,而是在當時圖形運算能力極為有限的情況下,多邊形數量必須嚴格控制,否則遊戲速度就不能得到保證。而在最新的《古墓麗影》版本中,由於硬體機能的極大提升,多邊形已經不是遊戲開發者值得顧慮的問題,蘿拉又回歸了最初設定的性感豐滿,只是玩家的熱情和遊戲的素質不再了。

而通過曲面細分技術產生的數量巨大的多邊形,就給了模型一個“重生”的機會,以為更多的頂點可以通過人工控制的方式實現真實的頂點位移,直接對模型的外形產生影響,讓模型具備真實可信的細節。而利用這大量免費多邊形產生模型頂點位移的技術就被稱作置換貼圖(Displacement Mapping)。
置換貼圖是通過一張深度貼圖(實際上可以理解為一張黑白貼圖,通過黑白深淺的不同來確定對應的頂點的偏移量),來控制通過曲面細分產生的大量頂點,製造出實際的模型位移,使得模型的細節大幅提升,明顯改善畫面質量。從實際的意義和效果上說,這將遠比簡單的平滑模型來的更重要,對於畫面的改善效果也更明顯

各種水坑

對於顯示卡發展比較了解的用戶可能會記得AMD在RADEON 8500時代推出的TRUFORM技術,實際上這也是一種曲面細分技術,只不過它僅僅是只能自動生成多邊形而已,缺乏相對應的控制手段。在AMD的演示中,Truform確實可以把一些看起來見稜見角的模型進行優良的圓滑處理,但在實際遊戲中,這種“地毯式”的圓滑處理就暴露出了問題。
當時最知名的Truform BUG就是在《英雄薩姆》中,將本開線條硬朗的機槍“圓滑”了,使得我們的英雄端著一把很有喜感的圓肚衝鋒鎗周鏇於滿螢幕的怪物中。也正是由於這個原因,Truform失敗了。

相關搜尋

熱門詞條

聯絡我們