Substrate材质系统-01-Setup

  1. 1 启用SubStrate
  2. 2 处理Substrate
    1. 2.1 Root
    2. 2.2 Slab
    3. 2.3 材质节点
    4. 2.4 统计数据
  3. 999 Ref

Substrate 是虚幻引擎5中的材质创建方法,它取代了原有的固定类型的着色模型和混合模式,例如”Default Lit” 和 “Clear Coat”,转而提供了一个更具表现力和模块化程度的框架。

和UE的旧版材质系统有区别,主要体现在旧版材质是单层进行lerp,Substrate更好表现多层材质,例如混合金属、玻璃、塑料。

Substrate是由若干层Slab组合起来的。

本文是对官方文档的总结。(UE5.3才有文档,本文基于UE5.2)

1 启用SubStrate

项目设置 - 渲染 - Substrate启动!

单向转换:旧材质会通过SubstrateLegacyConversion节点转为Substrate材质,Substrate材质不能转换为旧材质。

2 处理Substrate

2.1 Root

启用后创建材质,即为Substrate材质:

所有Substrate材质图表必须连接到前方材质(Front Material)上。

2.2 Slab

Slab是用来组装Substrate的基本模块,由 界面介质 组成。

  • 界面:粗糙度、法线、散射反照率(DiffusedAlbedo)、F0、F90…
  • 介质:平均自由程(MFP)(SSS)

Substrate Slab BSDF节点的输入:

  • 漫反射反照率(Diffuse Albedo)
  • F0:定义表面法线与相机垂直的高光度高光的颜色和亮度
    • 塑料、非金属:0~0.08
    • 金属:~1
    • 宝石:~0.16
  • F90:定义表面法线与相机成90度的高光度高光的颜色。因为在相机视图的切线角,仅会感知到色调饱和度,亮度固定为1.0
  • 粗糙度(Roughness)
  • 各向异性(Anisotropy)
    • -1:高光与双切线对齐
    • 1:高光与切线对齐
  • 法线(Nromal)
  • 切线(Tangent)
  • SSS MFP:次表面散射平均自由程,控制材质的密度,影响材质对光源的吸收和散射。定义光子与物质粒子相互作用的平均距离,由每个颜色通道控制
  • SSS MFP缩放(SSS MFP Scale)
  • SSS相位各向异性(SSS Phase Anisotropy):正值沿光线方向延长相位函数,导致前向散射。负值沿光线方向的反方向延长函数,导致后向散射
  • 自发光颜色(Emissive Color)
  • 第二粗糙度(Second Roughness):控制次要高光度波瓣的粗糙度,不影响漫反射粗糙度
  • 第二粗糙度权重(Second Roughness Weight):主要和次要高光度波瓣的混合因子
  • 绒毛粗糙度(Fuzz Roughness):0绒毛光滑(更有光泽),1绒毛粗糙
  • 绒毛量(Fuzz Amount):在界面上添加绒毛,引发彩色逆反射。通常用于创建织物
  • 绒毛颜色(Fuzz Color)
  • 闪光密度(Glint Density):表面的微面片密度的对数表示。需要在ConsoleVariables.ini中设置r.Substrate.Glints=1
  • 闪光UV(Glint UVs):控制表面上闪光的位置和比例

2.3 材质节点

  • BSDF
    • Slab:只有这个可与其他Slab叠层,其他都是专用的需要单独使用
    • Water
    • Volumetric-Fog-Cloud
    • Simple Clear Coat:简单快速渲染顶部有透明图层的材质
    • Hair
    • Eye
    • Unlit
  • 运算符:用于混合与分层多个Substrate Slab BSDF
    • Coverage Weight:和Vertical Layer一起用,控制覆盖量
    • Horizontal Blend:背景和前景
    • Vertical Layer:顶层和底层。适合车漆、涂漆木材、潮湿表面
    • Add:相加。物理上不正确,避免使用
    • 参数混合:降低开销
  • 构建块:一组材质函数,为常见用例提供了转换。
    • Coated Layer:创建由彼此叠加的两块Slab构成的涂层材质。
    • Standard Surface Opaque:使用不透明表面的友好参数来创建类似于Uber着色器的Substrate材质。参数化使用行业的标准词汇和概念。
    • Standard Surface Translucent:同上,但是半透明。
    • UE4 Default Shading
    • UE5 Unlit Shading
  • 额外:指定它提供的材质和函数类型,他们必须单独使用,不兼容Substrate运算符
    • Convert To Decal
    • Light Function
    • Post Process
    • UI
  • 辅助:执行一些转换,或实现旧版材质能够执行的功能。
    • Flip Flop
    • Haziness-To-Secondary-Roughness:根据基础表面粗糙度和浑浊度计算次要高光度波瓣粗糙度?
    • IOR-To-F0:将非传导性IOR转换为F0值?
    • Metalness-To-DiffuseColorF0:将金属度参数化(基础颜色/高光度/金属度)转换为散射反照率(DiffuseAlbedo)/F0参数化。
    • Rotation-To-Tangent:将旋转角度转换为切线向量。
    • Thin-Film:薄膜。
    • Transmittance-To-MeanFreePath:转换透射率颜色。
    • View-Dependent-Coverage:基于入射视角调整覆盖范围,适用于混合足够厚的层,厚到效果会随视角发生变化。

2.4 统计数据

999 Ref

  1. 官方文档:
    1. Substrate材质:https://docs.unrealengine.com/5.3/zh-CN/substrate-materials-in-unreal-engine/
    2. Substrate材质概述:https://docs.unrealengine.com/5.3/zh-CN/overview-of-substrate-materials-in-unreal-engine/
  2. 官方视频:
    1. 虚幻引擎中材质的未来 - GDC 2023:https://www.youtube.com/watch?v=joOIBteSo1w
    2. 虚幻直播的状态 — Timestamp: 02:29:42:https://www.youtube.com/watch?v=teTroOAGZjM&t=8982s
    3. 内容示例-SubstrateMaterials
  3. UFSH2023视频:TODO
  4. 知乎资料:
    1. UE5次时代材质新系统Substrate绪论列表(美术&TA对象) - 俞先生(Owen):https://zhuanlan.zhihu.com/p/654585314
    2. UE5材质创建系统Substrate技术概述 - 3DMAX:https://zhuanlan.zhihu.com/p/630062365
    3. SIGGRAPH 2023-Unreal Engine 5 中的 Substrate - zhing2006:https://zhuanlan.zhihu.com/p/661399487

转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 cdd@ahucd.cn

×

喜欢就点赞,疼爱就打赏

B站 cdd的庇护之地 github itch