2010/10/13

Normal Map 法線貼圖 (二)

這篇是補充Normal Map 法線貼圖 (一)的文章. 挑選裡幾篇比較實戰的文章翻譯整理出來.


----以下為翻譯----
原文請點以下連結

標題: Maya > NormalMap > UDK 工作流程
翻譯: Hammer Chen

crapageddon: 有沒有人可以解釋我哪邊做錯了?

我想要把我在maya高模,用低模貼法線貼圖,放在udk裡面。幾乎要完成了,但是在udk裡面模型看起來一團糟。我自認為我步驟都做對了,有沒有人可以指出我哪邊做錯了,這邊我很快速地做出骷顱頭,當作練習的範例。

以下是我的步驟
1. 建立高模


2. 建立低模
利用高模產生產生低模,並確認模型沒有突出。

3 .UV分布圖
把UV分布圖弄整齊,不重疊。

4 -建立法線貼圖
我是用Transfer Map來產生法線貼圖。

5 - 產生法線貼圖 與套用法線貼圖
沒辦法完全呈現高模,但是堪用。

6. 多的UV組
我讀了這篇它說UDK需要另外一組UV,所以我就另外做了。

7. 透過Actor X輸出模型
我用Actor X輸出低模,勾選"Obey Hard Edges。這樣對嗎?

8 - 把模型輸入到UDK
用以下設定

9 - 輸入diffuse map
由Maya 透過Transfer map轉成 TGA

10 -導入法線貼圖
我是用以下設定,正確否?

11 - 建立材質
Diffuse用在diffuse與specular通道,而法線貼圖就放在normal通道。

12 - 把材質套用到模型上面
以下就是套用完材質後的模型



13 - Light map 座標資訊

我發現我之前的uv沒有顯示,我亂調了一下參數,但是還是沒有改善。

有沒有人知道怎樣修正這個錯誤
我哪邊做錯了?
有更好的辦法嗎?

danimal回答:
請進行以下步驟,不要說他媽的我模型爆爛這樣的藉口:
  1. 不需要多個UV set因為你原本的UV沒有疊在一起。
  2. 如前面所提,不要像用在有機模型上面 把UV切割成很多塊,你每UV多一塊 就會在模型上面產生硬邊,因此模型到最後就會產生一堆邊縫,超醜的。
  3. 不要用Transfer Maps的功能。下載xNormal來用,這是免費的,產生的品質絕對會比Maya要好,而且速度快一百倍。
  4. Maya的功能,xNormals也一樣,會產生翻轉的綠色通道。你必須要到photoshop裡面把綠色通道翻轉,因為我個人強烈建議使用xNormal,有一個選項打開後讓你可以在UDK裡面正確顯是綠色軸向,這樣你就不需要在photoshop裡面翻轉了。
  5. 你還必須要要設定低模的smoothing groups。我建議你就直接對這個低模骷顱頭,設定一個smoothing group,全選 Normals,Soften。
  6. 請注意如果你把整個低模設定成Soften。UV島的邊界會自動產生分裂的點,因此,就會有縫隙。但是目標是要把縫隱藏,我建議沿著骷顱頭背面切割,拆UV。
  7. 在第六步驟,你可以得到更好的法線貼圖。選取UV邊界的地方,把它硬邊化。因為在引擎裡面這些邊會是硬邊,換句話說,在產生法線貼圖的時候,是用完全smooth的低模來產生,但是接著選取UV shell的邊界邊,把它硬化,比較兩個步驟產生的法線貼圖,看看哪一個效果比較優。
  8. 在導入UDK裡面的時候,導入ASE。對bSingleSmoothGroupSingleTangent這個參數開啟或是關閉,比較一下效果差異。
  9. 沒確,你的第七步驟設定是對的。應該沒問題。
  10. 你輸入法線貼圖的設定是OK,但是我建議你在做測試的時候,勾選NormalMapUncompressed 。這樣法線貼圖就不會壓縮,你就可以看到最佳狀態好比較差異,另外也別忘了設定LOD group。
  11. 當設定材質,不要用Texture那一個模組,建議用Texture裡面有一個專門給法線貼圖取用的模組。(譯者註:找不到這個模組, 應該是舊功能)
  12. 最後,就像之前所提到的,我會對低模再添加更多細節。如果模型很遠的話沒關係,但是很近的話添加細節是必要的。
