UE4材質(zhì)函數(shù)幫助文檔_第1頁
UE4材質(zhì)函數(shù)幫助文檔_第2頁
UE4材質(zhì)函數(shù)幫助文檔_第3頁
UE4材質(zhì)函數(shù)幫助文檔_第4頁
UE4材質(zhì)函數(shù)幫助文檔_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、材質(zhì)函數(shù)表達式FunctionInput(函數(shù)輸入)FunctionInput(函數(shù)輸入)表達式只能放在材質(zhì)函數(shù)中,用于在該函數(shù)中定義該函數(shù)的某個輸入。項目說明屬性輸入名稱(Input Name)輸入的名稱,此名稱將顯示在使用了包含該輸入的材質(zhì)函數(shù)的 MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式中。說明(Description)這是對輸入的說明,當用戶將鼠標指針懸停在 MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式中此輸入的連接器上方時,此說明將顯示為“工具提示”。輸入類型(Input Type)此輸入所需的數(shù)據(jù)類型。傳遞到此輸入的數(shù)據(jù)將強制轉(zhuǎn)換為此類型,如果

2、因為數(shù)據(jù)不兼容而導致強制轉(zhuǎn)換失敗,那么將拋出編譯器錯誤。預覽值(Preview Value)這是編輯包含此輸入的材質(zhì)函數(shù)時,要用作此輸入的預覽的值。使用預覽值作為默認值(Use Preview Value As Default)如果啟用此項目,并且未傳入任何數(shù)據(jù),那么將使用 預覽值 作為此輸入的默認值。排序優(yōu)先順序(Sort Priority)指定確定 MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式中顯示各個輸入的順序時,對于此輸入要使用的優(yōu)先順序。此節(jié)點與材質(zhì)函數(shù) 配合使用。FunctionOutput(函數(shù)輸出)FunctionOutput(函數(shù)輸出)表達式只能放在材質(zhì)函數(shù)

3、中,用于在該函數(shù)中定義該函數(shù)的某個輸出。項目說明屬性輸出名稱(Output Name)輸出的名稱,此名稱將顯示在使用了包含該輸出的材質(zhì)函數(shù)的 MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式中。說明(Description)這是對輸出的說明,當用戶將鼠標指針懸停在 MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式中此輸出的連接器上方時,此說明將顯示為“工具提示”。排序優(yōu)先順序(Sort Priority)指定確定 MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式中顯示各個輸出的順序時,對于此輸出要使用的優(yōu)先順序。此節(jié)點與材質(zhì)函數(shù) 配合使用。Materi

4、alFunctionCall(材質(zhì)函數(shù)調(diào)用)MaterialFunctionCall(材質(zhì)函數(shù)調(diào)用)表達式允許您使用來自另一材質(zhì)或函數(shù)的外部 材質(zhì)函數(shù) 。這個外部函數(shù)的輸入及輸出節(jié)點將變成函數(shù)調(diào)用節(jié)點的輸入和輸出。如果放置其中某個表達式時在 內(nèi)容瀏覽器 中選中了某個材質(zhì)函數(shù),那么將自動指派該函數(shù)。快捷鍵:F + 鼠標左鍵單擊項目說明屬性材質(zhì)函數(shù)(Material Function)指定要使用的 材質(zhì)函數(shù) 。此節(jié)點與材質(zhì)函數(shù) 配合使用。StaticBool(靜態(tài)布爾值)StaticBool(靜態(tài)布爾值)表達式用來為函數(shù)內(nèi)的靜態(tài)布爾函數(shù)輸入提供默認布爾值。此節(jié)點不會在任何內(nèi)容之間切換,因此必須與

5、StaticSwitch(靜態(tài)開關(guān))節(jié)點配合使用。項目說明屬性值(Value)布爾值 True(選中)或 False。此節(jié)點與材質(zhì)函數(shù) 配合使用。StaticSwitch(靜態(tài)開關(guān))StaticSwitch(靜態(tài)開關(guān))表達式的工作方式與 StaticSwitchParameter(靜態(tài)開關(guān)參數(shù))類似,但是它僅實現(xiàn)開關(guān),而不會創(chuàng)建參數(shù)。項目說明屬性默認值(Default Value)參數(shù)的默認布爾值(用于確定哪個輸入處于活動狀態(tài)),即 True(選中)或 False。輸入True當開關(guān)的 值(Value)為 True 時使用的輸入。False當開關(guān)的 值(Value)為 False 時使用的輸入

