支持導入任意貼圖的maya工具——材質管理器

簡介:
前兩篇文章中都有提及這個工具,DW_MaterialManager,翻譯過來就是材質管理器。前身也就是之前很多朋友都在用的SP2M。
現在這個材質管理器的主要功能有兩大方面:
1)導入任意命名規則的貼圖到maya軟體中,快速生成目標材質球,貼圖連接設置方式嚴格按照PBR規則。
2) 支持不同材質球之間的相互轉換,並且考慮原材質的細分與置換情況。
也就是說,不管你用的什麼貼圖工具去做貼圖,只要你最後要在maya中渲染,材質管理器都可以極大地方便與加速你的流程。
之所以改名字,也是因為現在的版本更新的功能非常多,已經不僅僅涵蓋substance painter(designer)到maya流程的材質連接了。 現在的版本除了預製的模板以外,還支持自定義貼圖命名規則,理論上來說,可以支持所有軟體導出的貼圖快速在maya中連接材質。不管是mari、mudbox、3dcoat、ddo或者photoshop,甚至是megascan 等材質掃描庫出來的貼圖,都可以很好地支持。所以為了不讓大家把自己的想像力僅僅局限在sp 到maya的小小框架里,我現在把這個升級版的工具叫做材質管理器。
下載地址: https://pan.baidu.com/s/1dFKQwSx#list/path=%2F
自定義貼圖命名規則:

工具的強大之處:
1) 支持影視常用的3大渲染器(vray、arnold、Redshift)
2) 6種材質(VRayMtl、aiStandard、aiStandardSurface、alSurface、RedshiftArchitechtural、RedshiftMaterial)
3) 支持7種貼圖模板輸入(包括substance designer的模板,以及自定義模板)

雖然這個工具發布有半個多月了,但是一直沒詳細跟大家說,所以我相信沒人會想到這裡要說的用法。 你們肯定以為,用Vray的模板就只能創建Vray的材質球,用Arnold的模板就只能創建Arnold的材質球。
實際上目前支持任意配對,也就是說,你使用Vray貼圖模板導出的貼圖,也可以生成Arnold材質球!
5) 支持使用高度圖當做置換圖,產生真實置換;支持普通8位置換圖、以及32位浮點置換圖,並且推薦默認參數。


6) 支持按照命名一次性導入多個材質(數量無上限)
7) 支持新老線性工作流兩套流程(老版本arnold使用全局gamma控制,不識別maya的colorManagerment; 新版本取消了全局gamma控制,使用maya自帶的colorManagerment。vray在3.3左右也有類似改動)


9) 支持openGL 和 directX兩種 normal貼圖類型,支持識別與互相轉換。

10) 支持不同渲染器之間細分數值、細分類型、置換強度的轉換(轉換材質之後,保持原來的細分置換效果,可跨渲染器)
11) 支持各種材質不同bump處理之間的轉換(vray直接連貼圖,arnold 使用maya bump2d節點, redshift 使用自製rsBumpNode 或者 rsNormalMapNode)
12)支持UDIM貼圖
已知的一些問題:
舊版本arnold使用32位貼圖時會忽略全局的gamma設置,這一點暫時不識別,做不到統一。(我沒想到好的識別圖片是32位的方法,有朋友有思路的望不吝賜教)
不支持mari以外的udim格式。其實UDIM的規則也有好幾套,不過用的最多的還是Mari這套規則,別的幾乎沒見人用過。所以我在這裡就偷個懶,沒有加別的規則。等到真有人用的時候再說吧。

不支持spec/gloss貼圖模板。因為技術上的問題,metal/rough 貼圖可以很簡單地轉換成 spec/gloss貼圖,但是反過來的話,因為信息不足,並不是肯定可以轉換,所以這一條就不支持了,大家盡量用metal/rough貼圖吧。
參考:Question regarding difference between PBR Spec/Rough and Rough/Metal workflow

下一階段更新方向:
首先是全方面支持glossyFresnel這個材質上的重大革新。因為考慮到很多朋友在使用舊版本的渲染器,所以需要設計一套節點完成這個效果。讓低版本的用戶們也可以使用這個功能。
現在這個功能的重要意義被大家嚴重低估。
具體的一些情況我這篇不會講很詳細,可以參考下這條微博 Sina Visitor System
本來是考慮材質轉換功能要支持 層材質 和 3s材質 的。不過根據這一段時間收到的反饋來看,使用材質轉換功能的人非常少,這兩個功能的開發難度又比較大,需要消耗大量時間,所以將無限期擱置。
每條功能的詳細解釋:
這裡相當於幫助文檔了,你遇到問題的時候再來查看這一部分的內容吧。
UI:

UI→ reset to default 恢復UI面板布局與參數到默認狀態
Material Importer:
導入與連接材質的功能模塊。

CreateMaterial 選擇創建材質的種類, 可以選擇 VRayMtl、aiStandard、aiStandardSurface、alSurface、RedshiftArchitechtural、RedshiftMaterial
UseTemplate 選擇導入貼圖的預製模板,可以選擇 Arnold4(aistandard),Arnold4(alSurface),Arnold5(aistandard),Redshift,Vray,PBR_MetalRough,SubstanceDesigner_MetalRough,Custom
其中前面幾套都是substance painter的貼圖預製;SubstanceDesigner_MetalRough 是substance designer的預製。
Custom是用戶自定義選項,選擇這一項之後,會多出自定義貼圖命名規則的UI,你要確保你想要導入的貼圖中,對應的貼圖名要包含自己填入的關鍵詞。比如圖中的自定義預製就可以識別這一套命名: abandon_Diffuse ; abandon_Metallic ; abandon_Roughness ; abandon_Normal

