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

    光照着色器 (Lit Shader)

    光照着色器可用于在高清渲染管线 (High Definition Render Pipeline, HDRP) 中轻松创建逼真的材质。此着色器包括诸如次表面散射、彩虹色、顶点或像素位移以及贴花兼容性等效果的选项。有关材质、着色器和纹理的更多信息,请参阅 Unity 用户手册。

    创建光照材质 (Lit Material)

    要创建新的光照材质,请导航到项目的 Asset 窗口,在窗口中单击鼠标右键,然后选择 Create > Material。这会在 Unity 项目的 Asset 文件夹中添加一个新材质。在 HDRP 中创建新材质时,这些材质默认使用光照着色器。

    属性

    Surface Options

    Surface Options 控制材质表面的整体外观以及 Unity 如何在屏幕上渲染材质。

    属性 描述
    Surface Type 指定材质是否支持透明度。具有 Transparent Surface Type 的材质比具有 Opaque Surface Type 的材质在渲染时更耗资源。根据选择的选项,HDRP 会显示更多属性。选项包括:
    • Opaque:
    • Transparent:模拟光线可以穿透的半透明材质,例如透明塑料或玻璃。
    有关该功能的更多信息以及每个 Surface Type 显示的属性列表,请参阅 Surface Type 文档。
    - Rendering Pass 指定 HDRP 处理此材质使用的渲染通道。
    • Before Refraction:在折射通道之前绘制游戏对象。这意味着 HDRP 在处理折射时包含此材质。要显示此选项,请从 Surface Type 下拉选单中选择 Transparent。
    • Default:根据 Surface Type,在默认的不透明或透明渲染通道中绘制游戏对象。
    • Low Resolution:在 Default 通道后以半分辨率绘制游戏对象。
    • After post-process:仅适用于无光照材质。在执行所有后期处理效果之后绘制游戏对象。
    - Blending Mode 指定 HDRP 将材质每个像素的颜色与背景像素混合的方法。选项包括:
    • Alpha:使用材质的 Alpha 值来更改对象的透明度。0 表示完全透明。1 表示完全不透明,但在透明渲染过程中仍然会渲染材质。对于你希望完全可见但随着时间的推移也会逐渐消失的视觉效果(例如云),这非常有用。
    • Additive:将材质的 RGB 值添加到背景颜色。材质的 Alpha 通道可调节强度。值 0 表示不进行任何添加,值为 1 表示将材质颜色的 100% 添加到背景颜色。
    • Premultiply:假设已经将材质的 RGB 值乘以 Alpha 通道。当过滤图像或构建不同的层时,这可以提供比 Alpha 混合更好的结果。
    仅当 Surface Type 设置为 Transparent 时,才显示此属性。
    - - Preserve Specular Lighting 指示是否使 Alpha 混合不降低镜面高光的强度。这可以保留透明表面上的镜面反射元素,例如阳光照射玻璃或水。
    仅当 Surface Type 设置为 Transparent 时,才显示此属性。
    - Sorting Priority 允许更改重叠的透明表面的渲染顺序。有关更多信息以及用法示例,请参阅材质排序文档。
    仅当 Surface Type 设置为 Transparent 时,才显示此属性。
    - Receive Fog 指示雾效是否影响透明表面。禁用后,HDRP 在计算场景中的雾效时不会考虑此材质。
    - Back Then Front Rendering 指示 HDRP 是否在两个单独的绘制调用中渲染该材质。HDRP 在第一个绘制调用中渲染背面,而在第二个中渲染正面。
    仅当 Surface Type 设置为 Transparent 时,才显示此属性。
    - Transparent Depth Prepass 指示 HDRP 是否将透明表面中的多边形添加到深度缓冲区以改进其排序。HDRP 在光照通道之前执行此操作,此过程可提高 GPU 性能。
    - Transparent Depth Postpass 指示 HDRP 是否将多边形添加到后期处理使用的深度缓冲区。HDRP 在光照通道之前执行此操作。如果要使用需要深度信息的后期处理效果(如运动模糊或景深),启用此功能非常有用。
    - Transparent Writes Motion Vectors 指示 HDRP 是否为使用该材质的透明游戏对象写入运动矢量。这允许 HDRP 处理透明对象的运动模糊等效果。有关运动矢量的更多信息,请参阅运动矢量文档。
    仅当 Surface Type 设置为 Transparent 时,才显示此属性。
    - Depth Write 指示 HDRP 是否为使用该材质的游戏对象写入深度值。
    - Depth Test 指定由 HDRP 用于深度测试的比较函数。
    - Cull Mode 指定对于使用此材质的游戏对象需要剔除哪个面。选项包括:
    • Front:剔除网格的正面。
    • Back:剔除网格的背面。
    仅当禁用 Double Sided 的情况下,才显示此属性。
    Alpha Clipping 指示该材质是否类似于镂空着色器 (Cutout Shader)。
    有关该功能的更多信息以及该功能显示的属性列表,请参阅 Alpha Clipping 文档。
    - Threshold 由 HDRP 用于确定是否渲染每个像素的 Alpha 值阈值。如果像素的 Alpha 值等于或高于此阈值,则 HDRP 会渲染该像素。如果低于此阈值,则 HDRP 不会渲染该像素。默认值为 0.5。
    - Use Shadow Threshold 指示 HDRP 是否对 Alpha 裁剪阴影使用另一个阈值。
    仅当启用 Alpha Clipping 时,才显示此属性。
    - - Shadow Threshold HDRP 用于确定是否应渲染像素阴影的 Alpha 值阈值。
    仅当启用 Use Shadow Threshold 时,才显示此属性。
    - Alpha to Mask 指示是否开启 alpha-to-coverage。如果项目使用 MSAA,alpha-to-coverage 会根据像素着色器结果 Alpha 值按比例修改多重采样覆盖率遮罩。通常用于植被抗锯齿和其他经过 Alpha 测试的着色器。
    仅当启用 Alpha Clipping 时,才显示此属性。
    - Prepass Threshold HDRP 用于透明深度预通道的 Alpha 值阈值。此属性的原理与上述主 Threshold 属性相同。
    仅当启用 Transparent Depth Prepass 复选框时,才显示此属性。
    - Postpass Threshold HDRP 用于透明深度后通道的 Alpha 值阈值。此属性的原理与上述主 Threshold 属性相同。
    仅当启用 Transparent Depth Postpass 复选框时,才显示此属性。
    Double Sided 指示 HDRP 是否渲染几何体中多边形的两个面。有关该功能的更多信息以及该功能可显示的属性列表,请参阅 Double-Sided 文档。
    - Normal Mode 指定 HDRP 用于计算背面几何体法线的模式。
    • Flip:背面法线与正面法线成 180°。这也适用于材质,这意味着材质在几何体的两面看起来相同。
    • Mirror:背面法线是正面法线的镜像。这也适用于材质,这意味着材质在背面反转。当想要在几何体的两面保留相同的形状(例如叶子)时,这非常有用。
    • None:背面法线与正面相同。
    仅当启用 Double-Sided 时,才显示此属性。
    Material Type 指定材质的类型。允许根据选择的类型使用不同的设置对材质进行自定义。选项包括:
    • Subsurface Scattering:将次表面散射 (subsurface scattering) 工作流应用于材质。次表面散射工作流程可以模拟光线与半透明对象(如皮肤或植物叶子)的相互作用和穿透方式。光线穿透次表面散射材质的表面时,会在离开表面之前在不同点散射和模糊。
    • Standard:将基本金属性着色器工作流程应用于材质。这是默认的 Material Type 设置。
    • Anisotropy:将各向异性 (anisotropic) 工作流程应用于材质。从不同角度观看材质时,各向异性表面的高光会在外观上发生变化。使用此 Material Type 可以创建具有各向异性高光的材质。例如,拉丝金属或天鹅绒材质。
    • Iridescence:将彩虹色 (Iridescence) 工作流程应用于材质。随着视角或光照角度的变化,彩虹色表面看起来会逐渐改变颜色。使用此 Material Type 可以创建诸如肥皂泡、闪光金属或昆虫翅膀之类的材质。
    • Specular Color:将镜面反射颜色 (Specular Color) 工作流程应用于材质。使用此 Material Type 可以创建具有彩色镜面高光的材质。这类似于内置的镜面反射着色器 (Specular Shader)。
    • Translucent:将半透明 (Translucent) 工作流程应用于材质。使用此 Material Type 和厚度贴图可以模拟半透明材质。与次表面散射材质不同,半透明材质不会模糊穿透材质的光线。
    有关该功能的更多信息以及每个 Material Type 显示的属性列表,请参阅 Material Type 文档。
    - Transmission 指示 HDRP 是否使用厚度贴图模拟材质的半透明度。可以使用扩散配置文件 (Diffusion Profile) 来配置次表面散射和透射设置。如需了解更多信息,请参阅有关次表面散射的文档。
    仅当从 Material Type 下拉选单中选择 Subsurface Scattering 时,才显示此属性。
    Receive Decals 指示 HDRP 是否可以在该材质的表面上绘制贴花。
    Receive SSR/SSGI 指示是否在处理屏幕空间反射通道时使 HDRP 包含该材质。HDRP 在计算屏幕空间全局光照时也会考虑此材质。
    仅当 Surface Type 设置为 Opaque 时,才会显示此属性。
    Receive SSR Transparent 指示是否在处理屏幕空间反射通道时使 HDRP 包含该材质。
    仅当 Surface Type 设置为 Transparent 时,才显示此属性。
    Geometric Specular AA 指示 HDRP 是否对此材质执行几何抗锯齿。这会修改曲面几何体表面上的平滑度值,从而消除镜面反射瑕疵。
    有关该功能的更多信息以及该功能显示的属性列表,请参阅几何镜面反射抗锯齿 (Geometric Specular Anti-aliasing) 文档。
    - Screen Space Variance 几何镜面反射抗锯齿效果的强度(大小介于 0 和 1 之间)。较大的值会产生锯齿较少、更模糊的结果。
    仅当启用 Geometric Specular AA 时,才显示此属性。
    - Threshold HDRP 为了减少瑕疵而从平滑度值减去的最大偏移值。
    仅当启用 Geometric Specular AA 时,才显示此属性。
    Displacement Mode 指定 HDRP 用于更改材质表面高度的方法。选项包括:
    • None:不对材质应用位移。
    • Vertex displacement:根据 Height Map 对网格顶点进行移位。
    • Pixel displacement:根据 Height Map 对网格表面上的像素进行移位。
    有关该功能的更多信息以及每个 Displacement Mode 显示的属性列表,请参阅 Displacement Mode 文档。
    - Lock With Object Scale 指示是否使用变换组件的缩放值更改位移高度。这样可以保持位移幅度与变换组件的缩放值之间的比率。
    仅当 Displacement Mode 设置为 Vertex Displacement 或 Pixel Displacement 时,才显示此属性。
    - Lock With Height Map Tiling Rate 指示是否使用高度贴图 (Height Map) 的平铺值更改位移幅度。这样可以保持位移幅度与高度贴图 (Height Map) 纹理的缩放值之间的比率。
    仅当 Displacement Mode 设置为 Vertex Displacement 或 Pixel Displacement 时,才显示此属性。
    - Minimum Steps Unity 处理像素位移时所需执行的最小纹理样本数。
    仅当 Displacement Mode 设置为 Pixel Displacement 时,才显示此属性。
    - Maximum Steps Unity 处理像素位移时所需执行的最大纹理样本数。
    仅当 Displacement Mode 设置为 Pixel Displacement 时,才显示此属性。
    - Fading Mip Level Start 像素位移效果开始淡出的 Mip 级别。
    仅当 Displacement Mode 设置为 Pixel Displacement 时,才显示此属性。
    - Primitive Length Unity 应用位移贴图的网格长度(以米为单位)。
    仅当 Displacement Mode 设置为 Pixel Displacement 时,才显示此属性。
    - Primitive Width Unity 应用位移贴图的网格宽度(以米为单位)。
    仅当 Displacement Mode 设置为 Pixel Displacement 时,才显示此属性。
    - Depth Offset 指示 HDRP 是否根据位移修改深度缓冲区。因此,使用深度缓冲区的效果(例如,接触阴影 (Contact Shadows))可以捕获像素位移细节。
    仅当 Displacement Mode 设置为 Pixel Displacement 时,才显示此属性。

    Vertex Animation

    属性 描述
    Motion Vector For Vertex Animation 启用此复选框可以使 HDRP 为使用顶点动画的游戏对象编写运动矢量。这将消除顶点动画可能导致的重影。

    Surface Inputs

    属性 描述
    Base Map 指定一个纹理,用于控制材质的颜色和不透明度。要为此字段指定纹理,请单击单选按钮,然后在 Select Texture 窗口中选择纹理。使用拾色器来选择材质的颜色。如果不指定纹理,这将是材质的绝对颜色。如果指定了纹理,则材质的最终颜色是您指定的纹理和所选颜色的组合。如果从 Surface Type 下拉选单中选择 Transparent,则颜色的 Alpha 值将控制材质的透明度级别。
    Metallic 使用此滑动条调整材质表面的金属性程度(介于 0 和 1 之间)。当表面具有较高的金属性时,它会在更大程度上反射环境,并且反照率颜色将变得不那么明显。在最高金属性级别下,表面颜色完全由来自环境的反射驱动。当表面的金属度较低时,其反照率颜色会更清晰,并且所有表面反射均在表面颜色的基础之上可见,而不是遮挡住表面颜色。
    仅当在 Mask Map 中取消分配纹理时,才显示此属性。
    Smoothness 使用滑动条调整材质的平滑度。照射到光滑表面的每条光线都将以可预测且一致的角度反弹。对于像镜子一样反射光线的完美光滑表面,应将此属性设置为值 1。较不光滑的表面在较宽的角度范围内反射光线(因为光线会照射到微表面上的凸起),所以反射的细节较少,以更加分散的模式在表面上扩散。
    仅当在 Mask Map 中取消分配纹理时,才显示此属性。
    Metallic Remapping 使用此最小值/最大值滑动条将 Mask Map 中的金属度值重新映射到指定的范围。Unity 不会将值钳制到新范围,而是将原始范围均匀压缩到新范围。
    仅当分配一个 Mask Map 时,才显示此属性。
    Smoothness Remapping 使用此最小值/最大值滑动条将 Mask Map 中的平滑度值重新映射到您指定的范围。Unity 不会将值钳制到新范围,而是将原始范围均匀压缩到新范围。
    仅当分配一个 Mask Map 时,才显示此属性。
    Ambient Occlusion Remapping 使用此最小值/最大值滑动条将 Mask Map 中的环境光遮挡值重新映射到您指定的范围。Unity 不会将值钳制到新范围,而是将原始范围均匀压缩到新范围。
    仅当分配一个 Mask Map 时,才显示此属性。
    Mask Map 指定一个通道打包的纹理并确保其 RGBA 通道中包含以下材质贴图。
    • Red:存储金属性贴图。
    • Green:存储环境光遮挡贴图。
    • Blue:存储细节遮罩贴图。
    • Alpha:存储平滑度贴图。
    有关通道打包的纹理和遮罩贴图的更多信息,请参阅遮罩贴图。
    Normal Map Space 使用此下拉选单选择该材质使用的法线贴图空间类型。
    • TangentSpace:定义切线空间中的法线贴图。使用此类型可以在网格上平铺纹理。法线贴图纹理必须是 BC7、BC5 或 DXT5nm 格式。
    • ObjectSpace:定义对象空间中的法线贴图。此类型用于平面贴图的游戏对象,如地形。法线贴图必须是 RGB 纹理。
    Normal Map 指定一个纹理来定义此材质的切线空间法线贴图。使用滑动条在 0 到 8 之间调节法线强度。
    仅当从 Normal Map Space 下拉选单中选择 TangentSpace 时,才显示此属性。
    Normal Map OS 指定一个纹理来定义此材质的对象空间法线贴图。使用控制柄在 0 到 8 之间调节法线强度。
    仅当从 Normal Map Space 下拉选单中选择 ObjectSpace 时,才显示此属性。
    Bent Normal Map 指定一个纹理来定义此材质在切线空间中的弯曲法线贴图。HDRP 使用弯曲法线贴图来模拟更精确的环境光遮挡。注意:弯曲法线贴图仅适用于漫射光照。
    仅当从 Normal Map Space 下拉选单中选择 TangentSpace 时,才显示此属性。
    Bent Normal Map OS 指定一个纹理来定义此材质在对象空间中的弯曲法线贴图。HDRP 使用弯曲法线贴图来模拟更精确的环境光遮挡。注意:弯曲法线贴图仅适用于漫射光照。
    仅当从 Normal Map Space 下拉选单中选择 ObjectSpace 时,才显示此属性。
    Coat Mask 指定一个纹理来定义此材质的涂层遮罩。HDRP 使用此遮罩来模拟材质上的透明涂层效果,从而模仿汽车油漆或塑料等材质。默认情况下,Coat Mask 值为 0,但可以使用控制柄以 0 到 1 之间的值调节透明图层遮罩 (Coat Mask) 效果。
    Base UV Mapping 使用下拉选单选择 HDRP 用于将纹理贴图到此材质表面的 UV 贴图类型。
    • Unity 为一个顶点管理四个 UV 通道:UV0、UV1、UV2 和 UV3。
    • Planar:从上到下的平面投影。
    • Triplanar:三个方向的平面投影:
    X 轴:从左到右
    Y 轴:从上到下
    Z 轴:从前到后

    Unity 将这三个投影混合在一起产生最终结果。
    Tiling 为 Surface Inputs 部分中的所有纹理设置 X 和 Y UV 平铺率。HDRP 使用这些 X 和 Y 值在材质表面上平铺这些纹理(在对象空间中)。
    Offset 为 Surface Inputs 部分中的所有纹理设置 X 和 Y UV 偏移。HDRP 使用这些 X 和 Y 值在材质表面上偏移这些纹理(在对象空间中)。

    Detail Inputs

    属性 描述
    Detail Map 指定一个通道打包的纹理,由 HDRP 用于将微观细节添加到材质中。Detail Map 使用以下通道设置:
    • Red:存储灰度作为反照率。
    • Green:存储细节法线贴图的绿色通道。
    • Blue:存储细节平滑度。
    • Alpha:存储细节法线贴图的红色通道。
    有关通道打包的纹理和细节贴图的更多信息,请参阅细节贴图。
    Detail UV Mapping 指定要用于 Detail Map 的 UV 贴图类型。如果材质的 Base UV mapping 属性设置为 Planar 或 Triplanar,则 Detail UV Mapping 也会设置为 Planar 或 Triplanar。
    Detail Map 纹理会修改材质的外观,因此默认情况下,HDRP 将 Base UV Map 的 Tiling 和 Offset 应用于 Detail Map 以同步 Detail Map 和其余材质纹理。然后,HDRP 将 Detail Map Tiling 和 Offset 属性应用于 Base Map Tiling 和 Offset 之上。例如,在平面上,如果 Base UV Mapping 的 Tiling 为 2,且此值也设置为 2,则 Detail Map 纹理在平面上的平铺率为 4。
    此工作流程允许更改材质上的纹理 Tiling,而无需同时设置 Detail UV 的 Tiling。
    要将 Detail UV Map 与 Base UV Map 分开单独设置,请禁用 Lock to Base Tiling/Offset 复选框。
    - Lock to Base Tiling/Offset 指示 Base UV Map 的 Tiling 和 Offset 属性是否影响 Detail Map。启用后,HDRP 分别将这些属性乘以 Detail UV Map 的 Tiling 和 Offset 属性。要将 Detail UV Map 与 Base UV Map 分开单独设置,请禁用此复选框。
    Tiling Detail Map UV 每个轴的平铺率。HDRP 使用这些 X 和 Y 值在材质表面上平铺指定给 Detail Map 的纹理(在对象空间中)。
    Offset Detail Map UV 每个轴的偏移。HDRP 使用这些 X 和 Y 值在材质表面上偏移指定给 Detail Map 的纹理(在对象空间中)。
    Detail Albedo Scale 在 0 到 2 之间调节细节贴图的反照率(红色通道)。这是一种叠加效果。默认值为 1 且不应用缩放。
    Detail Normal Scale 在 0 到 2 之间调节细节法线贴图的强度(绿色通道和 Alpha 通道)。默认值为 1 且不应用缩放。
    Detail Smoothness Scale 在 0 到 2 之间调节细节平滑度贴图的强度(蓝色通道)。这是一种叠加效果。默认值为 1 且不应用缩放。

    Transparency Inputs

    如果从 Surface Type 下拉选单中选择 Transparent,Unity 将显示此部分。有关此部分的属性的更多信息,请参阅 Surface Type 文档。

    请注意,启用 Refraction 时,请确保将 Blend Mode 设置为 Alpha,否则将无法正常使用效果。如果启用 Refraction 并使用 Alpha 以外的 Blend Mode,则材质 Inspector 中会显示一条警告。

    另外,请注意,HDRP 在 Pre-Refraction 渲染通道中不支持 Refraction。如果启用 Refraction 并使用 Pre-Refraction 渲染通道,则材质和 Shader Graph Inspector 中会显示一条警告。

    Emission inputs

    属性 描述
    Use Emission Intensity 启用此复选框可以使用单独的 LDR 颜色和强度值来设置此材质的发射颜色。禁用此复选框则仅使用 HDR 颜色来处理颜色和发射颜色强度。启用此复选框后,将显示 Emission Intensity 属性。
    Emission Map 指定此材质用于发射的纹理。还可以使用拾色器选择 HDRP 乘以纹理的颜色。如果未设置发射纹理,则 HDRP 仅使用 HDR 颜色计算材质的最终发射颜色。可以在 HDR 拾色器中设置 HDR 颜色的强度。
    Emission UV Mapping 使用下拉选单选择 HDRP 用于 Emission Map 的 UV 贴图类型。
    • Unity 为一个顶点管理四个 UV 通道:UV0、UV1、UV2 和 UV3。
    • Planar:从上到下的平面投影。
    • Triplanar:三个方向的平面投影:
    X 轴:从左到右
    Y 轴:从上到下
    Z 轴:从前到后

    Unity 将这三个投影混合在一起产生最终结果。
    • Same as Base:Unity 将使用在 Surface Inputs 中选择的 Base UV Mapping。如果表面启用了 Pixel displacement,此选项也会在发光贴图上应用位移。
    - Tiling 设置 Emission Map UV 的 X 和 Y 平铺率。HDRP 使用这些 X 和 Y 值在材质表面上平铺指定给 Emission Map 的纹理(在对象空间中)。
    - Offset 设置 Emission Map UV 的 X 和 Y 偏移。HDRP 使用这些 X 和 Y 值在材质表面上偏移指定给 Emission Map 的纹理(在对象空间中)。
    Emission Intensity 设置此材质的发射效果的整体强度。
    使用下拉选单选择以下物理光单位之一表示强度:
    • 尼特
    • EV100
    Exposure Weight 使用滑动条设置曝光对发射强度的影响程度。例如,如果创建霓虹灯管,则需要在每次曝光时应用发光效果。
    Emission Multiply with Base 启用此复选框可以使 HDRP 在计算发射的最终颜色时使用材质的基色。启用后,HDRP 将发光颜色乘以基色以计算最终发射颜色。
    Emission 控制发射是否影响全局光照。
    - Global Illumination HDRP 使用此模式确定颜色发射与全局光照的相互影响。
    • Realtime:选择此选项可使发射影响实时全局光照的结果。
    • Baked:选择此选项可使发射仅影响烘焙过程中的全局光照。
    • None:选择此选项可使发射不影响全局光照。

    Advanced options

    属性 描述
    Enable GPU instancing 启用此复选框可以指示 HDRP 在一个批次中使用相同的几何体和材质来渲染网格(如果可能)。这样可以加快渲染速度。如果网格具有不同的材质或者硬件不支持 GPU 实例化,则 HDRP 无法在一个批次中渲染这些网格。例如,如果游戏对象具有基于对象轴心的动画,则不能对它们进行静态批处理,但 GPU 可以实例化它们。
    Specular Occlusion Mode 使用下拉选单选择 HDRP 用于计算镜面反射遮挡的模式。
    • Off:禁用镜面反射遮挡。
    • From Ambient Occlusion:根据环境光遮挡贴图和摄像机的视图矢量来计算镜面反射遮挡。
    • From Bent Normal:根据弯曲法线贴图来计算镜面反射遮挡。
    Add Precomputed Velocity 启用此复选框可以使用存储在 Alembic 文件中的预先计算的速度信息。
    返回到顶部
    Copyright © 2023 Unity Technologies — 商标和使用条款
    • 法律条款
    • 隐私政策
    • Cookie
    • 不要出售或分享我的个人信息
    • Your Privacy Choices (Cookie Settings)