6、。值(Value)接收一個布爾值,用于確定哪個輸入處于活動狀態(tài)。此節(jié)點與材質(zhì)函數(shù) 配合使用。TextureObject(紋理對象)TextureObject(紋理對象)表達式用來為函數(shù)內(nèi)的紋理函數(shù)輸入提供默認紋理。此節(jié)點不會對該紋理進行實際取樣,因此必須與“紋理取樣”(TextureSample)節(jié)點配合使用。項目說明屬性紋理(Texture)內(nèi)容瀏覽器 中要應用于此節(jié)點的紋理。取樣類型(Sampler Type)此節(jié)點所要輸出的數(shù)據(jù)類型。材質(zhì)屬性表達式BreakMaterialAttributes(中斷材質(zhì)屬性)在使用 分層材質(zhì) (“材質(zhì)功能”系統(tǒng)的一項特性)時,Brea

7、kMaterialAttributes(中斷材質(zhì)屬性)表達式十分理想。在材質(zhì)中使用 材質(zhì)層功能 時,您可能想只使用材質(zhì)層的某一個方面。例如,您可能有一個定義漂亮的一般材質(zhì)(如鋼鐵)的材質(zhì)層。您可能希望在最終材質(zhì)中僅使用該材質(zhì)層的“粗糙度”和“底色”屬性,而不是使用整個材質(zhì)層。在此類情況下,您可使用 BreakMaterialAttributes(中斷材質(zhì)屬性)節(jié)點對材質(zhì)層的所有傳入屬性進行拆分,然后僅連接所需的屬性。這也使您能夠?qū)Ω鞣N材質(zhì)屬性進行復雜混合。MakeMaterialAttributes(建立材質(zhì)屬性)MakeMaterialAttributes(建立材質(zhì)屬性)

8、節(jié)點的作用與 BreakMaterialAttributes(中斷材質(zhì)屬性)節(jié)點正好相反。此節(jié)點將各屬性匯聚到一起,而不是拆分屬性。這在您創(chuàng)建自己的 材質(zhì)層 功能時非常有用,因為您將能夠訪問所有的標準屬性以用于輸出。此節(jié)點也可用于復雜材質(zhì)設(shè)置,在這些設(shè)置中,您希望定義多種類型的材質(zhì),并將它們?nèi)炕旌系揭粋€材質(zhì)中。在將 MakeMaterialAttributes(建立材質(zhì)屬性)節(jié)點連接到材質(zhì)時,您需要確保將主材質(zhì)節(jié)點的 使用材質(zhì)屬性(Use Material Attributes)屬性設(shè)置為 True(選中)。這會將主節(jié)點折疊成單個輸入,該輸入將接受來自

9、 MakeMaterialAttributes(建立材質(zhì)屬性)節(jié)點的傳入輸出。數(shù)學表達式Abs(絕對值)Abs(絕對值)是數(shù)學術(shù)語“絕對值(absolute value)”的縮寫。Abs(絕對值)表達式輸出其接收到的輸入的絕對值(無符號值)?;旧希@意味著它通過刪除減號將負數(shù)轉(zhuǎn)換為正數(shù),而正數(shù)和零將保持不變。示例:-0.7 的 Abs(絕對值)為 0.7;-1.0 的 Abs(絕對值)為 1.0;1.0 的 Abs(絕對值)也是 1.0用法示例:Abs(絕對值)一般與 DotProduct(標量積) 配合使用。DotProduct(標量積)的結(jié)果是 -1.0.1,對 Do

10、tProduct(標量積)的結(jié)果執(zhí)行 Abs(絕對值)的結(jié)果將是 1.0.1。Add(加)Add(加)表達式接收兩個輸入,將其相加,然后輸出結(jié)果。這個加法運算按通道執(zhí)行,這意味著輸入的 R 通道、G 通道和 B 通道等等將分別相加。兩個輸入必須具有相同數(shù)目的通道,除非其中之一是單個常量值。常量可以添加到具有任意數(shù)目輸入的矢量。項目說明屬性常量 A(Const A)接收被加數(shù)的值。僅當未使用 A 輸入時才使用。常量 B(Const B)接收加數(shù)的值。僅當未使用 B 輸入時才使用。輸入A接收被加數(shù)的值。B接收加數(shù)的值。示例:對 0.2 和 0.4 執(zhí)行 Add(加)的結(jié)果是 0.6;對 (0.2,

11、-0.4,0.6) 和 (0.1,0.5,1.0) 執(zhí)行 Add(加)的結(jié)果是 (0.3,0.1,1.6);對 (0.2,-0.4,0.6) 和 1.0 執(zhí)行 Add(加)的結(jié)果是 (1.2,0.6,1.6)用法示例:Add(加)通常用來使顏色變亮/變暗,或者使 UV 紋理坐標偏移。AppendVector(追加矢量)AppendVector(追加矢量)表達式允許您將通道組合在一起,以創(chuàng)建通道數(shù)比原始矢量更多的矢量。例如,您可以使用兩個 常量 值并進行追加,以建立雙通道 Constant2Vector(常量 2 矢量) 值。這有助于將單個紋理中的通道重新