基本上你需要很多試誤的過程,我以前也遇到很多問題。整理以下重點:UV是最重要的,因為UV shell會影響你的硬邊,還有縫隙的問題。要注意smoothing groups的設置,這也會影響到在引擎裡面是如何設置的,你的法線貼圖如何被渲染出來,你會得到完全不同的結果,如果你的低模的smoothing groups設定的不一樣的話。

---翻譯完畢---

---以下為另一篇翻譯----
原文請點這個連結

標題: 次世代遊戲高模與低模的建模技巧
翻譯: Hammer Chen

作者: João 'Masakari' Costa

身為製作次世代遊戲的美術,或是做遊戲的mod,建模越來越複雜了。每天都會出現新的技術,而舊的技術也還沒摸熟。今天,我要來談談建模,建立次世代遊戲的資產 (UE3、CryEngine 2等)。我會強調法線貼圖的產生,但是這個教學並不是專注在如何在你的3D軟體裡面產生法線貼圖,畢竟這有很多軟體要提,這篇教學主要是從建模的角度切入,根據模型的細節產生法線貼圖,哪些方法可行,哪些不可行,我會利用Daedalus HK模型當做範例。

1. 前置作業:評估。
有一件是你要知道,就是不是所有的細節都要建高模,尤其是在UV圖的解析度很低的時候。有很多小細節,例如螺帽、凹陷、面板、刮痕、小洞等等的,都會由高模轉低模產生法線貼圖的動作,失去了細節。你必須要事先想到哪些是小細節,哪些是必須要實際建模出來的。還有請記住你的高模不是要用在電影等級 或是只要算圖好看就好,最重要的是最終在遊戲裡面的效果,因此針對遊戲你可以把某些細節誇大或是減低,這樣能夠更容易產生好的法線貼圖,這個階段要快速想過,你可以使用不同的技術,最終的結果才是最重要的。

2. 前置作業:取得法線貼圖與修改
就像2D美術需要很多參考圖庫一般,今日的3D建模師也需要建立很多的模型庫:細節、3D材質、筆刷,才能加速工作流程。經常學習新的script工具,很重要;經常地學習新技巧,改善現有的技術,學習並累積經驗,加強技術等級與速度。在根據高模產生法線貼圖後,不要害怕修改或是添加細節,有紮實的傳統美術基礎很重要。畢竟,你可能會成為頂尖的建模師,如果你Photoshop技巧很爛的話,就不能自己會製材質了!

必要工具/參考

3. 前置作業:聰明地工作(work smart)
這應該大家都知道,但是很多人沒有這樣做。不要懶得管理生產流程,最佳化你3D軟體的選單、快捷鍵。這樣你就可以加速你工作的速度與效率,把你最常用的工具擺在最顯眼的位置。對的工具用在對的地方,要做有機模型的細節的時候 不要害怕切換到Zbrush/Mudbox,在photosho裡面增加凹陷、刮痕、小螺絲、小洞;利用deepUV來放鬆最終的UV。如果你的模型還沒有設定動畫,請確認模型可以用在動畫製作上,要不然調動作的會很不爽!當你在處理 UV貼圖的時候,要考量到模型裡面哪邊會被常常看到, 哪邊比較不常看到,具此調整UV大小。請不要懶惰不做這件事。最後,如同Jon Jones所說:『失敗是好事』。不要害怕心的事物,嘗試用新的方法來達到最佳化的結果。
用圖層管理可以節省資源, 有效率地工作

4. 實做階段:高模
請記住,你不是在做甚麼美術曠世鉅作。高模的唯一目的是要讓低模能夠具有高品質的細節,不用擔心高模的模型拓普不夠完美,不必擔心高模一定要一整塊的模型。有些組件可以是獨立的一塊,儘量把模型外推,減小/誇張化細節,這些目的都是要產生高細節的法線貼圖,不必擔心高模內部亂七八糟,最重要的是外部的shell。因為外面才會影響到法線貼圖的計算!

Smooth 的邊對法線貼圖的產生十分重要,為了要減小低模的硬邊,這樣才能產生美麗的高光效果。不必擔心小的錯誤或是雜點,這些可以很快地在photoshop裡面修掉。
除了把邊界smooth掉以外,你還必須考慮到其他問題,做法A把面外往推出 邊界的地方有做一點chamfer,但是最終的結果會失去高度感。
做法B,有比較好看,但是在遊戲裡面還是不夠好看。做法C 正確的做法,推出的面還有做bevel的動作,這樣在高度上還漸層變化,而平滑的邊讓整個法線貼圖的轉換更平順,即使bevel做得很小。請記住,一定要用bevel,不要只用extrude。

