Maya 質感高級教程:卡通著色技術
01Maya 真不愧是三頭六臂,面對這些挑戰(zhàn),我收集了針對Maya 質感部分具有代表性,權威性的教程。 盡管這些教程不是那么振奮人心,但他們可以工作并可為進一步考究和改進的基礎,通過這些練習的學習來探討 Maya 各種節(jié)點的工作原理,是力圖幫助我們能攀登到 Maya 貼圖技術的頂峰,從而構造出一套有條不紊體系結構。隨著經驗的增長,不久我們就會發(fā)現(xiàn)自己已經變成專家了。
由于本文涉及有關 Maya 質感的高級運用,是一種更適合有經驗的用戶的形式來編寫的。加上我的翻譯水平有限,文中所譯難免有不妥之處,懇請諸位看官海涵。
在這一課里,完全地展示了如何創(chuàng)建卡通材質(Cartoon shader)的實際工作步驟,我們使用RAMP節(jié)點,以及其他的幾種工具節(jié)點,對Blinn材質進行重新分布(Remapping),最終,即能達到類似卡通效果的著色方式(Shader)。
此外,本課的內容能加深對連接編輯器(Connection Editor)和工具節(jié)點(Utility nodes)、創(chuàng)建自制的著色網絡(Custom Shading Networks)的深層理解。
第一步:
在 Hypershade 窗口里,選擇 Create->Create Render Node.. 分別創(chuàng)建下列節(jié)點:
Material nodes:
Blinn (no Shading Group) (無著色系)
Surface Shader (with Shading Group) (有著色系)
Texture nodes:
Ramp (no Texture Placement, Normal) (無貼圖坐標)
Utility nodes:
Sampler Info
Clamp
Condition
在 Hypershade 中應該如圖:
Blinn 材質節(jié)點用于描繪物體上的高光。因為Ramp 可以將灰階值重新分布成連續(xù)的色彩,會使灰階 blinn 變成卡通效果。Sampler info 節(jié)點獲取物體邊界的信息。
02第二步:
在 Hypershade 窗口里,鼠標中鍵拖動Blinn1節(jié)點至Clamp1 節(jié)點上釋放,選 Other… ,彈出連接編輯器 (Connection Editor)窗口,
將左邊 Blinn1 節(jié)點的 Outcolor 與 Clamp1 節(jié)點的 Input 相連。
03接下來,讓Clamp1 節(jié)點降低灰階值,使這些值小于等于1(<=1),同時會切斷所有灰階大于1(>1)的高光。(superwhite)。
開啟 Clamp1 節(jié)點的屬性編輯器(Attribute Editor),將 Max 左邊的輸入框設為1。這個輸入框代表紅色通道(中間=綠色,右邊=藍色),
由于灰色是R,B,G各相等值混合而成的,所以,在此只需要一個通道就可以了。 Min 應設為0。
04第三步:
以上述方法,用連接編輯器,將 Clamp1 節(jié)點的 Output R 與 Ramp1 節(jié)點的 V coord 相連。
05請確保 Ramp1 節(jié)點的 Type 為 V Ramp?,F(xiàn)在Ramp1 的 color output實際上等于 Input 的灰階值(0<= clamp1 Color R Output <=1)。
這種方法稱為重繪(Remapping)。
06第四步:
將 Ramp1 節(jié)點的 Out Color 與 Condition1 節(jié)點的 Color If True (Color1) 相連。
將 Sample info1 節(jié)點的 Facing Radio 與 Condition1 節(jié)點的 First Term 相連。
Facing Ratio 是表面上點面向攝影機的角度,如果這個點距離攝影機90度,F(xiàn)acing Ratio =0,
如果表面法線和攝影機射線之間角度是0,F(xiàn)acing Ratio=1。具體請查閱 Maya在線手冊
第五步:
開啟 Surface shader1 的屬性編輯器。選 Add->Add Attributes… 添加下列屬性(float,scalar):
LineThickness: Min 0, Max 1, Default .2
LineR
LineG
LineB
LineThickness和顏色都屬于用戶可定(user-definable)的。
07第六步:
將 Suerface shader1 節(jié)點的 LineThickness 與 Condition1 的 Second Term 相連。
Suerface shader1 節(jié)點的 Line R 與 Condition1 的 Color If False (Color2 R) 相連。
Suerface shader1 節(jié)點的 Line G 與 Condition1 的 Color If False (Color2 G) 相連。
Suerface shader1 節(jié)點的 Line B 與 Condition1 的 Color If False (Color2 相連。
將 Condition 的Operation 設為 Greater Than。
08如果 Facing Ratio (condition1的第一個條件)小于 LineThickness (第二條件),Condition1 的Output = Color2 (surface shader1里
設置的LineRG,否則 Output = Color1 (來自ramp1-blinn1 的顏色)。
將 Condition1 節(jié)點的 Out Color 與 Surface shader1 節(jié)點的 Out Color相連。
下圖是 Hypershade 中的節(jié)點關系:
09第七步:
可以把 Ramp1 調成你喜歡的色彩??ㄍú馁|通常把 Ramp 顏色之間的 Interpolation 設為 None,這樣能產生較為均勻的邊線。下圖為 Ramp1
最終的外觀。
此外,也可以做一些額外的修改:
1.在surface shader1 屬性編輯器里調整Line Thickness 和 colorRGB,這兩個值分別控制邊線的粗細和顏色。
2.調節(jié) blinn1 參數(shù)能產生不同的高光。
3.甚至可以給 Blinn1 添加一個凹凸貼圖,這種方法一般用于運動的小蟲。
4.也可用其他的材質代替 Blinn1 ,產生各式各樣高光。
總結:
本課闡述了如何創(chuàng)建卡通材質,通過這一課的學習,掌握了創(chuàng)建卡通著色技術,同時也對各種節(jié)點之間工作原理及建立
復雜的著色網絡有了更
加清楚地認識。