MMD聯(lián)動Unity學(xué)習(xí)筆記 Vol.39 UnityChanToonShader角色設(shè)置

前言
????上一期我們共同學(xué)習(xí)了UnityChanToonShader的基本設(shè)置,這回我們以Unity醬為例,對人物進(jìn)行著色器的設(shè)置。我們UnityChanToonShader版本以UTS v2.0.6為準(zhǔn),Unity醬的模型我們可以在AssetStore下載,也可以在Unity醬的官網(wǎng)下載。UTS2基本上可以實現(xiàn)插畫中Unity醬的表現(xiàn)。在UTS2中,交換著色器還可以對應(yīng)各種各樣的燈光,具有多數(shù)的實時點光源的環(huán)境和只有方向光的暗淡的環(huán)境,和沒有方向光的環(huán)境,UTS2也是沒有問題的。


設(shè)置
????這個設(shè)置可以切換初學(xué)者和專業(yè)UI界面,沒有習(xí)慣UTS2的話,我們可以選擇Beginner UI。Beginner UI里,我們可以對UTS進(jìn)行最必要的操作。

????這個場景中有兩個Unity醬,右側(cè)的模型使用了UTS2著色器,左側(cè)的模型保持原來的著色器。




????

????Unity醬模型的Body(身體)和Hair(頭發(fā))材質(zhì)適用兩面顯示的材質(zhì),我們在UTS2中,將身體和頭發(fā)的材質(zhì)的Culling Mode可以設(shè)置為Culling Off。
????接著,我們將頰紅的材質(zhì)mat_Cheek設(shè)置為半透明。

????半透明材質(zhì),我們可以在NoOutline文件夾內(nèi)的ToonColor_DoubleShadeWithFeather_Transparent。
Basic Shader Settings菜單里面將Use BaseMap a as Clipping Mask設(shè)置為ON。

這個設(shè)置是可以使基礎(chǔ)貼圖中阿爾法通道有效的開關(guān)。調(diào)整Clipping Level滑動條可以顯現(xiàn)出頰紅,Transparecy Level滑動條可以微調(diào)頰紅的深淺度。

下面,我們調(diào)整眼睛的材質(zhì),眼睛的紋理也同樣有阿爾法通道。眼睛的材質(zhì)eye_L和eye_R設(shè)置為NoOutline文件夾里的ToonColor_DoubleShadeWithFeather_TransClipping。
和前面頰紅的材質(zhì)和著色器不同的是,眼睛沒有必要選擇成半透明。等我們想要使用阿爾法通道的時候,再選擇_TransClipping系的著色器。

Use BaseMap a as Clipping Mask設(shè)置為ON,適用阿爾法通道。
身體材質(zhì)的設(shè)定。首先打開Sharing Textures的副菜單,1st_ShadeMap的右側(cè)的按鈕設(shè)置為ON。

????改為Sharing BaseMap(共享基礎(chǔ)貼圖),第一影色用的紋理和淺色用紋理可以共用。打開1st ShadeMap的右側(cè)的顏色板,決定乘算紋理的陰影顏色。原來Unity醬有淡紫色的陰影色,現(xiàn)在我們分出淡紫系的顏色。設(shè)置好第一陰影色后,將BaseColor Step的滑桿向右移動,查看效果。調(diào)整Step的參數(shù)值,調(diào)整成感覺不錯的陰影。

????接著,Base/Shade Feather的滑桿向右拖動,將淺色和第一陰影色的中間羽化。稍稍加強(qiáng)陰影色的強(qiáng)度,再稍微調(diào)整。

????陰影色的調(diào)整已經(jīng)結(jié)束了,我們環(huán)繞角色模型來看看效果如何。
????身體用的材質(zhì),看起來還不錯。同樣,頭發(fā)的第一陰影色也可以。從Sharing Textures副菜單里面共享1st_ShadeMap。接決定著乘算第一陰影色的紋理。頭發(fā)也乘算了淺紫色。第一陰影色決定后,BaseColor Step向右移動。然后,決定陰影色的部分后,用Base/Shade Feather對顏色分隔部分進(jìn)行羽化。

????羽化后,再次調(diào)整第一陰影色。調(diào)整結(jié)束后,旋轉(zhuǎn)整體查看模型的陰影部分效果。
????下面我們調(diào)整皮膚的材質(zhì),順序和剛才一樣。我們將點擊共享基礎(chǔ)貼圖的按鈕來共享紋理,決定第一陰影色,調(diào)整BaseColor Step給皮膚添加適當(dāng)陰影。然后,調(diào)整Base/Shade Feather來給顏色與陰影間隔增加羽化效果。調(diào)整完后,移動查看陰影的效果。與皮膚材質(zhì)Skin同樣,臉材質(zhì)Face的設(shè)定也使用這個方法。項目中的其它材質(zhì)也同樣設(shè)置。
????眼睛等材質(zhì),設(shè)定Sharing Texture(共享紋理),BaseColor Step = 0.5,眼睛不需要陰影部分,第一陰影色指定為白色即可。
????各材質(zhì)的第一陰影色設(shè)定結(jié)束后,再次查看場景的模型。臉的膚色稍微有點暗,可以對臉的陰影顏色進(jìn)行微調(diào)。

