這一頁將示範如何透過ASP Character Panel設定人物陰影的投射與接收。


1.準備工作

2.設定陰影

到這一步,我們準備好開始設定人物陰影。回到當前人物的ASP Character Panel,往下會看到Shadow Behaviors分類, 此分類下總共有四個可展開項目。

項目名稱 說明
Rendering Layer Information 檢視與設定當前人物底下所有renderer各自的Layer與Rendering Layer Mask。
Built-In Shadow Casting Behaviour 檢視與設定當前人物底下所有renderer是否渲染陰影至Unity內建shadow map中。
Built-In Shadow Receive Behaviour 檢視與設定當前人物底下所有material是否接收來自至Unity內建shadow map的陰影。
ASP Extra Shadow Behaviour 檢視與設定當前人物底下所有material是否接收來自ASP的Character shadow map以及深度偏移陰影

<aside> 💡

從ASP 1.3版之後,新增了設定立方體剔除自陰影的方式,相較於使用額外的shadow map,這是一個易於設定,同時節省效能的方法,以下頁面中我會將這兩種方法的設定步驟區分開來 請讓你的專案只選擇其中一種來設定

</aside>

(新) 2-1 開啟立方體剔除以及設定陰影接收/投射

有綁定ASP Character Panel的角色上,在於Inspecotor上找到ASP Character Panel中的Shadow Behaviours分類

  1. 將SImple AABB Cube to Remove Self-shadowing 的 Enable 設為True

  2. 在shadow behaviours的其他選項中確認人物有確實跟投射Built-In Shadow (應全為綠色)

    image.png

(新) 2- 2 開啟gizmos,調整剔除用立方體中心與大小

  1. 打開Editor中的Gizmos Toggle
  2. 調整Character Center Position Offset來控制剔除用立方體的中心
  3. 調整AABB Size來控制立方體的大小

<aside> 💡

盡量讓這個立方體的大小可以包覆整個人物,但又不會太大。請記住人物本身是不會接收到來自立方體內的物體投射出的陰影的

</aside>

image.png

image.png

(新) 2- 3關閉ASP Shadow Map