docs.unity3d.com
    显示 / 隐藏目录

    贴花主节点

    贴花是使用 HDRP 贴花着色器 (HDRP Decal Shader) 的材质。可以使用贴花 Shader Graph 创作可投影或放置到场景中的贴花。贴花主节点 (Decal Master Node) 与标准贴花着色器相似,不同之处在于不能使用此版本来创作在透明材质上投影的贴花。

    创建和编辑贴花材质

    在 Project 视图中选择 Shader Graph 主节点时,无法在 Inspector 中编辑任何属性。贴花材质使用 Shader Graph 主节点,因此你需要使用特定的过程来创建和编辑使用该节点的材质。有关如何执行此操作的更多信息,请参阅创建和编辑 HDRP Shader Graph。

    将该节点应用于材质时,Surface Options 和 Exposed Properties 在材质的 Inspector 中变为可编辑状态。

    属性

    主节点有一些属性,每种材质也有一些属性。主节点属性位于 Shader Graph 本身内部,分为两部分:

    • 主节点输入端口:此部分包含主节点本身上的 Shader Graph 输入端口。您可以将这些端口连接到其他节点的输出端,或者在某些情况下,将您自己的值添加到这些端口。
    • 主节点设置菜单:此部分包含可用于自定义主节点并显示更多输入端口的设置。

      材质属性位于使用此着色器的材质的 Inspector 窗口中。

    贴花主节点输入端口

    )

    下表描述了贴花主节点上的输入端口,包括用于每个端口的属性类型和着色器阶段。如需了解着色器阶段的更多信息,请参阅着色器阶段。

    属性 类型 阶段 描述
    Position 矢量 3 顶点 设置每个顶点的材质的对象空间位置。
    BaseColor 矢量 3 片元 设置材质的颜色。要分配图像,请将采样的 Texture2D 连接到该主节点。
    BaseColor Opacity Float 片元 设置材质的不透明度。0 表示完全透明,1 表示完全不透明。
    Normal 矢量 3 片元 设置材质的法线值。分配的法线应该在切线空间中。
    Normal Opacity Float 片元 设置材质法线的混合因子。贴花可以修改贴花投射到的材质的法线。值为 0 表示贴花不影响其投影到的表面的法线。值为 1 表示贴花完全覆盖表面法线。
    Metallic Float 片元 定义材质外观的金属度(即材质看起来的光泽程度以及材质外观基于周围环境颜色的程度)。0 表示完全非金属性,而 1 表示 Unity 通过此设置可以达到的最大金属性外观级别。
    Ambient Occlusion Float 片元 漫射全局光照的强度的乘数。将此值设置为 0 可移除所有全局光照。
    Smoothness Float 片元 设置主要镜面高光的外观。照射到光滑表面的每条光线都将以可预测且一致的角度反弹。对于像镜子一样反射光线的完美光滑表面,应将此属性设置为值 1。对于较粗糙的表面,请将此属性设置为较低的值。
    MAOS Opacity Float 片元 设置 Metallic、Ambient Occlusion 和 Smoothness 不透明度值。
    Emission 矢量 3 片元 设置材质的发光颜色值。分配的 RGB 值应在 0-255 之间。强度值应在 -10 到 10 的范围内。
    Emission 仅适用于不透明贴花着色器 (Opaque Decal Shader)。

    主节点设置菜单

    要查看这些属性,请单击主节点右上角的齿轮。

    )

    属性 描述
    Precision 选择着色器处理的计算精度。较低的精度计算速度更快,但是会引起一些问题,例如镜面高光的强度不正确。
    • Inherit:使用全局精度设置。这是最高精度的设置,因此使用此值不会导致任何精度问题,但是着色器计算速度比其他值要慢。
    • Float:使用单精度浮点指令。此选项使每次计算的资源消耗减少,从而加快计算速度。
    • Half:使用半精度浮点指令。这是速度最快的精度级别,意味着使用该精度级别的计算需要的处理资源最少。此精度设置最有可能导致问题,例如量化(条带)瑕疵和强度削波。对于贴花着色器,Half 精度目前正处于实验阶段。
    Affects BaseColor 启用或禁用 BaseColor 属性的效果。
    Affects Normal 启用或禁用 Normal 属性的效果。
    Affects Metal 启用或禁用 Metal 属性的效果。
    Affects Ambient Occlusion 启用或禁用 Ambient Occlusion 属性的效果。
    Affects Smoothness 启用或禁用 Smoothness 属性的效果。
    Affects Emission 启用或禁用 Emission 属性的效果。
    Support LOD CrossFace 指示在对纹理进行采样的过程中从接收网格的一个 LOD 级别移到另一个 LOD 级别时是否发生抖动。仅适用于贴花网格。
    Override ShaderGUI 允许覆盖此 Shader Graph 使用的 ShaderGUI。如果为 true,则会显示 ShaderGUI 属性,该属性允许指定要使用的 ShaderGUI。
    - ShaderGUI 要使用的 ShaderGUI 类的全名,包括类路径。

    Material Properties

    从贴花主节点创建贴花材质时,除了在 Shader Graph 的 Blackboard 中显示的属性之外,还可以使用以下属性。

    Surface Options

    这些属性用于设置当 HDRP 将贴花渲染到场景中时贴花投影到的材质的受影响属性。

    属性 描述
    Affect BaseColor 启用此复选框可让该贴花使用 baseColor 属性。否则,贴花没有 baseColor 效果。无论是启用还是禁用此属性,HDRP 都会使用基色的 Alpha 通道作为其他属性的不透明度。
    Affect Normal 启用此复选框可让贴花使用 normal 属性。否则,贴花不会修改接收材质的法线。
    Affect Metal 启用此复选框可让贴花使用其 Mask Map 的金属性属性。否则,贴花没有金属效果。使用 Mask Map 的红色通道。
    仅当启用 HDRP 资源中的 Metal and Ambient Occlusion properties 复选框时,才显示此属性。
    Affect Ambient Occlusion 启用此复选框可让贴花使用其 Mask Map 的环境光遮挡属性。否则,贴花没有环境光遮挡效果。使用 Mask Map 的绿色通道。
    仅当启用 HDRP 资源中的 Metal and Ambient Occlusion properties 复选框时,才显示此属性。
    Affect Smoothness 启用此复选框可让贴花使用其 Mask Map 的平滑度属性。否则,贴花没有平滑度效果。使用 Mask Map 的 Alpha 通道。
    Affect Emissive 启用此复选框可以使该贴花发光。启用后,此材质将显示为自发光状态,并充当可见光源。此属性不适用于透明的接收材质。

    Sorting Inputs

    这些属性用于更改贴花的渲染行为。

    属性 描述
    Draw Order 控制 HDRP 在场景中绘制贴花的顺序。HDRP 首先绘制具有较低绘制顺序值的贴花,因此会在具有较低值的贴花之上绘制具有较高值的贴花。此功能适用于投影在不透明和透明表面上的贴花。
    注意:此属性仅适用于贴花投影器 (Decal Projector) 创建的贴花,对网格贴花无效。此外,如果多个贴花材质具有相同的 Draw Order 值,则 HDRP 渲染这些材质的顺序将取决于您创建材质的顺序。HDRP 会渲染先创建的贴图材质,然后再渲染随后创建的具有相同 Draw Order 值的贴图材质。
    Mesh Decal Depth Bias HDRP 应用于贴花网格的深度偏差,用于防止该网格与其他网格重叠。负值会在任何重叠的网格前面绘制贴花,而正值会使贴花偏移并在后面绘制贴花。此属性仅影响使用网格渲染器直接附加到游戏对象的贴花材质,因此贴花投影器 (Decal Projector) 不使用此属性。
    返回到顶部
    Copyright © 2023 Unity Technologies — 商标和使用条款
    • 法律条款
    • 隐私政策
    • Cookie
    • 不要出售或分享我的个人信息
    • Your Privacy Choices (Cookie Settings)