????在這個階段,我們簡單地把基本的顏色表現(xiàn)移植過來。下面,我們使用UTS2再使畫面的效果更加飽滿。? ?
????選擇身體材質(zhì),打開RimLight Settings菜單,將RimLight的按鈕設(shè)置為ON。RimLight激活后,身體會顯現(xiàn)出初期的白色邊緣光的狀態(tài)。

????設(shè)置RimLight Color,為了差別顏色,我們設(shè)置為藍(lán)色色系。調(diào)整RimLight Power的參數(shù),擴(kuò)大邊緣光的范圍。維持邊緣光的邊緣的亮度,想減少對內(nèi)側(cè)的影響時,調(diào)整 RimLight Inside Mask的參數(shù)即可。這個參數(shù)可以在切換Pro/Full Control UI后顯現(xiàn)出來。我們想要一些紅色的色差的感覺。微調(diào)RimLight Color的參數(shù)值。邊緣光設(shè)置結(jié)束后,我們環(huán)繞場景查看效果。邊緣光的邊緣顏色再微微減少一些。

????邊緣已經(jīng)有了不錯的感覺,但是頭帶里和衣服的尾部里也出現(xiàn)了不想要的邊緣光。下面,對于不想要的地方,有其它方法對材質(zhì)進(jìn)行處理。

????選擇模型里Shirts網(wǎng)格,將Skinned Mesh Rendered的材質(zhì)的大小變更為2個。復(fù)制身體的材質(zhì),制作成2個,將它們分別拖到材質(zhì)的Slot(插槽)里。身體材質(zhì)的Culling,之前設(shè)置為Culling Off,新制作的材質(zhì)分別設(shè)置為Back Culling和Front Culling。也就是說,使用兩面材質(zhì)是為了將不適配的部分剝離出來。同樣,具有頭帶部件的hairband也使用同樣的方法進(jìn)行操作。

????在最后將貼著里側(cè)的面,F(xiàn)ront Culling的材質(zhì)的RimLight Color設(shè)定成深色的話,部件的里面的光的問題就可以解決了。
????接下來,給Hair材質(zhì)也追加RimLight。

????這里的差色,我們選擇紫系顏色。調(diào)整RimLight Power和RimLight Inside Mask,再稍微調(diào)整RimLigtht Color,大體不錯的感覺出來了,移動相機(jī)查看一下效果。

????從這個角度,再稍微調(diào)整RimLight Color。最后使用相機(jī)環(huán)繞場景確認(rèn)效果。

????下面,再對眼睛穿到前發(fā)的前面進(jìn)行處理,使用Stencil著色器。復(fù)制設(shè)定完成hair材質(zhì),變更為Stencil設(shè)定的著色器。

????復(fù)制后hair材質(zhì)命名為hair_StencilOut。將hair_StencilOut的著色器變更為Toon_DoubleShadeWithFeather_StencilOut。這樣對于"被刪除的一側(cè)"的材質(zhì),可以使用StencilOut系著色器。從Unity醬的Mesh里選擇hair_front和hair_frontside,將材質(zhì)與hair_StencilOut交換。

????接下來,對“刪除方”部件的材質(zhì)eye_L、eye_R、eyebase、eyeline的著色器進(jìn)行修改。將“刪除部件”的材質(zhì)設(shè)置為StencilMask系的著色器。

????也就是將eye_L、eye_R設(shè)置為NoOutline里面的ToonColor_DoubleShadeWithFeather_TransClipihng_StencilMask,eyebase的話使用ToonColor_DoubleShadeWithFeather_StencilMask,eyeline設(shè)置為ToonColor_DoubleShadeWithFeather_StencilMask

????著色器改變后,Stencil功能起效后,可以看到眼睛穿透前發(fā)。這個是我們在日漫中常見的眼睛突出的效果。
????最后,我們再給需要輪廓線的部件添加輪廓線。

????需要分配輪廓線的部件有body、body_BackCulling、face、hair_StencilOut、skin。我們從Ouline Settings菜單里設(shè)置這些部件,Outline Width = 2,Blend Base Color to Outline設(shè)置為ON。Blend Base Color to Outline可以將輪廓線顏色和基本顏色進(jìn)行混合。

????????以上就是這期的全部內(nèi)容,我們來簡單總結(jié)一下。我們使用UTS2對Unity醬進(jìn)行了簡單的設(shè)置,只需要簡單最少的幾個步驟就可以得到不錯的效果,同學(xué)們可以實際上手操作,很輕松就可以學(xué)會。習(xí)慣UTS2的使用方法,接下來就可以擴(kuò)展到更加復(fù)雜的表現(xiàn)。