這是一個用來制作shader的插件,也是一個很好的學習shader的工具。這個插件上手很容易,但是要用它來制作理想的Shader,需要下點功夫。
這兒先列舉出基礎知識,以及我的一些實踐。以后我還會繼續學習並記錄更多的內容。
一、基本操作:
1)、截斷連線:按住alt並右鍵
2)、框選:按住alt鍵並框選
3)、對於不認識的節點,右鍵選擇what,出現API官網,可選簡體字
二、開始設置:
1)、新建材質要命名並設置好路徑
2)、考慮shader可能會運行的平台或顯卡配置
3)、渲染路徑:向前渲染或延遲渲染,后者能避免重復渲染,提高渲染效率,但不能實現抗鋸齒和混合技術
4)、光照模式:自定義光照等
5)、鏡面反射模式:鏡面或金屬
6)、光澤模式:光澤或粗糙
7)、Geometry->Face Culling:背面切除或正面切除或雙面渲染
8)、Blend Mode:混合模式
三、Main輸出端:
1)、Diffuse Power:漫反射力道,相當耗能
2)、Metallic:金屬質感,值越大時漫反射越小
3)、Gloss:光澤,值越高光澤度越高,1為極值,物極必反
4)、Emisson:自發光
5)、Transmission:透射,決定有多少光線可以透過材質
6)、Light Wrapping:環繞光,讓光線或某個通道的值環繞對象,可做出皮膚的效果
7)、Diffuse Ambient Light:漫反射環境光,添加光線或環境光或立體貼圖,不用自發光或光源,也能顯亮
8)、Specular Ambient Light:鏡面反射環境光,可映出環境的貼圖???
9)、Diffuse Ambient Occlusion:漫反射環境光遮罩,抑制間接漫反射光線
10)、Specular Ambient Occlusion:鏡面反射環境光遮罩,抑制間接鏡面反射光線
11)、Custom Lighting:自定義照明,被光照射時,自定義照射效果
12)、Opacity:不透明度,控制最終像素的透明度
13)、Opacity Clip:不透明度剪切,根據阿爾法通道剪切不透明區域
14)、Refraction:反射,用於折射背景像素的屏幕空間 UV 偏移。請確保在使用前將 Opacity(不透明度)設置為低於 1 的值,以便折射效果可見
15)、Outline Width:描邊寬度
16)、Vertex Offset:頂點偏移,插入每個頂點所需偏移量的 XYZ 坐標
17)、DX11 Displacement:DX11 位移,此選項和 Vertex Offset(頂點偏移)的作用非常類似,但是與 DX11 曲面細分一起使用。(請注意,DirectX 僅適用於 Windows,需要 DX11 GPU 且必須在 Unity 設置中啟用)
18)、DX11 Tessellation:DX11 曲面細分,此選項控制您要將三角形分割為多少個細分。(請注意,DirectX 僅適用於 Windows,需要 DX11 GPU 且必須在 Unity 設置中啟用)
四、部分節點:
1)、加減乘除:Add、Subtract、Multiply、Divide
2)、乘方、平方根、對數:Power、Sqrt、Log
3)、絕對值:Abs
4)、Sign:取正負號及0
5)、Ceil:進位取整,輸出時將其輸入向上舍入為最近整數
6)、Round:四舍五入
7)、Floor:舍位取整,輸出時將其輸入向下舍入為最近整數
8)、Trunc:去零取整
9)、Step:比較,輸出0或1,用來區分出每一層的明暗,輸出的是黑白紋理
10)、If:條件
11)、Frac:取小數部分,此節點在與 Time(時間)節點一起使用時非常有用,會隨時間變化帶來鋸齒波
12)、Fmod:取模,輸出 [A] 除以 [B] 的余數
13)、Clamp:限定范圍
14)、Lerp:插值,如果 [T] 為兩者間的任一值,則將輸入兩者的線性混合
15)、Posterize:色調分離,基於經過 [Steps] 的值對值進行四舍五入取整。[Steps] 值為 5 時將在 0 到 1 的范圍內創建 5 段
16)、Blend:混合,有不同的混合方式,用時查看API
17)、Remap:重映射,將值從一個范圍重映射到另一個范圍,用來加深或減弱
18)、Noise:噪音,根據兩分量輸入(例如 UV 坐標)生成偽隨機點
19)、One Minus:1 減,輸出 1 減去其輸入。與顏色輸入一起使用時,將反轉顏色
20)、Negate:取反,輸出其主輸入乘以 -1。實質上讓正值變負,讓負值變正
21)、Component Mask :分量遮罩,遮罩某個通道
22)、Channel Blend :通道混合
23)、Fresnel:菲涅耳,邊緣亮顯的效果
五、實例:
1.自定義光照: