本页说明可编程渲染管线 (SRP) 的工作原理,并介绍一些关键概念和术语。
SRP 是一个瘦 API 层,允许使用 C# 脚本来调度和配置渲染命令。SRP 将这些命令传递给 Unity 的低级图形架构,后者随后将指令发送给图形 API。
在 SRP 中编写 C# 渲染代码时,必须创建和自定义两个关键元素:
Rendering.RenderPipelineAsset
继承的脚本来定义渲染管线资源,然后在项目中创建并配置渲染管线资源的实例。Render()
方法的类,此方法作为 SRP 的入口点。要定义渲染管线实例,应创建从 RenderPipeline
继承的脚本。有关创建这些元素的信息,请参阅创建渲染管线资源和渲染管线实例。
可编程渲染上下文 (Scriptable Render Context) 是一个类,用作 C# SRP 代码与 Unity 的低级图形代码之间的接口。应使用 ScriptableRenderContext API 来调度和执行渲染命令。
有关使用可编程渲染上下文的信息,请参阅在可编程渲染管线中调度和执行渲染命令。
在 SRP 中,可以编写由 Unity 在特定时间调用的 C# 渲染代码。
Render()
方法是 SRP 的入口点。Unity 在每帧为当前渲染的每个 CameraType 调用一次此方法。通过自定义此方法可以自定义 SRP。