Version: 6000.3
语言: 中文
在自定义 URP 着色器中使用阴影
使 URP 着色器与 SRP Batcher 兼容

URP 参考中的 ShaderLab Pass 标签

本节包含特定于 URP 的描述ShaderLabUnity 用于定义 Shader 对象结构的语言。更多信息
请参阅术语表
传递标签。

注意:URP 不支持以下 LightMode 标签:Always,ForwardAdd,PrepassBase,PrepassFinal,Vertex,VertexLMRGBM,VertexLM.

光照模式

此标签的值允许管道确定在执行渲染管线(Render Pipeline) 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
请参阅术语表
.

如果您未将LightMode标记,URP 使用SRPDefaultUnlit标记值。

LightMode标记可以具有以下值。

财产 描述
通用前锋 通道渲染对象几何体并评估所有光照贡献。URP 在 Forward渲染路径渲染管线用于渲染图形的技术。选择不同的渲染路径会影响照明和着色的计算方式。某些渲染路径比其他路径更适合不同的平台和硬件。更多信息
请参阅术语表
.
通用GBuffer 通道渲染对象几何体,而不评估任何光照贡献。在 Unity 必须在延迟渲染路径中执行的通道中使用此标签值。
仅通用转发 通道渲染对象几何体并评估所有光源贡献,类似于LightMode具有UniversalForward值时。与 UniversalForward 的不同之处在于,URP 可以将 Pass 用于 Forward 和 Deferred 渲染路径。如果当URP使用延迟渲染路径时,某个通道必须使用前向渲染路径渲染对象,请
使用此值。例如,如果URP使用延迟渲染路径渲染场景,并且场景包含着色器数据不适合GBuffer的对象,例如透明涂层法线,请使用此标签。
如果着色器必须在 Forward 和 Deferred Rendering Paths 中渲染,请使用
UniversalForwardUniversalGBuffer标记值。
如果着色器必须使用 前向渲染路径(Forward Rendering Path) 进行渲染,而不管 URP 渲染器使用的渲染路径如何,请仅使用
LightMode标记设置为UniversalForwardOnly.
如果使用 SSAO 渲染器功能,请添加带有
LightMode标记设置为DepthNormalsOnly.有关更多信息,请查看DepthNormalsOnly价值。
仅深度法线(DepthNormalsOnly) 将此值与UniversalForwardOnly在延迟渲染路径中。此值允许 Unity 渲染着色器在 GPU 上运行的程序。更多信息
请参阅术语表
在“深度”和“法线预处理”中。在延迟渲染路径中,如果带有DepthNormalsOnly标签值缺失,则 Unity 不会生成环境光遮挡一种近似环境光(不是来自特定方向的光)可以击中表面上的点的量的方法。
请参阅术语表
围绕网格Unity 的主要图形原语。网格体构成了 3D 世界的很大一部分。Unity 支持三角或四边形多边形网格。Nurbs、Nurms、Subdiv 曲面必须转换为多边形。更多信息
请参阅术语表
.
通用2D 通道渲染对象并评估 2D 光源贡献。URP 在 2D 渲染器中使用此标签值。
暗影施法者 通道将对象深度从光源的视角渲染到阴影贴图或深度纹理中。
仅深度 通道仅从以下角度渲染深度信息相机在场景中创建特定视点图像的组件。输出被绘制到屏幕上或作为纹理捕获。更多信息
请参阅术语表
进入深度纹理。
Unity 仅在烘焙时执行此 Pass光照贴图一种预渲染的纹理,包含光源对场景中静态对象的效果。光照贴图覆盖在场景几何体之上以创建光照效果。更多信息
请参阅术语表
在 Unity 编辑器中。Unity 在构建播放器时从着色器中剥离此 Pass。
SRPDefaultUnlit 使用这个LightMode标记值,以在渲染对象时绘制额外的通道。应用示例:绘制对象轮廓。此标记值对前向渲染路径和延迟渲染路径均有效。
当通道没有
LightMode标记。
运动矢量 使用此标签可向着色器添加运动矢量支持。有关更多信息,请参阅 ShaderLab 的运动矢量通道

通用材质类型

Unity 在延迟渲染路径中使用此标记。

UniversalMaterialType标记可以具有以下值。

如果未在 Pass 中设置此标签,Unity 会使用Lit价值。

财产 描述
点燃 此值表示着色器类型为 Lit。在 G 缓冲区通道期间,Unity 使用模板来标记使用 Lit 着色器类型的像素(镜面反射模型为 PBR)。如果未在通道中设置标签,则
Unity 默认使用此值。
简单照明 此值表示着色器类型为 SimpleLit。在 G 缓冲区通道期间,Unity 使用模板将像素计算机图像中的最小单位。像素大小取决于您的屏幕分辨率。像素光照是在每个屏幕像素下计算的。更多信息
请参阅术语表
使用 SimpleLit 着色器类型(镜面反射模型为 Blinn-Phong)。
在自定义 URP 着色器中使用阴影
使 URP 着色器与 SRP Batcher 兼容