小屋創作

日誌2020-07-01 17:53

【筆記】Surface Shader - 2. Channel

作者:樂小呈

Surface Shader 筆記
2. Channel

= Surface ======

Albedo
反照(反射?)率,繪製該位置時的顏色
受光線照射時,吸收什麼顏色,反射出什麼顏色的光

Emission
自發光,繪製該位置時的 HDR顏色

Normal
法線,繪製該位置時,對於光照角度所呈現出的的虛擬陰影
normal map需要用 UnpackNormal(tex2D( , ))轉換
> o.Normal = UnpackNormal(tex2D(_mainBump, IN.uv_mainBump));

Alpha
不透明度,繪製該位置時的不透明度
需要在 #pragma 添加 alpha:fade
> #pragma surface surf Lambert alpha:fade
需要更改渲染列隊 alphaTest, Transparent [參照筆記 3.Buffer and Queue]

= Texture ======

Diffuse map
漫反射貼圖,用於 Albedo通道
只提供顏色來放置至 Mesh上

Alpha map
不透明度貼圖,用於 Alpha通道
提供對應 Diffuse map每像素的不透平度值
Texture 顏色由黑 (0) 到白 (255),對應不透明度  0 ~ 1

Normal map
Normal貼圖,用於 Normal通道
提供對應 Diffuse map每像素 Normal方向,顏色的 rgb分別對應了表面方向 loacl軸的 xyz
Red: 0 ~ 255 => x: -1 ~ 1
Green: 0 ~ 255 => y: -1 ~ 1
Blue: 128 ~ 255 => z: 0 ~ 1
因為 normal map z軸方向不可能朝向表面(朝內),所以 b(藍色)值的最小值為 128 (z: 0)
這就是為什麼 Normal map會紫紫的
運算時會根據光源和 Pixel的 Normal來做出陰影
註: Unity使用 normal map要先在 Inspector設定 Texture Type


Shader的教學看到一段落了,現在會慢慢補上我寫的筆記
如果有錯或可以改進的地方,麻煩各位大大指點

19

1

LINE 分享

相關創作

國考跟憂鬱症日記 3/26

國考跟憂鬱症日記 3/21

國考跟憂鬱症日記 3/29

留言

開啟 APP

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

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