萬盛學電腦網

 萬盛學電腦網 >> 圖文處理 >> MAYA教程 >> 卡通著色技術Maya質感高級教程

卡通著色技術Maya質感高級教程

   01Maya 真不愧是三頭六臂,面對這些挑戰,我收集了針對Maya 質感部分具有代表性,權威性的教程。 盡管這些教程不是那麼振奮人心,但他們可以工作並可為進一步考究和改進的基礎,通過這些練習的學習來探討 Maya 各種節點的工作原理,是力圖幫助我們能攀登到 Maya 貼圖技術的頂峰,從而構造出一套有條不紊體系結構。隨著經驗的增長,不久我們就會發現自己已經變成專家了。

  由於本文涉及有關 Maya 質感的高級運用,是一種更適合有經驗的用戶的形式來編寫的。加上我的翻譯水平有限,文中所譯難免有不妥之處,懇請諸位看官海涵。

  在這一課裡,完全地展示了如何創建卡通材質(Cartoon shader)的實際工作步驟,我們使用RAMP節點,以及其他的幾種工具節點,對Blinn材質進行重新分布(Remapping),最終,即能達到類似卡通效果的著色方式(Shader)。

  此外,本課的內容能加深對連接編輯器(Connection Editor)和工具節點(Utility nodes)、創建自制的著色網絡(Custom Shading Networks)的深層理解。

  第一步:

  在 Hypershade 窗口裡,選擇 Create->Create Render Node.. 分別創建下列節點:

  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 材質節點用於描繪物體上的高光。因為Ramp 可以將灰階值重新分布成連續的色彩,會使灰階 blinn 變成卡通效果。Sampler info 節點獲取物體邊界的信息。

Maya卡通著色技術質感高級教程   三聯

  02第二步:

  在 Hypershade 窗口裡,鼠標中鍵拖動Blinn1節點至Clamp1 節點上釋放,選 Other… ,彈出連接編輯器 (Connection Editor)窗口,

  將左邊 Blinn1 節點的 Outcolor 與 Clamp1 節點的 Input 相連。

  03接下來,讓Clamp1 節點降低灰階值,使這些值小於等於1(<=1),同時會切斷所有灰階大於1(>1)的高光。(superwhite)。

  開啟 Clamp1 節點的屬性編輯器(Attribute Editor),將 Max 左邊的輸入框設為1。這個輸入框代表紅色通道(中間=綠色,右邊=藍色),

  由於灰色是R,B,G各相等值混合而成的,所以,在此只需要一個通道就可以了。 Min 應設為0。

  04第三步:

  以上述方法,用連接編輯器,將 Clamp1 節點的 Output R 與 Ramp1 節點的 V coord 相連。

  05請確保 Ramp1 節點的 Type 為 V Ramp。現在Ramp1 的 color output實際上等於 Input 的灰階值(0<= clamp1 Color R Output <=1)。

  這種方法稱為重繪(Remapping)。

  [1] [2] 下一頁

  06第四步:

  將 Ramp1 節點的 Out Color 與 Condition1 節點的 Color If True (Color1) 相連。

  將 Sample info1 節點的 Facing Radio 與 Condition

  1 節點的 First Term 相連。

  Facing Ratio 是表面上點面向攝影機的角度,如果這個點距離攝影機90度,Facing Ratio =0,

  如果表面法線和攝影機射線之間角度是0,Facing 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 節點的 LineThickness 與 Condition1 的 Second Term 相連。

  Suerface shader1 節點的 Line R 與 Condition1 的 Color If False (Color2 R) 相連。

  Suerface shader1 節點的 Line G 與 Condition1 的 Color If False (Color2 G) 相連。

  Suerface shader1 節點的 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 節點的 Out Color 與 Surface shader1 節點的 Out Color相連。

  下圖是 Hypershade 中的節點關系:

  09第七步:

  可以把 Ramp1 調成你喜歡的色彩。卡通材質通常把 Ramp 顏色之間的 Interpolation 設為 None,這樣能產生較為均勻的邊線。下圖為 Ramp1

  最終的外觀。

  此外,也可以做一些額外的修改:

  1.在surface shader1 屬性編輯器裡調整Line Thickness 和 colorRGB,這兩個值分別控制邊線的粗細和顏色。

  2.調節 blinn1 參數能產生不同的高光。

  3.甚至可以給 Blinn1 添加一個凹凸貼圖,這種方法一般用於運動的小蟲。

  4.也可用其他的材質代替 Blinn1 ,產生各式各樣高光。

  總結:

  本課闡述了如何創建卡通材質,通過這一課的學習,掌握了創建卡通著色技術,同時也對各種節點之間工作原理及建立

  復雜的著色網絡有了更

  加清楚地認識。

copyright © 萬盛學電腦網 all rights reserved