Version: Unity 6.0 (6000.0)
语言 : 中文
通过 URP 中的贴花渲染器功能创建贴花
贴花渲染器功能 (Decal Renderer Feature) 参考

通过 URP 中的 Decal Projector 创建贴花

如果材质使用具有贴花材质类型的 Shader Graph,则 Decal Projector 组件可以将材质投影为贴花。

具有 Decal Material 类型的 Shader Graph
具有 Decal Material 类型的 Shader Graph

URP 包含预构建的贴花着色器 (Shader Graphs/Decal)。

Decal Material 属性。
Decal Material 属性和高级选项。

创建自定义贴花着色器

预构建的 Shader Graphs/Decal 着色器就是一个简单的示例。您可以创建自己的贴花着色器,以最适合您项目的方式渲染贴花。

要创建自定义贴花 Shader Graph,请在着色器目标的 Material 属性中选择 Decal 值。

Shader Graph、Decal Material
Shader Graph、Decal Material

启用以下属性之一会覆盖材质表面上的等效 Lit Shader 属性。

为了提高性能,请将不同表面属性的数据打包到单个纹理中。这样,着色器执行的样本更少,Unity 存储的纹理也更少。

例如,以下 Shader Graph 使用法线贴图和遮罩贴图来驱动着色器中的所有属性。此贴花用于模拟受损的沥青效果,硬编码的粗糙度值 0 适合这个使用场景。

Decal Graph
Decal Graph

着色器对遮罩进行采样,并使用颜色设置整个贴花的环境光遮挡值(红色通道)、平滑度值(绿色通道)、发射强度值(蓝色通道)和 Alpha 值。贴花通常对所有属性使用单个 Alpha 值进行混合。下图显示了沥青裂缝示例的遮罩图:
Decal Mask
将环境遮蔽、平滑度、发光效果和贴花图集的 alpha 值打包到单一纹理中的遮罩图示例。

通过 URP 中的贴花渲染器功能创建贴花
贴花渲染器功能 (Decal Renderer Feature) 参考