並不是所有通道都必須使用。比如舉例的這一套貼圖裡,並不需要使用f0 或者ior等等。只需要保持對應的框為空即可:


usingMayaColorManagement 勾上使用maya的色彩管理,會給每個連入的貼圖設置colorSpace,Raw或者sRGB。


參考:渲染出的圖片和三維軟體中顯示不同?!都是gamma惹的禍 - 知乎專欄
openGLNormal(uncheck means directX normal) 勾上表示導入的法線貼圖是openGL類型,不勾表示導入的法線貼圖是directX類型
heightMapAsDisplacement 勾上表示導入的heightMap會作為置換貼圖使用,會連接一套置換節點。並且會自動開啟選中物體的細分置換屬性。


heightMap_8bit 勾上表示導入的置換貼圖是普通的8位置換(或者是16位,非浮點);不勾表示導入的置換貼圖是32位浮點置換,同時推薦使用heightDepth為1;同時zeroHeight將不起作用。(因為32位置換中,圖片的亮度和物理位移距離一一對應,亮度為1 表示凸起1cm,亮度為2表示凸起2cm,-1 表示凹下1cm,0表示不凹不凸。所以一般不需要設置置換強度;同時也不需要重新設置水平位置,0就代表水平位置)
參考:Accurate Displacement Workflow
heightDepth 導入置換貼圖的時候,設置的默認置換強度。默認值為0.05。
zeroHeight 導入置換貼圖的時候,設置的水平麵灰度。比如一般的8位置換圖,亮度範圍在0-1;中性灰亮度為0.5,高於0.5的亮度為凸起,低於0.5的亮度為凹下。於是一般設置zeroHeight 為0.5
實際上,對於arnold和vray,這裡的zeroHeight,會影響貼圖本身的alpha offset,zeroHeight為0.5,則alpha offset 為-0.5

而對於Redshift渲染器,由於RedshiftDisplacement 節點帶來的效果要優於maya自己的displacementShader,我們全部使用RedshiftDisplacement 節點。Rs不識別alpha offset,所以這個時候,zeroHeight 會影響 RedshiftDisplacement 節點的NewRangeMin 和NewRangeMax。當然實現的結果和別的渲染器用alpha offset 一致。


MaterialName 載入材質的基本名,這個材質相關的一套貼圖必須都包含這個名字
import/assign 導入、創建並賦予材質,對於選中物體執行的時候,可以直接賦予該物體導入的材質(並且根據設置,可能會開啟物體本身的細分和置換)。沒有選擇任何東西的時候,只生成材質球。
特殊用法:MaterialName這一欄可以輸入多個名字。如果識別到多個名字用分號隔開,比如:
marble;sand;oil
那麼會同時導入三個材質,但是,一定要確保你的maya,在導入之前,就已經有3個同名材質賦予了物體。之後會創建3個新的目標材質重新賦給對應的物體。


提供了一個方便的暫存和賦予材質的小工具。
getMaterial 可以獲取選中物體當前的材質,並且暫存下來;assignTempMaterial會將暫存的材質賦予給選中的物體。
enableSubdiv_dis 選中表示,賦予材質的時候,會考慮之前選擇物體的細分置換情況,賦予材質的同時,繼承之前的細分與置換。

Material Converter 模塊
材質相互轉換的功能,可以選擇物體執行,也可以選擇材質球執行。選擇物體執行的話,執行完會直接將轉換過的材質賦予對應物體,並且考慮原材質的細分置換。
from 原材質類型
to 目標材質類型
LinearWorkFlow 這裡決定了轉換前的線性工作流策略,以及目標線性工作流策略。
use maya colorSpace 是使用maya自己的色彩管理;
classic gamma 2.2 是針對老版arnold的,當老版本arnold全局gamma 都使用2.2的時候,勾選此選項;
classic Raw 是針對老版 arnold的,當老版本arnold 全局gamma 都使用1的時候,勾選此選項。
當使用classic gamma 2.2 轉換到 use maya colorSpace的時候,會將需要修改的file節點的colorSpace 改成 gamma2.2 Rec 709 ,而不是一般大家以為的sRGB,這樣能得到效果的最大接近。
參考:渲染出的圖片和三維軟體中顯示不同?!都是gamma惹的禍 - 知乎專欄
相同的LWF策略之間不會進行實際的LWF設置轉換,比如說,use maya colorSpace 轉換到use maya colorSpace ,其實不需要經過任何設置的修改。同樣的,classic gamma 2.2 轉換到classic gamma 2.2 也不會有任何變動。
對於use maya colorSpace 轉換到 classic gamma 2.2 ,會對貼圖創建gammaCorrect節點,進行gamma矯正。
affect color swatch LWF的改變,也會影響純顏色。比如說,我有的顏色通道,並沒有連入貼圖,但是在不同的LWF下,應該使用不同的數值。
默認應該勾選這個選項。

推薦閱讀:
※從黑暗走向光明,他讓建築完美地融入到自然環境中——安藤忠雄
※VFS玻璃和水材質的正確打開方式,快來Get!
※SP導出貼圖導Redshift渲染效果不同的問題
TAG:渲染 |
