安裝說明、前置設定(重要) 的最後,有提到

ASP需要的最基本renderer feature總共有3個,請務必記得在renderer data將加入並且啟用下列renderer feature : ASP Material Pass、ASP ShadowMap以及ASP Depth-Offset Shadow


這三個renderer feature分別就是三個獨立的PASS,這一頁會詳細解釋這些PASS的用途。

Material Pass


當人物Renderer的材質球使用ASP/Character或者ASP/Eye Shader時,這些renderer就會被寫進Material Pass中。

Material Pass會將renderer 4種資訊儲存到一張RGBA32貼圖當中,分別是:

RGBA通道 資訊類型 說明
R Material ID 渲染人物下的所有ASP材質球,ASP Character Panel都會賦予一個獨立的per-mateiral ID。
G Color Luminance 該renderer的albedo(包刮albedo map)的顏色亮度,是一個0~1的灰階色
B Outline Weight 來自Vertex Color的B通道,設為0的話outline會強制不顯示。
A 保留,用於自行擴充

Material ID非常重要,像是screen space outline還有其他後處理(比如說ToneMapping),都需要material ID才能正確知道當下的pixel是不是卡通渲染人物的pixel,可以用於指定特定效果在該pixel或者用於優化(跳過非卡通渲染人物的pixel)。

另外 Material Pass還會額外將renderer寫入一個獨立的depth map,原因是像是screen space outline這類螢幕空間Shader,必須透過深度判斷才能知道是否有其他物件(非ASP 材質)在人物之前,才能正確坐出遮擋的效果。這也正是screen space outline無法套用在半透明物體的原因,因為半透明物體不會提供這些效果所需要的深度資訊。

ASP Shadow Map


當人物Renderer的材質球使用ASP/Character或者ASP/Eye Shader時,這些renderer的陰影就會被寫進ASP Shadow Map中。換句話說 - 這是一張僅有人物的shadow map,沒有場景上的使用其他shader的動態/靜態物件的陰影。

Untitled

ASP Shadow Map Renderer Feature提供了一些參數供使用者自訂

參數名稱 說明
Character Shadow Map Resolution ASP Shadow Map的大小,有1024x1024、2048x2048和4096x4096三種尺寸可以選擇
Clip Distance ASP Shadow Map的最遠渲染距離
Cascade Count Cascade Shadow Map的層數,最多支援到4層cascade。
Shaodw Fade Ratio ASP Shadow Map的陰影淡出程度,設為0的話是完全不淡出,在與相機距離超過clip distance時會看到陰影直接被clip掉,建議設置是0.5~1

ASP Depth Offset Shadow