UE5.2- 全新Strata/Substrate Materials着色系统
Game艺视界原创文章原创 15089 0
实名

通过了实名认证的内容创造者

发布于 2023-5-19 18:12:16

您需要 登录 才可以下载或查看,没有账号?注册

x
本期笔记分享
#什么是Substrate?Substrate是一种新的创作材料的方式,它用一个更具表现力和模块化的框架取代了固定的着色模型套件,如Default Lit和ClearCoat,提供了更大范围的表面外观和更宽的参数空间。例如,Substrate使设计代表“金属上的液体”、“透明涂层上的灰尘”或“次表面下的透明涂层”的材料成为可能Substrate还可以更准确地混合不同的表面类型,如金属、玻璃和塑料
Substrate依赖于“slab of matter”的概念:一种由具有明确单位的物理量参数化的原理表示。基于这一核心构建块,材料被表示为应用了操作的闭合图,例如混合或分层目标是使性能根据项目的复杂性和所需预算进行扩展,使遗留材料的成本与以前类似。例如,用于PC和控制台的复杂材料可以自动简化为移动设备上的单个迪士尼阴影模型,并尽可能保留外观。这是Substrate的设计目标之一,但在完全实现之前还有更多的工作要做。(5.2中还不支持移动设备。)Substrate不会改变材质图中为着色模型(非正式地称为图案图)生成输入的部分。Substrate是整个材料图的“终点”——在任何Substrate节点右侧的图中都不能进行非Substrate连接

#Substrate Slab BSDF(个人理解)Substrate:基底、底层、在“xxx”下面意思Slab:通过层级的方式显示或者混合
BSDF:双向散射分布函数
我们将在虚幻中使用复杂而逼真的分层着色的概述,以及如何在分层中制作一些材料。如丝绸以及一些金属玻璃和涂层塑料

c1e79605b9029631bbe4e246a1c46abf.png

#如何启用strata着色
编辑-->项目设置-->搜索Strata

e9265d616420d32c83691382fa298bc1.png



这里有三个选项。
有substrate材料实验,这是substrate系统或地层阴影系统,你可以启用然后有基质不透明材料粗略折射。这是一个功能,如果你有一个粗糙的编码层,它实际上会模糊下面的层。这在物理上更准确和真实,但它会影响性能最后有一个substrate高级可视化着色器,这是一种调试模式 strata materials仅在您要使用该调试模式时启用此功能,否则它也会影响性能,因此在大多数情况下,一旦您启用了所需的选项,您就可以关闭它,关闭它重新启动unreal才能使这些更改生效

#UE5中如何描述Slabs也就是BSDF

你在创建过程中每一个layer上面的所有的效果的输出,最后都给到一个slab,然后通过多个slab的合并最后形成一个比较复杂的一个效果。就是通过operator这种方式


【虚幻引擎官方B站:[UOD2022]UE5新材质系统-Strata/公开课】您可以开始分层和更准确地混合您的材料并将不同的材料管道混合在一起,它非常相似离线渲染像 v-ray Arnold
strata的主要事情是它将允许您对材料有更大的灵活性的控制,因此您可以构建更复杂和逼真的材质,关于层的一些重要优化功能

让我们首先看一下层材料的结构,创建全新的材料:右键-->创建材质-->双击打开后如下图,这里不再有一些您过去可以控制的东西,例如金属和其他东西,如果您习惯了金属度工作流程或 PBR 工作流程,这些工作流程中的每一个都会做,以及您如何使用分层着色系统有点不同,因为正如你在这里看到的,我们不再有金属度控制,我们稍后会讨论这个,首先回顾一下你用基础BSDF得到的东西BSD代表双向散射分布函数,你在这里有很多关于这些材料如何散射光的控制



01-首先要看的是漫反射或反照率,这是你可以连接你的颜色或基色的地方你的表面
02-然后你在这里有这个 F0 F90的连接,这基本上是在表面的迎角或直角处的反射,所以F0指的是我们正直接面对的中心和点,然后f90确定这个物体的侧角的掠角处的反射这就是这两个控件的作用,它可以控制面向角F0的反射,控制掠入射角f90的反射
03-然后你也可以控制粗糙度(Roughness),各向异性 (anisotropy) 控制粗糙度表面是光滑的还是粗糙的。如果它是0它非常有光泽如果它是1它非常粗糙。那么各向异性是指高光在某个方向上拉伸,该材料是否具有某种表面,使高光在水平或垂直方向上拉伸或拉长,这就是各向异性将控制的
04-我们有了我们的法线
05-SSS MFP次表面散射,或次表面平均自由程,基本上这将要做的是材料的密度并影响光在这种材料上的吸收和散射,所以它以厘米为单位定义,但是你可以做很多事情来以不同的方式控制它,
06-SSS MFP Scale 比例控制
07-SSS Phase各向异性控制,现在sss相位各向异性控制做得很好,你可以理解它是正值,它吸收光并向前散射,并且 如果它是负值,它是向后散射,如果它是零,它在两个方向上都可以均匀地散射
08-然后我们有我们的发光颜色,如果你想让东西发光或发光或者只是发射
09-然后我们有第二个粗糙度控制和第二个粗糙度权重,这是你有一个正常的高光由你的粗糙度决定在这里这将是第二个高光的控制,如果你在做皮肤或某些材料,而你不必打开它,这可能很有用。第二个粗糙度权重是一个控件,你可以添加它,如果它设置为0,它只使用粗糙度中的第一个高光,如果设置为1,它只会使用第二个高光。像 0.5 它将使用这个高光的一半,这个高光的一半,这样可以给你更多的控制,让你可以为你的高光衰减输入两种不同类型的光泽度或粗糙度,让你制作更复杂的表面,但你不必启用这一切都取决于你是否打开或关闭了第二个粗糙度权重(second Roughness Weight)或者两者混合
10-最后我们得到了我们的(fuzz roughness控制模糊图层的粗糙度)\(fuzz Amount布料外观表面的绒毛量),所以这就像在表面上,你现在可以控制一点绒毛,它有点模拟表面上的绒毛,它们有绒毛量,绒毛粗糙度就是那种绒毛更粗糙或更有光泽,然后是绒毛的颜色,这一切都在这种称为substrate Slab bSdf 的材料中

#Slab是什么?
其实就是ue5,用来描述BSDF的一个标准的节点它的结构就是,按照现实世界的一个surface和medium,surface就是表面层medium就是我们所谓的中间的介质层,这两个部分来组成(黄色表面层蓝色介质层)那表面层主要是用来反射光线,蓝色的介质层呢就是说有部分光线并没有被反射,然后进入到这个介质层,介质层被描述为是有一定密度的物体内部的一些细小的颗粒,那这些一部分光线进入之后会跟这些颗粒之间发生作用,然后在里边travel形成反弹


【虚幻引擎官方B站:[UOD2022]UE5新材质系统-Strata/公开课】


#Slabs表面层
就是用来表现和定义,我们说的材质各种不同属性比如说啊defuse roughness各项异性metallic specular等等。包括像Starta里边还有一些新的属性像一些高光的朦胧的效果,像Haze啊还有Fuzz这种逆光的这种类似于Rimlighting勾边的效果。这些不同的效果都会跟物体表面,物体的微表面相互作用。然后通过刚才提到的这些属性来正确的表现出一个材质的一个效果


【虚幻引擎官方B站:[UOD2022]UE5新材质系统-Strata/公开课】


#Slabs

蓝色的现在图上就是刚才提到的介质层里边有一些深蓝色的小圆点,就用来描述物体里边的这些颗粒或者说是密度,它其实是被定义成是一种体积化的一种物质然后在UE strata里边在计算的时候呢?会考虑它的厚度还有particle的密度,光线摄入后会产生不同程度的吸收或者说因为有透光度的原因产生散射。在UE里我们用这个叫做Mean free path的这个技术结合Albedo和Thickness去计算就是整个的这个散射的效果


【虚幻引擎官方B站:[UOD2022]UE5新材质系统-Strata/公开课】


(理解二):
把它想象成一层物质、一层东西,如果你有油漆那就是Slab1层,如果你还有金属那就是Slab2层,还可以有其它Slab层,你可以将他们混合在一起,Slab有点像一个材料管或一种东西的Slab可为你提供材料,现在被称为Slab




如果你右键单击并搜索substrate然后在那里你可以定义那种材料是什么





如何将他们链接在一起,有一个名为SMF的节点。所以层材料功能强调金属并且它为您提供一些您可能习惯于基色的输入粗糙度你有模糊法线的东西



如果你在这个贴图中有金属,如果你习惯于这样做,你也可以在这里创建一个名为金属的节点,你会在这里的辅助对象下看到,金属来漫射颜色F0,这个节点将允许你使用你定义的金属工作流,然后你定义你是想将其更改为镜面反射还是离开它默认为默认亮度,然后是基本颜色,这样你就可以在金属度工作流中工作,然后连接







#丝绸效果






#玻璃

修改材质属性启用折射

分数的指数将是计算折射或光线如何穿过表面以及光线穿过表面时如何弯曲的最现实方法



我们还必须更改我们的材料类型,所以我们将在这里转到材料,混合模式设置为不透明,我们将把它更改为半透明的彩色透射率,这将允许你做一种有色折射,它几乎可以计算漫反射和半透明,所以它就像一个功能齐全的折射类型材料
玻璃的类型可能在 1.4 到 1.6 之间的任何地方或者