12、排序,或者將多個灰階紋理組合成一個 RGB 彩色紋理。項目說明輸入A接收作為追加目標的值。B接收要追加的值。示例:對 0.2 和 0.4 執(zhí)行追加的結(jié)果是 (0.2,0.4);對 (0.2,0.4) 和 (1.6) 執(zhí)行追加的結(jié)果是 (0.2,0.4,1.6)。Ceil(加一取整)Ceil(加一取整)表達式接收值,使其 向上 舍入到下一個整數(shù),并輸出結(jié)果。另請參閱 Floor(減一取整) 和 Frac(小數(shù)) 。示例:對 0.2 執(zhí)行 Ceil(加一取整)的結(jié)果是 1.0;對 (0.2,1.6) 執(zhí)行 Ceil(加一取整)的結(jié)果是 (

13、1.0,2.0)。Clamp(限制)Clamp(限制)表達式接收值,并將它們約束到由最小值和最大值定義的指定范圍。最小值 0.0 和最大值 0.5 意味著結(jié)果值決不會小于 0.0,并且決不會大于 0.5。項目說明屬性限制模式(Clamp Mode)選擇要使用的限制類型。CMODE_Clamp 將對范圍的兩端進行限制。CMODE_ClampMin 和 CMODE_ClampMax 將僅對范圍的相應端進行限制。默認最小值(Min Default)接收限制時用作最小值的值。僅當未使用“最小值”(Min)輸入時才使用。默認最大值(Max Default)接收限制時用作最大值的值。僅當未使用“最大值”(

14、Max)輸入時才使用。輸入最小值(Min)接收限制時用作最小值的值。最大值(Max)接收限制時用作最大值的值。示例:在最小值為 0.0 且最大值為 1.0 的情況下對 0.3 進行限制將產(chǎn)生 0.3;在最小值為 0.0 且最大值為 1.0 的情況下對 1.3 進行限制將產(chǎn)生 1.0;ComponentMask(分量蒙版)ComponentMask(分量蒙版)表達式允許從輸入中選擇通道(R、G、B 和/或 A)的特定子集以傳遞到輸出。嘗試傳遞輸入中不存在的通道將導致錯誤,除非輸入是單個常量值。在這種情況下,會將單個值傳遞到每個通道。選擇傳遞的當前通道將顯示在表達式的標題欄中。項目說明屬性R如果選

15、中此項目,那么會將輸入值的紅色通道(第一個通道)傳遞到輸出。G如果選中此項目,那么會將輸入值的綠色通道(第二個通道)傳遞到輸出。B如果選中此項目,那么會將輸入值的藍色通道(第三個通道)傳遞到輸出。A如果選中此項目,那么會將輸入值的阿爾法通道(第四個通道)傳遞到輸出。示例:如果 ComponentMask(分量蒙版)的輸入為 (0.2,0.8,1.4) 并選中 R 和 B 通道,那么將輸出 (0.2,1.4)。Cosine(余弦)Cosine(余弦)表達式反復輸出 0, 1 范圍內(nèi)的余弦波值。最常見的情況是,通過將 Time(時間) 表達式連接至它的輸入,輸出連續(xù)的振蕩波形。

