用3D製作2D吉卜力風格樹

3D仿2D風格

要用3D來仿造2D風格,而且令人看不出是3D的話
單單使用Toon Shader,是「治標不治本」

因為toon shader只是改變表面顏色,依然無法規避3d立體感的問題

要消除3D的立體感,我們需要從3D物件的形體下手
這帶出本文的主體:Custom Normal
但在此之前,我們先簡單幾句講一講Normal這個3D屬性

Normal是什麼?

現實世界中,光打到物件表面,然後再反射到我們眼中,於是我們能看到這個世界
但在3D軟件中,光其實是射到物件的normal上,再反射到3D鏡頭
一張平面的Normal,不會有任何變化
因為他的「朝向」只有一個方向
而一個3D球體,他有全方位的「朝向」
所以球體的Normal是變化萬千
此時
如果把球體的Normal應用到面上⋯⋯
隨著球體的位置不斷變化,平面的Normal也在不斷變化
Geometry依然是只有4粒點的面
但Normal被球體取代⋯

一個有著球體Normal的平面

順帶一提,Normal Map就是其中一種

透過「改變Normal」來「Fake」出材質的方法

Normal Map
Normal能模擬出原不存在的材質表面
透過剛才的測試,我們現在認識到
改變Normal能改變物件看上去的樣子

但⋯⋯

就算改變了Normal,又能做什麼?

哈,可以做的事情就多了!
本次文章的主題,2D風格樹
就是用「改變Normal」的方法做出來的!

實際操作

Custom Normal前後的變化
利用類似剛剛「把球體的Normal用到平面」的方法
只是這次是「把另一個物件的Normal用到樹葉上面」
利用改變normal來營造2D感

為了達到這種效果

我們需要有
一個「樹葉的model」和一個「Source Object」
樹葉的model,用大量球體堆疊而成
可以用粒子系統來快速達成
合併成同一件object喔
Source Object
我們只會用到它的Normal,取代到樹葉上
Object本身不需要太在意形狀,只要有個比較隨機的Normal就可以了
不規則形狀就可以
做好以上兩個準備
就開始變魔法!

第一步:使用Data Transfer Modifier

在樹葉用Data Transfer這個Modifier
這個Modifier的作用是:允許目標物件使用另一個物件的data
而我們這次需要轉移的data,就是物件的Normal
Data Transfer Modifier

第二步:設定Source Object

選擇我們準備好的Source Object,揀選Face,開啟「Custom Normal」功能
使用Custom Normal功能

第三步:啟用Auto Smooth

找到樹葉的mesh property(綠色三角形),開啟Auto Smooth
這是為了讓物件讀取Custom Normal的data
Angle不用調整,預設就好

只要一啟動Auto Smooth,馬上就會看見效果

原來一個個實在的球體,現在變成了⋯⋯一朵雲?
別擔心,這代表我們的方向正確
先是令3D object不再像是3D object
然後才想辦法,令它盡可能接近我們需要的型態

第四步:簡單Toon Shader

本篇重點不是Shader,就簡短帶過了
按照下圖就能設置出簡單的Toon,用Color Ramp來控制顏色範圍
自己組一次toon shader,有助理解toon的原理

在這個階段,你會想多花時間調整

如果覺得光影呈現的形狀不對,就回去調整Source Object的形狀
如果覺得樹葉的形體不像,就到Edit Mode調整樹葉球體的分佈
這樣一來,你就能得到一顆2D風格的樹⋯
⋯⋯的組件
之後只需要把樹葉到處複製,組成一顆完整的樹就可以了!

量化使用

當你正滿意你的結果,準備好把它大量複製使用時
才發現⋯⋯為什麼一移動樹葉,本來做好的光影就會變得奇怪?

會出現這個現象,是因為樹葉Normal的來源→Source Object沒有跟著一起被移動

為了解決一系列的煩惱,向大家介紹:

Collection Instance

大家把做好的樹葉,放到新的Collection
這個Collection將會只有樹葉
然後我們就可以把整個Collection,作為Instance來使用
與複製類似,但Instance無需電腦反覆運算,節省大量效能
這樣⋯⋯技術上的步驟
就全部完成啦!
剩下的只是,不斷的調整、嘗試
以下是Mclelun使用此技術的演示作品
問過他本人說可以拿來用XD
Solid View
Render View
雲也是使用同一種技術
只是把顏色改一改,型態調一調,就會像雲了
在這裡推廣一下我朋友
Mclelun是個很有sense的創作者
專門研究2D動畫風格的背景,也經常使用3D軟件輔助

和我一樣,他也喜歡分享知識

他的個人網站Youtube頻道裡有很多關於2D背景的內容

更多3D仿2D教學

《會長動畫筆記》的教學整合專區

經歷重做改版,蒐集了一些精華教學

教學整合將會保持更新

每當我發現有用的教學,就會把他加到專區裡

方便會長我以後翻看XD

CG學習之路漫長,一起加油!