1. 程式人生 > >UE4材質節點

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屬性時才可以使用,決定的是瓷磚貼片的個數。

DisplacementNetwork.png

次表面顏色(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動畫的實現。

PannerExample.png

Rotater

對UV座標進行旋轉,同樣用於UV動畫的實現。

RotatorExample.png

BlackBody

這個節點可以對貼圖應用一個黑體輻射效果,實際效果就像是過了一遍熱成像掃描。

BlackBody.png

BumpOffset

這個節點用於實現視差貼圖,使得貼圖更具有真實感。

BumpOffsetExample.png

ConstantBiasScale

這個節點將輸入值加上一個值之後再乘上一個值。例如將正弦函式的結果由[-1~1]壓制到[0~1]就可以使用1,0.5的引數來操作。

Fresnel

這個節點將攝像機向量與網格法線向量進行點乘並應用到0~1的範圍中。

當攝像機方向與網格的法線垂直時返回1,當方向一致時則返回0。Fresnel的計算在設定了法線貼圖時則會使用法線貼圖進行運算。這個節點可以用於區分邊緣,例如玻璃材質就會使用到。

DepthFade

這個節點的作用是使得兩個透明物體在疊加時顯得更加自然。

DepthFade1.png

DepthOfFieldFunction

這個節點的作用如其名稱,提供景深的運算結果。0~1的範圍代表從聚焦到模糊。

DepthOfFieldFunction_Texture.png

Desaturation

這個節點的作用是去色,會生成一個單調柔和的灰度圖。

Distance

這個節點的作用是計算兩個輸入值的距離。輸入值可以是兩個點、顏色、位置或者向量。

FeatureLevelSwitch

這個節點允許對不同的裝置使用不同的材質以保證材質在低運算率的裝置上能夠有平滑的切換。

QualitySwitch

這個節點可以讓材質在不同的視訊設定下使用不同的數值。

GIReplace

這個節點為材質提供在全域照明下產生不同間接光效果的方法。

LPV_gi_replace.pngLPV_bounce_color_override.png

LightmassReplace

這個節點可以使得材質在被到處為光照用時使用一個不同的值。

LinearInterpolate

就是Lerp,線性插值,基本上覆雜的材質都會用到。

Noise

這個節點的作用是生成噪波圖。

RotateAboutAxis

對給定的向量進行旋轉,通常用於獲得選擇WorldPosition之後傳遞給WorldPositionOffset。

SphereMask

這個節點在指定的位置生成一個球形並進行距離計算,圓心處為1,外圍為0。

AntialiasedTextureMask

對輸入進行抗鋸齒運算。

AAMasked_Demo.png