本页上的示例展示了如何使用全屏渲染通道渲染器功能创建灰度自定义后处理效果。
有关全屏渲染通道渲染器功能的更多信息,请参阅全屏通道渲染器功能参考。
此示例需要满足以下条件:
安装了 URP 包的 Unity 项目。
Scriptable Render Pipeline Settings 属性是指 URP 资源(项目设置 (Project Settings) > 图形 (Graphics) > 可编程渲染管线设置 (Scriptable Render Pipeline Settings))。
您必须创建 Fullscreen Shader Graph 才能创建自定义后处理效果。
在项目中创建新的 Shader Graph。为此,请在项目 (Project) 窗口中右键单击并选择创建 (Create) > 着色器图 (Shader Graph) > URP > 全屏着色器图 (Fullscreen Shader Graph)。
添加 URP Sample Buffer 节点。为此,请在 Shader Graph 窗口中右键单击,然后选择创建节点 (Create Node)。然后找到并选择 URP Sample Buffer。
在 URP Sample Buffer 节点的源缓冲区 (Source Buffer) 下拉选单中,选择 BlitSource。
添加 Vector 3 节点。
添加 Dot Product 节点。
如下所示连接节点。
| 节点 | 连接 |
|---|---|
| URP Sample Buffer | Output 到 Dot Product A |
| Vector 3 | Out 到 Dot Product B |
| Dot Product | Out 到 Fragment Base Color |
保存 Shader Graph。
在项目中创建一个新材质。为此,请在项目窗口中单击右键,然后选择创建 (Create) > 材质 (Material)。
将 Shader Graph 着色器应用于材质。为此,请在检视面板 (Inspector) 中打开材质并选择着色器 (Shader) > 着色器图 (Shader Graphs),然后选择在前面的步骤中创建的 Shader Graph。
创建兼容的着色器图形和材质后,可以使用具有全屏通道渲染器功能的材质来创建自定义后处理效果。
选择项目的通用渲染器。
如果使用通用 3D (Universal 3D) 模板创建了项目,可以在以下项目文件夹中找到通用渲染器:Assets > Settings。
在检视面板中,单击添加渲染器功能 (Add Renderer Feature) 然后选择全屏通道渲染器功能 (Full Screen Pass Renderer Feature)。有关添加渲染器功能的更多信息,请参阅如何将渲染器功能添加到渲染器。
将通道材质 (Pass Material) 字段设置为您使用 Fullscreen Shader Graph 创建的材质。
将注入点 (Injection Point) 设置为渲染后期处理之后 (After Rendering Post Processing)。
将要求 (Requirements) 设置为颜色 (Color)。
此时应该可以在场景 (Scene) 视图和游戏 (Game) 视图中看到效果。