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

    重要信息:此页面可能会在 2019.1 测试周期内发生变化。

    粒子光照着色器 (Particles Lit Shader)

    在通用渲染管线 (URP) 中,使用此着色器可以使粒子看起来几乎具有照片级真实感,例如篝火颗粒、雨滴或火炬烟雾。此着色器生成逼真的视觉效果,但使用 URP 中计算量最大的着色模型,因此会影响性能。

    在编辑器中使用粒子光照着色器

    要选择和使用此着色器,请执行以下操作:

    1. 在项目中,创建或查找要使用此着色器的材质。选择 Material。随后将打开 Material Inspector 窗口。
    2. 单击 Shader,然后选择 Universal Render Pipeline > Particles > Lit。

    UI 概述

    此着色器的 Inspector 窗口包含以下元素:

    • Surface Options
    • Surface Inputs
    • Advanced

    粒子光照着色器的 Inspector 窗口

    Surface Options

    Surface Options 控制 URP 在屏幕上的渲染材质方式。

    属性 描述
    Surface Type 使用此下拉选单可以将 Opaque 或 Transparent 表面类型应用于材质。这决定了 URP 渲染材质的渲染通道。Opaque 表面类型总是完全可见(无论其背景是什么)。URP 首先渲染不透明材质。Transparent 表面类型受其背景影响,它们可根据您选择的透明表面类型而有所不同。URP 在不透明材质之后的单独通道中渲染透明材质。如果选择 Transparent,则会出现 Blending Mode 下拉选单。
    Blending Mode 使用此下拉选单可以确定 URP 如何通过将材质与背景像素混合来计算透明材质的每个像素的颜色。
    Alpha 使用材质的 Alpha 值来更改表面的透明度。0 表示完全透明。1 表示完全不透明,但在透明渲染过程中仍然会渲染材质。对于您希望完全可见但随着时间的推移也会逐渐消失的视觉效果(例如云),这非常有用。
    Premultiply 对材质应用与 Alpha 类似的效果,但保留反射和高光,即使表面是透明的情况下也是如此。这意味着只有反射光可见。例如,想象一下透明玻璃。
    Additive 在另一个表面之上给材质添加额外的一层。这对全息图很有用。
    Multiply 将材质的颜色与表面的背景颜色相乘。这会产生更暗的效果,就像透过有色玻璃观看一样。
    Render Face 使用此下拉选单可以确定要渲染几何体的哪些边。
    Front Face 渲染几何体的正面并剔除背面。这是默认设置。
    Back Face 渲染几何体的正面并剔除正面。
    Both 使 URP 渲染几何体的正面和背面。这适用于小而扁平的对象,如树叶,因为这种情况下您可能希望两面都可见。
    Alpha Clipping 使材质像镂空着色器一样。此属性用于创建在不透明区域和透明区域之间具有硬边的透明效果。例如,创建草叶。为实现此效果,URP 不会渲染低于指定 Threshold(阈值)的 Alpha 值(该阈值会在启用 Alpha Clipping 时显示)。您可以通过移动滑动条来设置 Threshold,滑动条接受 0 到 1 之间的值。高于阈值的所有值都是完全不透明的,而低于阈值的所有值都是不可见的。例如,阈值为 0.1 意味着 URP 不会渲染低于 0.1 的 Alpha 值。默认值为 0.5。
    Color Mode 使用此下拉选单可以确定粒子颜色和材质颜色如何混合在一起。
    Multiply 通过将两种颜色相乘来产生更暗的最终颜色。
    Additive 通过将两种颜色相加来产生更明亮的最终颜色。
    Subtractive 从材质的基色中减去粒子颜色。这会在像素本身中产生整体黑暗效果,使亮度降低。
    Overlay 将粒子颜色混合到材质的基色上。这会在值大于 0.5 时产生更亮的颜色,而在值小于 0.5 时产生更暗的颜色。
    Color 使用粒子颜色来着色材质颜色,同时保持材质基色的值和饱和度。这适用于为单色场景添加颜色飞溅效果。
    Difference 返回两个颜色值之间的差异。这适用于混合彼此相似的粒子和材质颜色。

    Surface Inputs

    Surface Inputs 用于描述表面本身。例如,可以使用这些属性使表面看起来湿润、干燥、粗糙或光滑。

    属性 描述
    Base Map 向表面添加颜色。要将纹理指定给 Base Map 设置,请单击旁边的对象选择器。这将打开资源浏览器 (Asset Browser),您可以从中选择项目中的纹理。或者,也可以使用拾色器。该设置旁边的颜色显示所指定纹理上的色调。要指定其他色调,可以单击此颜色样本。如果在 Surface Options 下选择了 Transparent 或 Alpha Clipping,则材质将使用纹理的 Alpha 通道或颜色。Base Map(基础贴图)也称为漫射贴图。
    Metallic Map 显示为直接光照(例如方向光、点光源和聚光灯)的金属高光和反射输入的贴图。
    可以使用 Smoothness 滑动条控制表面上的高光分布。0 表示广泛、粗糙的高光。1 表示小而锐利的高光,像玻璃一样。介于 0 和 1 之间的值将产生半高光。例如,0.5 将产生类似塑料的光泽度。
    Normal Map 向表面添加法线贴图。使用法线贴图可以添加表面细节,如凸起、划痕和凹槽。要添加贴图,请单击旁边的对象选择器。法线贴图将拾取环境中的环境光照。
    该设置旁边的浮点值是 Normal Map 效果的乘数。较低的值会降低法线贴图的效果。较高的值会产生更强的效果。
    Emission 使表面看起来像在发光。启用此选项时,将出现 Emission Map 和 Emission Color 设置。
    要指定 Emission Map,请单击旁边的对象图片。这将打开资源浏览器 (Asset Browser),您可以从中选择项目中的纹理。
    对于 Emission Color,您可以使用拾色器来指定颜色之上的色调。此设置可以超过 100% 白色,这对于像熔岩这样的效果很有用,它比白色更亮,同时仍然是另一种颜色。
    如果尚未指定 Emission Map,则 Emission 设置会直接使用已经在 Emission Color 中指定的色调。
    如果不启用 Emission,URP 会将发射 (Emission) 设置为黑色,且不计算发射。

    Advanced

    Advanced 设置会影响背景渲染。它们对表面没有明显的影响,但会对底层计算产生影响,从而影响性能。

    属性 描述
    Flip-Book Blending 勾选此复选框可以将翻页帧混合在一起。这在帧数有限的纹理帧动画中很有用,因为它使动画更加平滑。如果遇到性能问题,请尝试将此属性关闭。
    Vertex Streams 此列表将显示该材质正常工作所需的顶点流。如果未正确分配顶点流,则会出现 Fix Now 按钮。单击此按钮可将顶点流的正确设置应用于此材质被分配到的粒子系统。
    Sorting Priority 使用此滑动条可以确定材质基于时间顺序的渲染顺序。URP 首先渲染具有较小值的材质。此属性可用于使管线首先在一些材质之前渲染另一些材质,因此不必将重叠区域渲染两次,从而减少设备上的过度绘制。这类似于 Unity 内置渲染管线中的渲染队列。

    透明 (Transparent) 表面类型

    如果在 Surface Options 下选择了 Transparent 表面类型,则会显示以下选项:

    其他粒子选项

    属性 描述
    Soft Particles 勾选此复选框可使粒子在即将与写入深度缓冲区的其他几何体表面相交时淡出。
    启用此功能后,将显示 Surface Fade 设置:
    Near 设置与粒子完全透明的另一个表面之间的距离。这是粒子看起来完全淡出的位置。
    Far 设置与粒子完全不透明的另一个表面之间的距离。粒子在此处看起来是实体的。
    距离以世界单位度量。仅适用于透明表面类型。

    注意:此设置使用由 URP 创建的 CameraDepthTexture。要使用此设置,请启用 URP 资源中的 Depth Texture 选项或为渲染粒子的摄像机启用此选项。
    Camera Fading 勾选此复选框可使粒子在靠近摄像机时淡出。
    启用此功能后,将显示 Distance 设置:
    Near 设置与粒子完全透明的摄像机之间的距离。这是粒子看起来完全淡出的位置。
    Far 设置与粒子完全不透明的摄像机之间的距离。粒子在此处看起来是实体的。
    距离以世界单位度量。

    注意:此属性使用由 URP 创建的 CameraDepthTexture。要使用此设置,请启用 URP 资源中的 Depth Texture 选项或为渲染粒子的摄像机启用此选项。
    Distortion 在绘制对象后使粒子产生折射,从而创建失真效果。这非常适合用于创建热浪效果或对粒子后面的对象进行扭曲。
    启用此功能后,将显示以下设置:
    Strength,控制粒子对背景扭曲的程度。负值与正值具有相反的效果。因此,如果一个对象在该设置为正值向右偏移,则相等的负值会使其向左偏移。
    Blend,控制失真的可见程度。值为 0 表示没有可见的失真。值为 1 表示仅失真效果可见。

    注意:此属性使用由 URP 创建的 CameraOpaqueTexture。要使用此设置,请启用 URP 资源中的 Opaque Texture 选项或为渲染粒子的摄像机启用此选项。
    返回到顶部
    Copyright © 2023 Unity Technologies — 商标和使用条款
    • 法律条款
    • 隐私政策
    • Cookie
    • 不要出售或分享我的个人信息
    • Your Privacy Choices (Cookie Settings)