16、輸出值將在 -1 與 1 之間來回循環(huán)。下圖顯示波的視覺表示:項目說明屬性周期(Period)指定產(chǎn)生的波的周期。換而言之,這是發(fā)生一次振蕩的長度。用法示例:在任何需要振蕩效果的場合,此表達式都非常有用。通過將時間輸入(速度)或輸出(振幅)倍增,可以輕松地動態(tài)控制振蕩的速度和振幅。在以上示例中,顏色將以余弦頻率振蕩。CrossProduct(矢量積)CrossProduct(矢量積)表達式計算兩個三通道矢量值輸入的矢量積,并輸出所產(chǎn)生的三通道矢量值。給定空間中的兩個矢量,矢量積是與兩個輸入都垂直的矢量。項目說明輸入A接收三通道矢量值。B接收三通道矢量值。用法示例:CrossProduct(矢量

17、積)通常用來計算與另外兩個方向都垂直的方向。Divide(除)Divide(除)表達式接收兩個輸入,并輸出第一個輸入除以第二個輸入的結(jié)果。除法按通道進行,即,第一個輸入的 R 通道將除以第二個輸入的 R 通道,第一個輸入的 G 通道將除以第二個輸入的 G 通道,依此類推。除非除數(shù)是單個浮點值,否則兩個輸入必須具有相同數(shù)目的值。切勿以零作除數(shù)。項目說明屬性常量 A(Const A)接收被除數(shù)的值。僅當未使用 A 輸入時才使用。常量 B(Const B)接收除數(shù)的值。僅當未使用 B 輸入時才使用。輸入A接收被除數(shù)的值。B接收除數(shù)的值。示例:當 A=(1.0,0.5,-0.4) 且 B=(2.0,2

18、.0,4.0) 時,Divide(除)的輸出為 (0.5,0.25,-0.1)DotProduct(標量積)DotProduct(標量積)表達式計算標量積,即一個矢量投射到另一個矢量上的長度。許多技術(shù)使用此計算來計算衰減。DotProduct(標量積)要求兩個矢量輸入具有相同數(shù)目的通道。項目說明輸入A接收一個值,或接收任意長度的矢量。B接收一個值,或接收任意長度的矢量。Floor(減一取整)Floor(減一取整)表達式接收值,使其 向下 舍入到上一個整數(shù),并輸出結(jié)果。另請參閱 Ceil(加一取整) 和 Frac(小數(shù)) 。示例:對 0

19、.2 執(zhí)行 Floor(減一取整)的結(jié)果是 0.0;對 (0.2,1.6) 執(zhí)行 Floor(減一取整)的結(jié)果是 (0.0,1.0)。FMod(浮點余數(shù))FMod(浮點余數(shù))表達式返回對兩個輸入執(zhí)行除法運算的浮點余數(shù)。在此示例中,F(xiàn)Mod(浮點余數(shù))每秒返回一個重復值,該值的范圍限制在 0 到 1。達到 1 之后,該值將恢復為 0,并無窮反復。Frac(小數(shù))Frac(小數(shù))表達式接收值,并輸出這些值的小數(shù)部分。另請參閱 Ceil(加一取整) 和 Floor(減一取整) 。示例:對 0.2 執(zhí)行 Frac(小數(shù))的結(jié)果是 0.2;對 (0.0,1.6)

20、執(zhí)行 Frac(小數(shù))的結(jié)果是 (0.0,0.6)。在此示例中,F(xiàn)rac(小數(shù))節(jié)點將時間轉(zhuǎn)換為重復的 0 - 1 級數(shù)序列,從而通過線性插值使顏色從綠色漸變?yōu)榧t色,然后恢復為綠色,并無窮反復。If(如果)If(如果)表達式對兩個輸入進行比較,然后根據(jù)比較結(jié)果傳遞另外三個輸入值中的一個。所比較的兩個輸入必須都是單個浮點值。項目說明輸入A接收單個浮點值。B接收單個浮點值。A > B接收 A 的值大于 B 的值時要輸出的值。A = B接收 A 的值等于 B 的值時要輸出的值。A < B接收 A 的值小于 B 的值時要輸出的值。在此示例中,If(如果)表達式接收高度貼圖,并根據(jù)高度是低于

21、還是高于值 0.2 來輸出紅色或綠色。LinearInterpolate(線性插值)LinearInterpolate(線性插值)表達式根據(jù)用作蒙版的第三個輸入值,在兩個輸入值之間進行混合。您可以將其想像成用于定義兩個紋理之間的過渡效果的蒙版,例如 Photoshop 中的層蒙版。蒙版“阿爾法”(Alpha)的強度確定從兩個輸入值獲取顏色的比例。如果“阿爾法”(Alpha)為 0.0/黑色,那么將使用第一個輸入。如果“阿爾法”(Alpha)為 1.0/白色,那么將使用第二個輸入。如果“阿爾法”(Alpha)為灰色(介于 0.0 與 1.0 之間的值),那么輸出是兩個輸入之間的混合。請記住,混合

