LV. 14
GP 217

【心得】高品質卡通角色實現心得(shaderforge)

樓主 eddy21709
大家好~這次新年在家終於完成最近研究的高品質卡通角色了~影片預覽效果
:
這次的效果參考大量文章(主要為崩壞3)以及自己的一些理解所完成 之後如果大家有興趣的話我會一一把每個效果做介紹  這次使用unity2018.3 並使用shaderforge去製作shader (shadergraph不能作外描邊ORZ)  以及post-processing做濾鏡效果 並且藉由調整unity的shadow來實現物體的投影  這次同樣也是實時的光影但是進行了許多改良與優化 跟半年前的角色一比 果然差有點多阿@@ 趁著新年在家沒事把技術分享 順便請教板上有沒有大大能給予優化ORZ  

接著來介紹一下卡通風格的基本概念與我所用到的作法:
1.外描邊(outline):卡通風格的靈魂之一 有很多種作法 這邊我使用的是shaderforge裡面自帶的沿著模型法線(Normal)向外擠出的作法 同時還有作一些小加工(頂點色控制粗細)

2.漫反射(Diffuse):這次的做法跟之前不太一樣 之前的作法只能計算一個硬邊的陰影 這次的做法參考了崩壞3的多通道ramp上色 可以一層一層的疊加上色 圖引自http://youxiputao.com/articles/11839

3.頭髮高光:這邊使用的是一套很給力的公式 基本上照著公式走就可以達到影片中的效果

4.邊緣光:這一部分我做了2種邊緣光 第一種使用fresenl來模擬角色受光面的邊緣光 第二種也是使用fresenl但是是做在背光面 這邊有參考薩爾達的作法  https://connect.unity.com/p/zelda-inspired-toon-shading-in-shadergraph 圖中可以清楚看到邊緣光的效果
第一種邊緣光:
第二種邊緣光:

5.物體投影和面部補光:投影的部分使用unity自帶的ShadowMap只要調整好數值 並且在shader裡面進行加工 就可以達到物體的投影(EX:頭髮投影到臉上的陰影)並且使用PCSS再進行加工 面部補光這邊是使用修改頂點色(Vertex COlor) 讓臉部不要有奇怪的陰影 圖引自http://gad.qq.com/article/detail/10052
6.高光:為了體現不同材質 特別利用高光來區分出金屬材質與盔甲 金屬材質使用一般高光的計算方式)比較虛)  盔甲與衣服等等 則是經過較特別的計算 讓他變成硬邊的高光 圖中紅色是一般高光  綠色是硬邊高光

7.眼睛:眼睛的部分有作出高光會隨著攝影機視角移動跟著進行偏移 以及球體的光線焦散效果 也是參考崩壞3的作法(雖然沒有全部實現)

8.特殊後製及工具:繪製頂點色的部分 使用了unity上免費的工具PolyBrush來繪製(比我預想中的好用!) 後製的部分同樣神好用的post-processing以及物體投影(陰影)改善的PCSS腳本 少了這2個效果瞬間落漆一個檔次...... 以下對比圖
最後附上材質圖:

shaderforge的節點就沒辦法了 因為非常非常非常複雜 連我自己都快看不懂了wwww
然後以上的做法都只是概括的提一下 之後會再把每一個效果的作法 進行深入的詳解 敬請期待!
板務人員:

238 筆精華,10/12 更新
一個月內新增 0
歡迎加入共同維護。


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】