前言:
如文章標題,一個模型若用一般的拆UV貼圖的方式,只能有一張對應的貼圖。但同一個模型上,往往有不同想要表達的細節;以及不同的重要度的部位。
例如 : Camera會特寫的部位、以及Camera永遠拍不到的地方,這兩種網格存在同一個模型上,但重要度天差地遠。
是不是有一個方法,可以把不同重要度的網格部位,分開來,讓精細的部位使用高解析度的貼圖;例如4K,而完全不重要的地方放置1K解析度呢?
例如: 龍的臉與龍的腳底,就應該分開來放在不同解析度的貼圖區域。
也就是說,一個模型可以拆分為多張不同解析度的UV貼圖。
這就是UDIMs。
什麼是UIDMs:
UDIMs是在2002 年由 Weta Digita- lRichard Addison Wood 所發明。UDIM 代表的意思是:U-Dimension。而大部分的人都會在後面加一個小寫s : UDIMs。
使用一般UV貼圖可能遇到一個缺點,因為模型的網格對應的貼圖在傳統的UV貼圖方法中,只能使用一種紋理。在大多數情況中,這是足夠的,但若遇到一個很大型的網格,其中有些部位是不重要的;有些部位你想要把貼圖與材質的細節做到極致,因此就會遇到這樣的問題。 若傳統的UV貼圖,您只能決定整張貼圖只有一種解析度,若要把細節刻得很細,那貼圖可能要到4K,但問題來了,若不重要的地方,例如電話亭的底部,趴在地上的鱷魚肚皮等等,卻要使用4K的貼圖,在不重要的地方,特別是大面積、又不重要的。這樣的方式貼圖的運算非常沒效率,在細節重要部位的製作上也相當困擾,牽一髮動全身。
最好的方法,應該就是 重要部位,例如臉、主角的盔甲等;特徵很需要強調的部位,我們把它集中在一個區域中,給這個區域設定比較高的解析度。
而不重要的UV可以集中在特定的幾個區域,給它512或1K解析度即可。這就是UDIMS的精隨。
換句話說,UDIMs 的技術就是將 UV Mesh拆開分佈在好幾張貼圖上。
就像是一張大地圖。而每一個經緯區域代表一張貼圖。 每一個區域有一個編號,編號從左下角開始,也就是第一象限接近原點的地方。而這張貼圖,會被標成1001、往右依序為1002、1003….
往上呢? 就是1011、1021、1031…. 如下圖所示
接著不論你用哪一種動畫軟體或拆UV的專業軟體,你可以使用原本拆UV的技術與觀念,任意的移動UV Island,也就是那些拆開的網格;可以依照你的需求,任意地放在大地圖的其中某一格裡面。
通常,您會創建多個解析度不同的Texture貼圖。以鱷魚為例子,對於主要的細節,例如鱷魚的眼睛或臉,可以具有4k解析度的紋理,對於次要的細節,您可能具有2k和/或1k的紋理。如下圖,可以自由安排每一個區域的解析度。
工作流程:
要開始使用UDIM工作流程,您應該像對其他任何UV貼圖一樣展開網格。之後,您應該確定要將UV貼圖分成多少個紋理。每個網格和工作流程都會有所不同,但最好的最小值是3:一張4k,一張2k和一張1k圖像。然後創建所需的紋理以匹配所需的紋理數量。
之後,將UV移至適當的圖塊並像其他任何UV貼圖一樣對其進行縮放和管理的過程相同。有關佈局 UV的方法,請參考其他拆UV的工作流程。
一旦把UV Mesh安排好,我們就可以把每一個貼圖的區域開始輸出,儲存成圖片備用。或是匯入Substance 中備用。
除了使用第三方應用程序編輯UDIM紋理外,還可以在UDIM紋理上繪畫。
檔案名稱須依照 UDIMs Tiles的排列方法命名,例如貼圖位置在1001,後綴務必有xxx1001.tga,以方便區別。
結論:
3D Artist在建造3D模型與貼圖的過程中,一定會遇到很多細節想要有更精細的呈現,但往往最後在匯入渲染引擎的時候,因為是同一張UV貼圖,因此除了調整UV Mesh在貼圖上分布的面積外,就只能一次性的把整張貼圖更改解析度。
常見的情境有,渲染引擎效能不足,以至於螢幕更新率太低,只好降低貼圖,可是往往貼圖的解析度一降低,就讓整個細節通通不見了。
應用UDIMs的方法,可以更精準地把資源留給最重要的部位,讓視覺品質大大提升。由於各種動畫軟體與專業拆UV工具都有UDIMs功能,因此未來會持續介紹在各種軟體如何操作UDIMs,讓自己的專業度持續提升。
參考:
本教學影片是使用Maya來製作UDIMs,撇開工具;單看UDIMs製作的觀念是沒有問題的。