22、按通道進行。因此,如果“阿爾法”(Alpha)為 RGB 顏色,那么“阿爾法”(Alpha)的紅色通道值定義 A 與 B 的紅色通道之間的混合,而與“阿爾法”(Alpha)的綠色通道 無關(guān),該通道定義 A 與 B 的綠色通道之間的混合。項目說明屬性常量 A(Const A)映射到黑色 (0.0) 的值。僅當未連接 A 輸入時才使用。常量 B(Const B)映射到白色 (1.0) 的值。僅當未連接 B 輸入時才使用。常量阿爾法(Const Alpha)接收要用作蒙版阿爾法的值。僅當未連接“阿爾法”(Alpha)輸入時才使用。輸入A接收映射到黑色 (0.0) 的值。B接收映射到白色 (

23、1.0) 的值。阿爾法(Alpha)接收要用作蒙版阿爾法的值。程序員需知:LinearInterpolate(線性插值)根據(jù)參數(shù)值“阿爾法”(Alpha)在 A 與 B 之間執(zhí)行按通道插值。Max(最大值)Max(最大值)表達式接收兩個輸入,然后輸出其中的較大者。此節(jié)點類似于 Photoshop 的“變亮”。在以上示例中,A 為 "0",B 為 "1";因此,產(chǎn)生的底色為 "1"(白色)。項目說明屬性常量 A(Const A)接收第一個值。僅當未使用 A 輸入時才使用。常量 B(Const B)接收第二個值。僅當未使用 B 輸入時才使

24、用。輸入A接收要比較的第一個值。B接收要比較的第二個值。Min(最小值)Min(最小值)表達式接收兩個輸入,然后輸出其中的較小者。此節(jié)點類似于 Photoshop 的“變暗”。在以上示例中,A 為 "0",B 為 "1";因此,產(chǎn)生的底色為 "0"(黑色)。項目說明屬性常量 A(Const A)接收第一個值。僅當未使用 A 輸入時才使用。常量 B(Const B)接收第二個值。僅當未使用 B 輸入時才使用。輸入A接收要比較的第一個值。B接收要比較的第二個值。Multiply(乘)Multiply(乘)表達式接收兩個輸入,將其相乘,然后

25、輸出結(jié)果。類似于 Photoshop 的多層混合。乘法按通道進行,即,第一個輸入的 R 通道將乘以第二個輸入的 R 通道,第一個輸入的 G 通道將乘以第二個輸入的 G 通道,依此類推。除非其中一個值是單個浮點值,否則兩個輸入必須具有相同數(shù)目的值。項目說明屬性常量 A(Const A)接收第一個要相乘的值。僅當未使用 A 輸入時才使用。常量 B(Const B)接收第二個要相乘的值。僅當未使用 B 輸入時才使用。輸入A接收第一個要相乘的值。B接收第二個要相乘的值。請注意,UE4 中的材質(zhì)不限于 0,1。如果顏色/值大于 1,那么 Multiply(乘)實際上會使顏色變亮。示例:對 0.4 和 0

26、.5 執(zhí)行 Multiply(乘)的結(jié)果是 0.2;對 (0.2,-0.4,0.6) 和 (0.0,2.0,1.0) 執(zhí)行 Multiply(乘)的結(jié)果是 (0.0,-0.8,0.6);對 (0.2,-0.4,0.6) 和 0.5 執(zhí)行 Multiply(乘)的結(jié)果是 (0.1,-0.2,0.3)。用法示例:Multiply(乘)通常用來使顏色/紋理變亮或變暗。Normalize(規(guī)范化)Normalize(規(guī)范化)表達式計算并輸出其輸入的規(guī)范化值。這表示該輸入的每個分量都會除以矢量的 L-2 范數(shù)(長度)。不必對連接到“法線”(Normal)材質(zhì)輸出的表達式進行規(guī)范化。OneMinus(一減

27、)OneMinus(一減)表達式接收一個輸入值,并輸出“一減去該值”。此運算按通道執(zhí)行。示例:對 0.4 執(zhí)行 OneMinus(一減)的結(jié)果是 0.6;對 (0.2,0.5,1.0) 執(zhí)行 OneMinus(一減)的結(jié)果是 (0.8,0.5,0.0);對 (0.0,-0.4,1.6) 執(zhí)行 OneMinus(一減)的結(jié)果是 (1.0,1.4,-0.6)。用法示例:當輸入顏色在 0,1 范圍內(nèi)時,OneMinus(一減)的作用就是通常所謂的“反色”- 即,OneMinus(一減)將返回互補色,這種顏色與輸入相加將產(chǎn)生白色。Power(冪)Power(冪)表達式接收兩個輸入,計算“底數(shù)”(Base)的“指數(shù)”(Exp)次冪,并輸出結(jié)果;換而言之,“底數(shù)”(Base)自乘“指數(shù)”(Exp)次。項目說明屬性常量指數(shù)(Const Exponent)接收指數(shù)值。僅當未使用“指數(shù)”(Exp)輸入時才使用。輸入底數(shù)(Base)接收底數(shù)值。指數(shù)(Exp)接收指數(shù)值。示例:底數(shù)為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論