為什麼呢?原因如下:在方法A裡面,你可以看到紅色圓圈的區域,交錯的位置具有相同的法線向量,因此產生的法線貼圖無法提供足夠的細節。方法C,交錯的地方能夠成功地表現模型細節,因此一定要做bevel與smooth edge。對於圓形的表面也一樣。例如D圖:

由左至右,由上至下。第一張圖是初學者的做法,法線貼圖可能還可以,但是效果不會好,高模具有11K的三角面。第二張圖,幾何體有做平滑,拿來產生法線貼圖當然很棒,但是效能會有問題。因為單單一片模型就耗了178K的三角面。 右圖你可以看到呈現的樣子,在第二排的圖片,你看到只有232個三角面的低模 套用法線貼圖後就可以呈現出許多細節!

最後要分享的3DS MAX小技巧:學著用turbosmooth來做模型,它會成為你產生高模的最好工具,你只要先準備好低模,添加chamfer、ring edge loop,然後加上turbosmooth。這樣你可以自行決定細緻度,調高或是調低。

5. 實做:低模
就像Epic Game的Pete Hayes在06年的GDC所說:『低模才是王道』。重申一下這個六字真言,把這句話牢牢記在心中。就像我之前所說,高模的唯一目的就是提供低模(遊戲資產)高品質細節。有些美術喜歡先做高模,然後才做低模;有些人則是相反。不論如何, 有一件事一定要做對,那就是你要讓你個高模能夠去與低模吻合,而不是讓低模去與高模吻合。請記住,遊戲資產有面數的限制,儘量讓你的低模乾淨,有正確的幾何表現,正確的edge loop,把UV邊界藏起來。這樣你就可以自由地修改、最佳化模型。不要害怕去修改低模或是修改它的UV。 要具有彈性,視情況來評估需求,這對你來說是無價的職業技能!

有一點我必須要強調就是----smooth group。你在產生法線貼圖前能夠正確地設置smooth group是很重要的!成敗就在此。另外一個聖經是:Ben Cloward說過的『smoothing group』是法線貼圖的敵人。為什麼,因為smoothing group會強化硬邊,請看以下圖表說明:

圖E,顯示產生法線貼圖時,發生了什麼事情?如果低模有好幾的不同的smooth group,硬邊會在兩個group之間產生,因此,ray投射的時候就會有一條縫隙。在圖F,你可以看到正確的設置,全部模型就只有一個smooth group,這樣就不會有硬邊產生。所以,請記住,把模型全部設為同一個smooth group!

如上圖,低模與高模能夠完美地對應,有些凹陷處被包覆起來。這些都是必須要獨立建模的部分,而不是一整塊模型。我通常會把這些模型分開處理,這裡總共有16片模型。

這張是我Daedalus HK模型的WIP 大約有5800多邊形,貼了diffuse、高光、法線、AO、發光圖,這樣呈現出20 million面的高模效果!

6. 在Photoshop裡面作後製
在個別處理獨立貼圖後,你可能會想用Photoshop來進行合成。就像我之前所說的,建立筆刷庫、刮痕、生鏽、舊化等等效果、添加皮膚細節等。再者,你可以使用照片當作參考,疊上去,利用圖庫產生法線貼圖,但是這超出了這篇主題了 這邊我就不談了。

7. 結論
感謝您的閱讀,希望對你有幫助。我不是專家,如果你有其他方法的話就用你的方法,最終完成的品質才是最重要的。如果你是業餘玩家,希望你能從這篇裡面學到一些技巧,如果你是教授或是學生,希望這能讓你更進步,到最後如果你想成為大師。請記住你要跟許多美術,其它已在業界的人競爭,如果你每天只花幾個小時,你不太可能馬上就趕上這些人。你必須專注在專業上、努力工作、 閱讀教學、還有逛論壇,能夠提供意見。這樣你可以精進技術,做出好的作品。最後,要能對自己的作品做出批評,每次的失敗不要失去動力,你會飽受批評,但是每一次都會因此進步。持續地嘗試吧!你會成功地!

----翻譯完畢----

No comments: