UE4筆記-材質(1)


1,ue4中的材質:是可以應用到網格物體上的資源,用它可控制世界場景中物體的外觀。當穿過場景的光照接觸到表面后,材質被用來計算該光照如何與該表面進行互動。這些計算是通過對材質的輸入數據來完成的,而這些輸入數據來自於一系列圖像(貼圖)以及數學表達式,以及材質本身所繼承的不同屬性設置。

2,材質屬性:

  1)與該材質關聯的物理材質物理材質(Physical Material)提供了物理屬性的定義,例如碰撞(彈力)以及其他基於物理的方面會保留多少能量。物理材質(Physical Material)對材質的外觀沒有影響

    

 

 

  2)材質

 

    

 

 

 

 

 

 

     材質域(Material Domain):指定如何使用這些材質,某些材質的使用需要額外說明(例如貼花),以便渲染引擎加以考慮。材質域包括一下選項:

      表面(Surface):該設置就是將材質用於對象表面的東西,這個也是最常用的設置。

      延遲貼花(Deferred Decal):制作貼花時使用這個設置。

      光源函數(Light Function):在創建與光源函數配合使用的材質時使用此設置。

 

      后期處理(Post Process):如果材質將用后期處理材質則使用此設置。 

    混合模式(Blend Mode):通俗的說就是當前材質如何與其它已存在的顏色的進行混合,混合模式包括一下幾種:

      不透明(Opaque):最終顏色 = 源顏色。

      遮罩(Masked):最終顏色 = 如果OpacityMask > OpacityMaskClipValue,則為源顏色,否則該像素將被丟棄。一般與主材質節點上的Opacity Mask搭配使用,用於實現材質中的一部分要么顯示,要么不顯示的效果,例如鐵絲網,圍欄。

      半透明(Translucent):最終顏色 = 源顏色 不透明度 + 目標顏色 (1 - 不透明度)。

 

 

        添加(Additive):最終顏色 = 源顏色 + 目標顏色。

      調制(Modulate):最終顏色 = 源顏色 x 目標顏色。

    貼花混合模式(Decal Blend Mode):此屬性定義了如何通過貼花材質通道操作GBuffer信道。只有材質域設置為 延遲貼花時這個選項才會被激活。

    着色模型(Shading Model):着色模型決定了材質輸入(如自發光、漫射、鏡面反射、法線)如何組合以形成最終顏色。包括一下幾個選項:

      無光照(Unlit):材質僅由自發光(Emissive)和不透明度(Opacity)輸入定義。它不對應光源。

      默認光照(Default Lit):默認着色模型。非常適用於大部分實體對象。

      次表面(Subsurface):用於次表面散射材質,如蠟和冰。一般與主材質節點上的此表面顏色(Subsurface Color)配合使用。

      預整合皮膚(Preintegrated Skin):用於類似於人類皮膚的材質。激活次表面顏色(Subsurface Color)輸入。

      透明塗層(Clear Coat):用於模擬表面有半透明圖層的材質,如鍍膜的車漆。激活后一般與主材質節點上的透明圖層粗糙度(Clear Coat Roughness)配合使用。

      次表面配置文件(Subsurface Profile):用於類似於人類皮膚的材質。需要使用次表面配置文件才能正確工作。

    雙面(Two Sided):勾選之后就會生成雙面材質。法線將被翻轉到背面,這意味着將同時為正面和背面計算光照。這通常用於植物上,以避免多邊形數量加倍。

    貼花混合模式(Decal Blend Mode):這個貼花比較復雜,以后再說。

3,材質輸入

  

 

 

     1)底色(Base Color) 定義材質的整體顏色。它接收 Vector3 (RGB) 值,並且每個通道都自動限制在 0 與 1 之間。也可以弄一個Texture來給顏色(快捷鍵T)

  2)金屬色(Metallic)輸入控制表面在多大程度上“像金屬”。范圍0~1。0非金屬,1金屬,默認值0.5。

  3)鏡面反射(Specular)一般在編輯 非金屬 表面材質時,調整它反射光線的能力。對於金屬材質這個值沒用。 范圍0~1。0完全不反射,1全反射 像鏡面一樣,默認值0.5。

  4)粗糙度(Roughness)輸入控制材質表面的粗糙或平滑程度。范圍0~1。0表示非常光滑 鏡面反射,1表示粗糙沒有任何反射 表面無光。

  5)自發光顏色(Emissive Color) 輸入控制材質的哪些部分將發光。如果發光不夠強可以乘上一個值(乘節點Multiply快捷點M)。

  6)不透明度(Opacity)范圍0~1。只有混合模式是半透明(Translucent)疊加(Additive)調制(Modulated)才會生效。

  7)不透明度遮罩(Opacity Mask)只有混合模式是遮罩(Masked)時才會生效。材質要么可見要么不可見,可以用來定義復雜固體表面如鐵絲網 圍欄。有時候需要設置U方向和V方向的平鋪量 可以用TexCoord節點(快捷鍵U)的UTiling和VTiling控制

  8)法線貼圖(Normal)把材質的法線貼圖連上就行,藍色的那個圖。

  9)世界場景位置偏移(World Position Offset)允許網格體的頂點在世界場景空間中由材質操控。實現使對象移動、改變形狀、旋轉和各種其他效果。可以結合時間節點(Time)和頂點法線方向節點(VertexNormalIws)做一些動畫。

  

 

 

   10)世界場景位移和曲面細分乘數 

      世界場景位移(World Displacement)允許曲面細分頂點在世界空間內有材質控制

      曲面細分乘數(Tessellation Multiplier) 控制沿表面的曲面細分量,允許在需要的地方添加更多細節

  11)次表面顏色(Subsurface Color)只有着色模型為次表面時才能被激活。用來模擬光照經過表面時顏色的變化。例如,人類角色的皮膚上可能有一種紅色的次表面顏色來模擬其表面之下的血液。

  12)環境遮擋 (Ambient Occlusion)用來幫助模擬在表面縫隙中發生的自我遮蔽。例如磚牆的貼圖,這里個一個磚牆的occ貼圖后可以看到磚縫中的遮擋陰影。如果沒有occ貼圖可能磚縫中就沒有這種陰影。

  13)折射(Refraction)輸入接受一個紋理或數值,該紋理或值模擬表面的折射率。這對於像玻璃和水這樣的物體很有用,這些物體會折射穿過它們的光。例如下邊再加一個菲涅爾效果來玻璃球邊緣的折射。

  

  14)透明塗層着色模型 只有着色模型為Clear Coat時才會激活。可以用來更好地模擬在材質表面有一層薄的半透明薄膜的多層材質。除此之外,透明塗層着色模型也可以用於金屬或非金屬表面。事實上,它是專門設計來對非有色金屬上 的第二類光滑彩色薄膜進行建模的。如易拉罐或車漆。

  透明塗層(Clear Coat):透明塗層的層數,0代表標准着色模型,1是完全透明塗層模型。這對於遮蔽非常有用。

  透明塗層粗糙度(Clear Coat Roughness):透明塗層的粗糙度。對於較小的值,我們的近似處理是准確的。此輸入支持非常粗糙的透明塗層,但與其實際的世界場景對照物相比,這些塗層不會非常准確。

 

 

   

 

   15)像素深度偏移(Piexl Depth Offset)將像素的深度沿着攝像機到該像素的方向向后推一個值。只是視覺上的往后推一個值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM