光照着色器 (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 的材质在渲染时更耗资源。根据选择的 Surface Type,HDRP 会显示更多属性。有关该功能的更多信息以及每个 Surface Type 显示的属性列表,请参阅 Surface Type 文档。 |
- Rendering Pass | 使用下拉选单设置 HDRP 处理此材质使用的渲染通道。有关此属性的更多信息,请参阅 Surface Type 文档。 |
Alpha Clipping | 启用此复选框可以使该材质像镂空着色器 (Cutout Shader) 一样。启用此功能会显示更多属性。有关该功能的更多信息以及该功能显示的属性列表,请参阅 Alpha Clipping 文档。 |
Double-Sided | 启用此复选框可以使 HDRP 渲染几何体中多边形的两个面。有关该功能的更多信息以及该功能可显示的属性列表,请参阅 Double-Sided 文档。 |
Material Type | 指定材质类型,允许根据选择的 Material Type 使用不同的设置对材质进行自定义。有关该功能的更多信息以及每个 Material Type 显示的属性列表,请参阅 Material Type 文档。 |
Receive Decals | 启用此复选框可以允许 HDRP 在该材质的表面上绘制贴花。 |
Receive SSR | 启用此复选框可以在处理屏幕空间反射通道时使 HDRP 包含该材质。 |
Geometric Specular AA | 启用此复选框可以使 HDRP 对该材质执行几何抗锯齿。这会修改曲面几何体表面上的平滑度值,从而消除镜面反射瑕疵。有关该功能的更多信息以及该功能显示的属性列表,请参阅几何镜面反射抗锯齿 (Geometric Specular Anti-aliasing) 文档。 |
Displacement Mode | 使用此下拉选单选择 HDRP 用于更改材质表面高度的方法。有关该功能的更多信息以及每个 Displacement Mode 显示的属性列表,请参阅 Displacement Mode 文档。 |
Vertex Animation
属性 | 描述 |
---|---|
Motion Vector For Vertex Animation | 启用此复选框可以使 HDRP 为使用顶点动画的游戏对象编写运动矢量。这将消除顶点动画可能导致的重影。 |
Surface Inputs
属性 | 描述 |
---|---|
Base Map | 指定一个纹理,用于控制材质的颜色和不透明度。要为此字段指定纹理,请单击单选按钮,然后在 Select Texture 窗口中选择纹理。使用拾色器来选择材质的颜色。如果不指定纹理,这将是材质的绝对颜色。如果指定了纹理,则材质的最终颜色是您指定的纹理和所选颜色的组合。如果从 Surface Type 下拉选单中选择 Transparent,则颜色的 Alpha 值将控制材质的透明度级别。 |
Smoothness | 使用滑动条调整材质的平滑度。照射到光滑表面的每条光线都将以可预测且一致的角度反弹。对于像镜子一样反射光线的完美光滑表面,应将此属性设置为值 1。较不光滑的表面在较宽的角度范围内反射光线(因为光线会照射到微表面上的凸起),所以反射的细节较少,以更加分散的模式在表面上扩散。 仅当在 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 的 X 和 Y 平铺率。HDRP 使用这些 X 和 Y 值在材质表面上平铺指定给 Detail Map 的纹理(在对象空间中)。 |
Offset | 设置 Detail Map UV 的 X 和 Y 偏移。HDRP 使用这些 X 和 Y 值在材质表面上偏移指定给 Detail Map 的纹理(在对象空间中)。 |
Detail Albedo Scale | 使用滑动条在 0 到 2 之间调节细节贴图的反照率(红色通道)。这是一种叠加效果。 |
Detail Normal Scale | 使用滑动条在 0 到 2 之间调节细节法线贴图的强度。默认值为 1 且无缩放。 |
Detail Smoothness Scale | 使用滑动条在 0 到 2 之间调节细节贴图的平滑度(蓝色通道),像一种叠加效果。默认值为 1 且无缩放。 |
Transparency Inputs
如果从 Surface Type 下拉选单中选择 Transparent,Unity 将显示此部分。有关此部分的属性的更多信息,请参阅 Surface Type 文档。
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 将这三个投影混合在一起产生最终结果。 |
- 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 | 使用下拉选单选择颜色发射与全局光照的相互影响。 • 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 文件中的预先计算的速度信息。 |