Version: 2022.2
可编程渲染管线基础知识
在可编程渲染管线中调度和执行渲染命令

可编程渲染管线简介

本页说明 Unity 的可编程渲染管线 (SRP) 的工作原理,并介绍一些关键概念和术语。本页面上的信息适用于通用渲染管线 (URP)、高清渲染管线 (HDRP) 和基于 SRP 的自定义渲染管线。

可编程渲染管线是一个瘦 API 层,允许使用 C# 脚本来调度和配置渲染命令。Unity 将这些命令传递给它的低级图形架构,后者随后将指令发送给图形 API。

URP 和 HDRP 建立在 SRP 之上。您还可以在 SRP 之上创建自己的自定义渲染管线。

渲染管线实例和渲染管线资源

每个基于 SRP 的渲染管线都有两个关键的自定义元素:

  • 渲染管线实例。这是定义渲染管线功能的类的实例。它的脚本继承自 RenderPipeline 并覆盖其 Render() 方法。
  • 渲染管线资源。这是 Unity 项目中的一项资源,用于存储有关所使用的渲染管线实例以及如何对其进行配置的数据。它的脚本继承自 RenderPipelineAsset 并覆盖其 CreatePipeline() 方法。

有关这些元素的更多信息,以及如何在自定义渲染管线中进行创建的说明,请参阅创建渲染管线资源和渲染管线实例

ScriptableRenderContext

ScriptableRenderContext 是一个类,用作渲染管线中的自定义 C# 代码与 Unity 的低级图形代码之间的接口。

使用 ScriptableRenderContext API 可以调度和执行渲染命令。有关信息,请参阅在可编程渲染管线中调度和执行渲染命令

入口点和回调

使用 SRP 时,使用它们可让 Unity 在特定时间调用您的 C# 代码。

可编程渲染管线基础知识
在可编程渲染管线中调度和执行渲染命令