Version: 6000.3
语言: 中文
延迟渲染路径介绍
URP 中 Deferred 和 Deferred+ 渲染路径中的 G 缓冲区布局

URP 中 Deferred 和 Deferred+ 渲染路径中的渲染通道

下表列出了 Deferred 和 Deferred+ 的渲染传递渲染路径渲染管道用于渲染图形的技术。选择不同的渲染路径会影响照明和着色的计算方式。某些渲染路径比其他路径更适合不同的平台和硬件。更多信息
请参阅术语表
用。

渲染事件 渲染事件之后发生的渲染通道 描述
渲染前 - -
渲染阴影之前 - -
渲染后阴影(AfterRenderingShadows) - -
渲染前预传递 DepthPrepass,或 DepthPrepassDepthNormalPrepass 在预处理中渲染深度和法线纹理,适用于 Unity 在前向通道中渲染的材质。
渲染后预传递 - -
渲染前Gbuffer GBuffer通票 渲染 G-Buffer,然后复制 G-Buffer 深度纹理。
渲染后Gbuffer SSAO公司 计算屏幕空间环境光遮挡一种近似环境光(不是来自特定方向的光)可以击中表面上的点的量的方法。
请参阅术语表
(SSAO) 纹理。仅当您启用 SSAO 并禁用 After Opaque 时,Unity 才会在此处计算此值。
渲染前延迟光源 延期通行证 延迟渲染。Unity 在此渲染通道期间使用 SSAO 纹理(如果已创建)。
渲染后延迟光源 - -
渲染之前不透明 - 渲染不透明的仅正向材质。
渲染后不透明 - 计算并混合屏幕空间环境光遮蔽 (SSAO) 纹理。仅当您启用 SSAO 并启用 After Opaque 时,Unity 才会在此处计算此值。
渲染之前天空盒(BeforeRenderingSkybox) - -
渲染后天空盒 - -
渲染之前透明(BeforeRenderingTransparents) - -
渲染后透明(AfterRenderingTransparents) - -
渲染前后期处理(BeforeRenderingPostProcessing) - -
渲染后处理后处理(AfterRenderingPostProcessing) - -
渲染后 - -

有关渲染事件的完整列表以及自定义渲染通道的注入点,请参阅URP 的注入点参考

源代码参考

下表列出了包含与延迟渲染路径相关的代码的文件,这些文件位于com.unity.render-pipelines.universal文件夹。

文件路径 描述
Runtime/DeferredLights.cs 定义处理延迟渲染路径的主类。
Runtime/Passes/GBufferPass.cs 实现一个ScriptableRenderPass用于 G 缓冲区渲染通道。
Runtime/Passes/DeferredPass.cs 实现一个ScriptableRenderPass对于延迟着色 内置渲染管线中的渲染路径,对可能影响游戏对象的光源数量没有限制。所有光源都是按像素计算的,这意味着它们都与法线贴图等正确交互。此外,所有光源都可以有饼干和阴影。更多信息
请参阅术语表
通过。
Shaders/Utils/StencilDeferred.shader 定义使用延迟渲染路径时基于模板的延迟照明的渲染行为。
Shaders/Utils/ClusterDeferred.shader 定义使用 Deferred+ 渲染路径时基于集群的延迟照明的渲染行为。
ShaderLibrary/GBufferInput.hlsl 包含用于从 Universal 中的 G 缓冲区读取材质属性的实用函数渲染管线(Render Pipeline) 获取场景内容并将其显示在屏幕上的一系列作。Unity 允许您从预构建的渲染管道中进行选择,或编写自己的渲染管道。更多信息
请参阅术语表
(URP)。
ShaderLibrary/GBufferOutput.hlsl 包含用于将材质属性写入URP中的G缓冲区的实用函数。

其他资源

延迟渲染路径介绍
URP 中 Deferred 和 Deferred+ 渲染路径中的 G 缓冲区布局