URP系列教程 | 使用自定义Renderer Feature实现屏幕空间的镜头光晕效果
可扩展性是 URP 的亮点之一,Renderer Features 就是一个很好的例子。它支持使用 C# 脚本进行扩展,可以让我们将额外的渲染通道添加到 URP 渲染器中并配置其行为逻辑。比如在管线中配置渲染的顺序、渲染的对象或者材质等。而这正是修改管线来实现一些自定义需求的好方法。
URP 还将一些功能在 Renderer Features 中实现了模块化,如 SSAO(屏幕空间的环境光遮蔽)、Decals(贴花)和 Render Objects。
使用 SSAO 前后对比
此外,关于如何添加和使用 Render Objects Renderer Features,可以参考之前的 URP 系列教程中《URP 系列教程 | 手把手教你如何用 Renderer Featur》和《URP 系列教程 | 如何使用多个 Renderer Feature 来实现角色透视效果》。本文选取了部分课程内容,点击阅读原文,即可免费获取全套课程。
自定义 Renderer Feature 实际案例展示
《自定义 Renderer Feature 进阶三部曲》中将带大家学习如何去自定义 Renderer Feature 来实现一些相对进阶的、特定的功能。那么三部曲中都有哪些内容呢?先来介绍下:
02 使用自定义 Renderer Feature 检查当前项目 Quality Level(质量级别)并基于 Quality Level 获取对应的 Volume Profile(配置文件)(Low Quality Volume Profile、Medium Quality Volume Profile 、High Quality Volume Profile等),然后将对应的 Volume Profile 分配给 Global Post Processing Volume (全局后处理Volume),从而可以对我们游戏的后处理成本得以控制。
03 使用 Renderer Feature 实现水的焦散效果。
创建示例场景和游戏对象
首先我们通过一个简单的例子来给大家介绍下创建自定义 Renderer Feature 的步骤。
在开始之前,我们先来创建一个 URP 的工程,用于确保已经在 (Project Settings > Graphics > Scriptable Render Pipeline Settings) 正确地设置了 URP Asset。
01 接下来我们在工程中新建一个场景,并在场景中创建一个平面 Plane;
02 创建一个新的材质并为其指定 Universal Render Pipeline/Lit 着色器。将基色设置为灰色。重命名材质为 Plane;
03 接着我们创建一个点光源并将其放置在平面上方;
创建 RendererFeature C# 脚本
并将其添加到通用渲染器
以上便是本系列教程的精选内容,点击阅读原文,即可前往教程主页,解锁全部课程内容、获取案例。
长按关注
第一时间了解Unity引擎动向,学习最新开发技巧
点击“阅读原文”,前往课程主页