我只是将我们的粗糙度作为参数公开






模糊




我们在细节面板找到称为照明模式的部分,默认情况下它是volumetric non-directional这是最便宜的方法,但它不会为您提供所有功能,最昂贵的方法是表面前向着色




现在我们得到了镜面高光,所以如果我要保存它并且我们有



#塑料
这是将两种材料混合在一起背景前景然后你如何将它们混合在一起所以 它完美地直接混合了这两种材料,只是将它们混合在一起,然后还有另一个基板垂直呃层,它只是将一种材料放在另一种材料之上,所以底部可以是塑料,然后顶部可以是其他名为顶部厚度的东西,所以只是 几乎是将一种材料放在另一种材料之上,然后定义顶部材料层的厚度,所以如果我们想创建像薄膜一样的东西,这些是混合船,现在可以与地层一起使用



01-通过使用节点非常容易地做到这一点,所以我要去这里搜索Thin,我们有一个基板薄膜节点,这几乎给了我们一个节点


02-我们可以在其中将镜面反射颜色输出到 F0 边镜面彩色 f90
03-然后你有你可以指定的东西就像我们的正常和F0 f90 厚度和 ior 现在厚度是薄膜的厚度和 ior 的薄膜厚度的折射率,可以设置 0.14和0.15会给我们一种类似的外观,但如果你将其更改为不同的数字得到不同外观,我们将其更改为 0.5,你会看到不同类型的外观,所以 0.15 看起来很不错
04-【这一步尝试测试】ior 也会产生类似的效果,它也会改变它的外观,所以在2时,它会让我们在 1.5 或 1.4 时出现那种下降,它会给我们这种脱落




05-如果我们想把它混合在一些塑料或其他东西上怎么办,添加另一种材料,所以对于这个材料来说它可以是黑色的,我们并不真正关心是否有漫反射
06-它只是几乎薄膜涂层的粗糙度会使它相当有光泽可能是 0.1,有点模糊,这几乎给了我们薄膜层



07-如果我们想在它下面制造塑料或其他层怎么办?
所以我们会进入这里并创建另一个基板slab,我们将把它与另一个混合。但首先我们必须把这个做成塑料,所以我们可以做的是定义颜色,所以我要做一个恒定的三个矢量,让它看起来像一种红色的塑料,所以让我们在这里拨一些数字来得到一个非常明亮的红色,这样我们就可以预览它,
08-然后我们将采用粗糙度,它会更粗糙,所以可能是 0.5 的值,所以我们有更多的塑料材料不要太锋利或太光滑




09-现在我们要做的是将其与我们的涂层混合,因此我们将创建一种将这两者混合在一起的方法是,我们将去创造垂直层混合物或垂直层基底,塑料将成为我们的底面,我们将把它连接到我们的正面材料上,我只需要稍微重组一下,现在我们将能够做的是把一层放在另一层的上面,但如果我们看这个,我们只看到我们的薄膜,我们看不到下面的塑料



10-我们需要改变薄膜材料上的一件事,我们需要定义 SSS MFP 所以这将是它的厚度或者它散射或吸收的光的多少就像它的散射,所以我们将使用基板透射率来表示它的厚度或者它散射或吸收的光的多少就像它的散射。所以我们将使用基板透射率来表示自由路径就像我们已经之前完成,我们将把这个透射率颜色插入一个恒定的三个向量中,我们不会让它完全透明或白色,我们会选择一个更暗的值,比如一点点有点深灰色,这只会使这一层更坚固一些,但仍然能够大部分看到它,这几乎会给我们一个很好的混合,所以现在我们在我们的塑料上面有一层彩虹色的薄膜,它是混合得很好,它是一种非常复杂的材质,分层得当,所以它开始看起来很酷



完整节点



效果很好但是代价也很大




接下来我们进入混合节点做一个简单优化;它们合并成一种材料并且只是基于粗糙度和漫反射之类的东西存在差异,但不会将它们作为两种不同的材料分开,但我会尝试将它们组合起来并对其进行优化,这样它会改变外观它会稍微损坏外观但会优化它相当多的指令,随着版本升级官方会优化更好



#多Slab混合





查看合集:PCG工具


UE5.2+|PCG Scattering Points
本期笔记分享就到这里,我们下期见!
公众号链接:https://mp.weixin.qq.com/s/GH0r0AEL60qdpX8aNXxQpQ

评分

参与人数 2元素币 +17 活跃度 +4 展开 理由
山泉 + 10 + 2 爱了
liudongdon... + 7 + 2 厉害了

查看全部评分

微信公众号:Game艺视界
使用道具 <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表