UE4材質節點
材質輸入引腳
材質中最為關鍵的是作為最終輸出結果的引腳,根據情況的不同有的會使用,有的並不會被使用。
基礎顏色(Base Color)
定義材質的顏色,接受引數為Vector3(RGB)。顏色採用float形式,任何超出範圍的輸入數值都將被clamp到0~1的範圍內。
相當於在攝影中使用偏光鏡濾除由反射引起的雜光之後的物體的顏色。偏光鏡的效果可參照以下對比圖。
右邊為加了偏光鏡後的效果。
金屬(Metallic)
定義材質接近金屬的程度。0~1的範圍由低到高的接近金屬材質。從個人感官上,金屬性決定的是類似於高光反射強度的引數。
高光(Specular)
在大多數情況下保留預設的0.5即可的引數。調整的是非金屬材質的高光反射強度,對金屬材質無效。
經實際測試,在金屬性為0.5時,這個引數幾乎沒有可視覺識別的影響。在金屬性為0時可以為增加一定程度的高光反射。
粗糙度(Roughness)
定義材質的粗糙程度。基本和現實生活中一樣,數值越低的材質鏡面反射的程度就越高,數值越高就傾向於漫反射。
自發光顏色(Emissive Color)
定義材質自主發出光線的引數。超過1的數值將會被視為HDR引數,產生泛光的效果。
高動態範圍成像(簡稱HDRI或HDR)是用來實現比普通影象技術更大曝光動態範圍(即更大的明暗差別)的一組技術。高動態範圍成像的目的就是要正確地表示真實世界中從太陽光直射到最暗的陰影這樣大的範圍亮度。
不透明度(Opacity)
定義材質的不透明度。
不透明蒙板(Opacity Mask)
只在Masked Blend模式可用的引數,與半透明度不同的是。不透明蒙板的輸出結果只有可見和完全不可見兩種。通常用於實現鏤空之類的效果。
普通(Normal)
其實是法線引數,通常用於連線法線貼圖。UE4中文一直使用『普通』這個翻譯,不知是否有什麼深意……
世界位置偏移(World Position Offset)
世界位置偏移引數使得材質可以控制網格在世界空間中的頂點位置。
使用時如果遇到剔除投影之類的錯誤,則需要放大網格的Scale Bounds,雖然這樣做會導致效率下降。
世界位移(World Displacement)
與上面的屬性相似,不過世界位移只能在Tessellation屬性有設定時才起作用的。
多邊形細分乘數(Tessellation Multiplier)
同樣只有在設定了Tessellation屬性時才可以使用,決定的是瓷磚貼片的個數。
次表面顏色(Subsurface Color)
只有Shading Model為Subsurface時才有效的引腳,用於模擬類似於人類面板這樣在光線透過表面之後會有第二種表面顏色反射的情況。
透明塗層(Clear Coat)
透明塗層通常用於模擬在材質的表面有一層薄的透明塗層的情況,如鋼琴烤漆之類的效果。
透明塗層粗糙度(Clear Coat Roughness)
決定透明塗層的粗糙度。
環境遮擋(Ambient Occlusion)
用於連線AO貼圖的引腳。
折射(Refraction)
用於調整透明材質的折射率的。
畫素深度偏移(Pixel Depth Offset)
當前官方文件沒有說明。
材質裡面常用的節點基本都在下面了:
constant 一維向量 R 快捷鍵1
constant2Vector 二維向量 RG 快捷鍵2
constant3Vector 三維向量 RGB 快捷鍵3
constant4Vector 四維向量 比三維多alpha 快捷鍵4
Add 加法,將兩個通道上的數值或者紋理增加到一起 快捷鍵a
sub 減法 去掉共有的紋理
multiply 混合、乘法 取紋理重疊 快捷鍵m
divide 除法 快捷鍵d
abs 絕對值
appendVector 增加通道
TextureSample 紋理貼圖
Panner 座標平移 正負來代表紋理在該軸平移的方向,數值代表速度 快捷鍵 P
Rotator 旋轉 以選定的X和Y的座標交匯點進行一定速度的旋轉 一般座標設定為0.5
TextureCoordinate 紋理座標 紋理數量等於UV值相乘 U為橫向 V為豎向 快捷鍵U
Desaturation 去色 去除顏色,當賦予Fraction為0時,無作用,數值越靠近1,去色越明顯
DepthFade 深度衰減 減少物體之間混合時生硬的效果 接線不透明度,預設Fadedistance為100,值越小接觸點的透明度越低,根據需求定值
Time 時間 時間推進,一般連線正弦/餘弦
Sine 正弦 在-1到0之間浮動的拋物線(曲線) 和time配合使用,比如可以用在物體自發光閃爍上(在-1到1之間反覆運動)
Cosine 餘弦 同上
Mask 分化蒙版,用來遮蔽、分離通道,分化多維向量的值等
if 做引數判斷
Fresnel 菲涅爾效果 一般用在測光上
LinearInterpolate 線性插值 用來融合兩個通道,當alpha值等於0時,融合值為A通道,為1時為B通道,因此0.5以下則為靠近A通道顏色,0.5以上靠近B通道,0.5為對等分融合
oneminus 反向,即反向顏色,如黑變為白,白變成黑 可以用來調整貼圖蒙版
clamp 限制值,防止數值溢位
power 冪 讓顏色或者光暗更加厚實,值過大就會出現色塊
Particle color 用來調整粒子顏色
Particle SubUV 和textureSample用法一樣,一般用在粒子上
常用節點2
Panner
對UV座標進行平移,用於UV動畫的實現。
Rotater
對UV座標進行旋轉,同樣用於UV動畫的實現。
BlackBody
這個節點可以對貼圖應用一個黑體輻射效果,實際效果就像是過了一遍熱成像掃描。
BumpOffset
這個節點用於實現視差貼圖,使得貼圖更具有真實感。
ConstantBiasScale
這個節點將輸入值加上一個值之後再乘上一個值。例如將正弦函式的結果由[-1~1]壓制到[0~1]就可以使用1,0.5的引數來操作。
Fresnel
這個節點將攝像機向量與網格法線向量進行點乘並應用到0~1的範圍中。
當攝像機方向與網格的法線垂直時返回1,當方向一致時則返回0。Fresnel的計算在設定了法線貼圖時則會使用法線貼圖進行運算。這個節點可以用於區分邊緣,例如玻璃材質就會使用到。
DepthFade
這個節點的作用是使得兩個透明物體在疊加時顯得更加自然。
DepthOfFieldFunction
這個節點的作用如其名稱,提供景深的運算結果。0~1的範圍代表從聚焦到模糊。
Desaturation
這個節點的作用是去色,會生成一個單調柔和的灰度圖。
Distance
這個節點的作用是計算兩個輸入值的距離。輸入值可以是兩個點、顏色、位置或者向量。
FeatureLevelSwitch
這個節點允許對不同的裝置使用不同的材質以保證材質在低運算率的裝置上能夠有平滑的切換。
QualitySwitch
這個節點可以讓材質在不同的視訊設定下使用不同的數值。
GIReplace
這個節點為材質提供在全域照明下產生不同間接光效果的方法。
LightmassReplace
這個節點可以使得材質在被到處為光照用時使用一個不同的值。
LinearInterpolate
就是Lerp,線性插值,基本上覆雜的材質都會用到。
Noise
這個節點的作用是生成噪波圖。
RotateAboutAxis
對給定的向量進行旋轉,通常用於獲得選擇WorldPosition之後傳遞給WorldPositionOffset。
SphereMask
這個節點在指定的位置生成一個球形並進行距離計算,圓心處為1,外圍為0。
AntialiasedTextureMask
對輸入進行抗鋸齒運算。