👀 11.眼睛設置
因為眼睛的光照邏輯、使用的貼圖與其他部位的差異較大,ASP將眼睛用的Shader獨立為一個ASP/Eye Shader。
ASP/Eye Shader有以下較特殊的功能供使用者自訂
可選、扁平化的光照
瞳孔的Parallax Mapping內凹效果
眼球的MatCap Reflection
額外、可根據視角旋轉的眼球Hightlight貼圖
此頁會依序介紹ASP/Eye的各個功能與如何設置。
1.使用ASP/Eye Shader
將當前材質球的shader設為ASP/Eye
為了確保沒有材質球沒有殘留其他shader的property與keyword,點擊右上角的“…”並且按下reset,這會確保當前材質球的keyword/property是shader的預設值。


2.關閉眼睛renderer的shadow casting。
一般來說渲染卡通人物時,眼睛的renderer是不用投射陰影的,接收眼珠的陰影容易在臉部或是脖子區域出現低質量的陰影。
3.光照的扁平化
在Diffuse/Lighting Behaviour分類下,ASP/Eye Shader提供兩種光照模式,一種是傳統的Lambert Lighting,另一種是整個材質的每個pixel會統一明暗變化的 Flat Lighting,動漫風格的人物較適合用Flat Lighting (Lambert光照過於立體),因此Flat Lighting模式是預設的。
在選擇Flat Lighting模式下,可以設定Darkest Flat Color這一參數,此參數代表的是當 背光 時,Flat Lighting模式下物體呈現的光照顏色 (面光即為物體自身與main light的顏色混和結果),

💡 注意,影片中藍色的箭頭即是ASP Character Panel Component的正面朝向,人物的ASP Character Panel必須正確設定(藍色箭頭 = 人物object正面)才能正確地計算Flat Lighting的光照。
4.準備UV Unwrapping完成的眼睛mesh與貼圖
接下來,我將會以這一個角色的眼睛作為範例

這一個角色模型的(眼白)與(虹膜+瞳孔)是拆開為兩個mesh的,你可以根據自己的需求去處理這一塊的material/UV
為了方便設定接下來的MatCap Map與可以根據光/視角來旋轉的Hightlight Map,建議將眼睛的UV unwrap為適合做matcap的 layout(虹膜的部分貼齊上下左右四個邊緣)。

5.Parallax Mapping For Eyes
UV調整完畢後,接著依照以下步驟 -
繪製一個(虹膜+瞳孔)用的,以瞳孔為中心的圓形漸層mask。
將Enable Parallax Effect設為true。
將mask拖拉至pupil mask屬性中。
依照自己的喜好設定Parallax Height
完成後,我們即可得到一個有內凹效果的瞳孔。

💡 如果你的眼球mesh的瞳孔再建模得時候本身就是凹陷的,那你就不需要額外使用parallax effect。
6.眼球MatCap Reflection
我們可以透過MatCap貼圖來達成非常風格化的環境反射,MatCap貼圖一般會是這樣的形式,這也是為何我一開始要將眼球的UV調整為貼齊邊緣的形式,因為如此我們便可以
直接套用MatCap貼圖。

6-1. 透過球形法線貼圖修正MatCap效果
將MatCap貼圖拖拉至MatCap Reflection Map屬性內,會發現MatCap的效果並沒有隨著角度跟著變化,原因是MatCap貼圖對於過於扁平的mesh效果有限,我們可以透過使用一個球型法線貼圖來將其修正。

另外,啟用Mask MatCap Reflection By Pupil Mask選項後,便會使用在Albedo/Pupil/Emission分類下的Pulpil Mask用於控制MatCap反射的強弱 。
設定好球型法線貼圖後,調整Reflection Strength來決定MatCap效果的亮度。我們最終會得到一個這樣的MatCap效果。
💡 也可以透過手繪MatCap圖來獲得更加貼近賽璐璐風格的效果!
7. Top-Layer Highlight Map
最後,我們可以再眼睛最上層補上一個高光效果,這一個高光貼圖與MatCap其實是類似的(同時,也都是一種emission),差別在於可以額外設定一個旋轉的角度,Shader內會根據當前的Half Vecotor(光源方向與視角向量的半向量)來旋轉高光。

💡 勾選Darken Emission Along Light Direction後,就會根據背光的程度減弱Color Tint的強度。
Highlight設定好之後的效果如下 -
8.Bloom、Screen Space Lens Flare後處理
ASP/Eye Shader內,不論是MatCap或是Highlight都可以提透過參數調整HDR顏色強度,搭配Bloom與Screen space lens flare後處理便能做出以下效果
⏭️ 前往下一頁 〰️ 14.螢幕空間描邊(輪廓線)使用說明