[Render] 适用于高级Unity创作者的通用渲染管线[3] - 转换过程

11 篇文章 4 订阅

RuntimeMapMaker3D-Pro在这里插入图片描述


英文原文:https://resources.unity.com/games/introduction-universal-render-pipeline-for-advanced-unity-creators?ungated=true

本节介绍使用 URP 启动新项目或将现有项目转换为 URP 的步骤。

如何打开一个新的 URP 项目

  通过 Unity Hub 使用 URP 打开一个新项目。 单击新建并验证在窗口顶部选择的 Unity 版本是否为 2021.2 或更高版本。 选择项目的名称和位置,选择 3D (URP) 模板或 3D 示例场景 (URP),然后单击创建。
在这里插入图片描述
注意:该模板可确保您的项目设置为使用线性色彩空间,这是正确计算照明所必需的。

在这里插入图片描述
  您可以通过“文件”>“新场景”创建新场景,使用基本的游戏对象(例如相机和定向光),甚至可以使用预填充的对象创建自己的场景模板。 在 URP 场景模板文档中阅读更多信息。

在这里插入图片描述
  转到Edit > Project Settings 并打开图形面板。 要在Editor 中使用URP,您必须从Scriptable Render Pipeline Settings 中选择一个URP 资源。 URP 资产控制项目的全局渲染和质量设置,并创建渲染管线实例。 同时,渲染管线实例包含中间资源和渲染管线实现。

  UniversalRP-HighFidelity 是默认选择的 URP 资产,但您可以切换到 UniversalRP-Balanced 或 UniversalRP-Performant。
在这里插入图片描述
本指南的后面部分详细介绍了如何调整 URP 资产的设置。

  要打开一个干净的项目,请使用 3D (URP) 模板,或者,如果要从示例场景 (URP) 模板中删除示例场景,请删除 ExampleAssets 和 Tutorial Info 文件夹,以及 Settings > SampleSceneProfile.asset, 场景 > SampleScene.unity 和场景 > SampleSceneLightingSettings.lighting。

如何将 URP 添加到现有的内置渲染管道项目

  重要提示:在执行本节中的步骤之前,请务必使用源代码管理备份您的项目。 此过程将转换资产,Unity 不提供撤消选项。 如果您使用源代码管理,您将能够在必要时恢复到以前版本的资产。

  如果您升级现有的内置渲染管道项目,则需要将 URP 包添加到您的项目中,因为它不包含在 Unity 2021.2 或 2021 LTS 中。
在这里插入图片描述
  转到 Window > Package Manager 并单击 Packages 下拉菜单以将 URP 添加到您的项目中。 确保选择 Unity Registry,然后选择 Universal RP。 如果 URP 包尚未安装在您的开发计算机上,请单击窗口右下角的下载。 然后在下载后单击安装。

在这里插入图片描述
  要创建 URP 资产,请在 Project 窗口中右键单击并选择 Create > Rendering > URP Asset(使用Universal Renderer)。 命名资产。

在这里插入图片描述
  请记住,如果您使用通用渲染管线或 3D (URP) 模板创建新项目,这些 URP 资源和 URP 包已经在项目中可用。

  URP 不是创建单个 URP 资产,而是使用两个文件,每个文件都有一个资产扩展名。

在这里插入图片描述
  其中一项资产的文件名以 _Renderer 结尾; 在以下示例中,它称为 Universal RP_Renderer。 这是一个渲染器数据资产,您可以使用它来过滤渲染器工作的图层,并拦截渲染管线以自定义场景的渲染方式。 这样,您可以方便地创建高质量的效果。 有关更多信息,请参阅管线回调部分。

  此外,UniversalRP_Renderer 控制 URP 的高级渲染逻辑和通道。 它支持正向和延迟路径,以及启用诸如 2D 灯光、2D 阴影和 Light Blend Styles 等功能的 2D 渲染器。 您甚至可以扩展 URP 来创建自己的渲染器。

在这里插入图片描述
  另一个 URP 资产用于控制质量、照明、阴影和后期处理的设置。 您可以使用不同的 URP 资产来控制质量设置,本节将进一步介绍该过程。 此设置资产通过渲染器列表链接到渲染器数据资产。 当您创建新的 URP 资产时,设置资产将有一个包含单个项目的渲染器列表 - 同时创建的渲染器数据资产,设置为默认值。 您可以将替代的渲染器数据资产添加到此列表中。

  默认渲染器用于所有相机,包括场景视图。 相机可以通过从渲染器列表中选择另一个渲染器来覆盖默认渲染器。 这可以根据需要通过使用脚本来完成。

  尽管遵循这些步骤来创建 URP Asset,场景或游戏视图中的打开场景仍将使用内置渲染管道。 您必须完成最后一步才能切换到 URP:转到Edit > Project Settings并打开图形面板。 单击 None (Render Pipeline Asset).旁边的小点。 在打开的面板中,选择 UniversalRP。

在这里插入图片描述
在这里插入图片描述
  将弹出有关开关的警告消息,但只需按Continue。

  由于您的项目中还没有内容,因此更改渲染管道几乎是即时的。 您现在可以使用 URP

转换现有项目的场景

  完成上述步骤后,你会发现你美丽的场景突然变成了洋红色。 这是因为 URP 不支持内置渲染管线项目中材质使用的着色器。 幸运的是,有一种方法可以将场景恢复到原始质量。

在这里插入图片描述
转到 Window > Rendering > Render Pipeline Converter。 为 2D 项目选择Convert BuiltIn to 2D (URP),或为 Built-In to URP。 假设您的项目是 3D,您需要选择适当的转换器:

  • 渲染设置:选择此项可创建多个渲染管线设置资产,这些资产将尽可能匹配内置渲染管线质量设置。 这使您可以更有效地测试不同的质量级别。 有关详细信息,请参阅比较内置渲染管道和 URP 质量选项的部分。
  • 材质升级:使用它可以将材质从内置渲染管道转换为 URP。
  • 动画剪辑转换器:这将转换动画剪辑。 它在材料升级转换器完成后运行。
  • 只读材质转换器:这将转换 Unity 项目中包含的预构建的只读材质。 它为项目编制索引并创建临时 .index 文件。 请注意,这可能需要很长时间。
转换自定义着色器

  自定义着色器不使用材质升级转换器进行转换。 着色器和新工具部分概述了将自定义内置渲染管线着色器转换为 URP 的步骤。 使用 Shader Graph 通常是将自定义着色器更新为 URP 的最快方法。

有六种不同的 URP 着色器:

-Universal Render Pipeline/Lit:这种基于物理的渲染 (PBR) 着色器,类似于内置的标准着色器,可用于表示大多数现实生活中的材质。 它支持金属和镜面工作流程的所有标准着色器功能。

  • Universal Render Pipeline/Simple Lit:这使用了 Blinn-Phong 模型,适用于不使用 PBR 工作流程的低端移动设备或游戏
  • Universal Render Pipeline/Unlit:这是一个不使用光照方程的 GPU 性能着色器。
  • Universal Render Pipeline/Terrain/Lit:适合与 Terrain Tools 包一起使用。
  • Universal Render Pipeline/Particles/Lit:此粒子着色器使用 PBR 光照模型。
  • Universal Render Pipeline/Particles/Unlit:这个无光照的粒子着色器在 GPU 上很亮。

  尽管 Simple Lit 替换了许多传统/移动着色器,但性能并不相同。 旧版/移动着色器仅部分评估光照,而 Simple Lit 考虑所有由 URP 资源定义的光照。

  请参阅我们的 URP 文档中的此表,以了解每个 URP 着色器如何映射到其等效的内置渲染管道。

  选择一个或多个上述转换器后,单击初始化转换器。 该项目将被扫描,那些需要转换的资产将被添加到每个转换器面板中。 您可以通过使用为每个项目提供的复选框取消选择项目来限制转换。 在此阶段,单击转换资产以开始转换过程。 完成后,您可能会被要求重新打开编辑器中处于活动状态的场景。
在这里插入图片描述

比较内置渲染管线和 URP 之间的质量选项

  内置渲染管线中有几个默认质量选项可用,从非常低到超。 质量设置会影响场景的保真度,包括纹理分辨率、光照、阴影渲染等。

  转到Edit > Project Settings 并选择Quality面板。 在这里,您可以通过选择当前质量在这些质量选项之间切换。 这将更改场景和游戏视图使用的渲染设置。 您还可以从此面板编辑每个质量选项。

  如果在使用渲染管线转换器并从内置渲染管线切换到 URP 时选择渲染设置选项,则会创建一组尝试匹配内置渲染管线质量选项的 URP 资源。 下面的第一个表显示了内置渲染管线如何映射到低设置的 URP,而第二个表显示了高设置的比较。 在内置渲染管线和 URP 中,设置都是通过“质量”面板选择的。 选择 URP 资产时,可以通过 Inspector 获得 URP 资产设置。 有关详细信息,请参阅 URP 文档。

内置渲染管线到 URP:低设置

在这里插入图片描述
在这里插入图片描述
  * 在 URP 中,像素光计数是使用 Additional Lights > (Per pixel ) > Per Object Limit 处理的。

内置渲染管线到 URP:高设置

在这里插入图片描述
在这里插入图片描述

如何使用质量设置

  质量设置以前在“Project Settings ”对话框的“Quality”面板中处理。 使用 URP 时,设置分为质量面板和每个 URP Asset 的设置。 下表显示了可以找到每个设置的位置。

使用 URP 时的质量设置

在这里插入图片描述
在这里插入图片描述
  如果您在质量选项之间切换,请通过项目设置在质量面板中为渲染管线资源选择质量级别。 请注意,如果未设置质量级别,则渲染管线资源将默认设置为图形面板中的可编写脚本渲染管线资源。 当您尝试调整 URP 资产的质量设置时,这可能会导致一些混乱。 例如,您可能不小心假设在 URP 资源中设置的质量级别是场景和游戏视图当前使用的质量级别。

在这里插入图片描述

修改 URP 资产

  此图像显示了 Inspector 中的 URP 资产及其所有可用设置。 请参阅 URP 文档以了解有关每个设置的更多信息。

注意:如果您启用了 URP 2D 渲染器,则 URP 资源中与 3D 渲染相关的一些选项不会影响您的最终应用或游戏。 2D 渲染器资源可通过Edit > Project Settings > Graphics 在 Scriptable Render Pipeline Settings 下获得。
在这里插入图片描述

将示例项目从内置渲染管道转换为 URP

  Unity 演示项目 Viking Village URP 展示了 URP 功能,包括 Light Probes、Reflection Probes、使用自定义 ScriptableRenderPass 的水特效、通过 Shader Graph 转换的着色器和 URP 后处理。 该项目可在 Asset Store 免费获得。

  在编辑器中打开 Viking Village URP 以按照本节中的步骤进行操作。 首先单击添加到我的资产,将此演示添加到编辑器中可用的包列表中。
在这里插入图片描述
  然后从 Unity Hub 创建一个新的 3D 项目(您不需要使用 URP 模板)。 转到 Window > Package Manager,从 Packages 下拉菜单中选择 My Assets > Viking Village URP,然后单击 Import

在这里插入图片描述
  将出现几条警告消息(见下文)。 第一个警告您导入完整的项目会影响您当前的项目设置,但由于您创建了一个空项目,因此可以安全地继续。 第二个警告提醒您安装或升级某些软件包。 单击默认的蓝色按钮。 这是避免错误照明设置所必需的,因为 URP 默认是线性色彩空间,与默认为伽马色彩空间的内置渲染管线相反。
在这里插入图片描述
下载完成后,将打开如下所示的面板。 确保选中所有内容,然后单击导入。

在这里插入图片描述
  等待所有资产完成导入,然后转到位于 Viking Village > Scenes > The_Viking_Village 的演示。 单击 Window > Package Manager,然后在下拉列表中选择 Unity Registry,然后选择 Universal RP。 将 URP 包更新到 12.x。

在这里插入图片描述
在这里插入图片描述
  通过 Scriptable Render Pipeline Asset 在 Graphics 面板中设置的 URP Asset 名为 Viking Village > Rendering > VikingVillageUniversal。 它是为高端硬件配置的,因此可能会在较旧的硬件上以低帧速率播放。

按照以下步骤测试不同的质量级别:

  1. 通过 Window > Rendering > Render Pipeline Converter 生成一组资源。
  2. 选择 Built-in Render Pipeline to URP 选项,然后选择 Rendering Settings
  3. 单击初始化转换器
  4. 面板中将出现许多设置选项; 单击转换资产以创建 URP 资产。
  5. URP 资产将通过 Project Settings > Quality 面板分配给可用的质量级别。
  6. 最高质量的资产将取代图形面板中的 VikingVillageUniversal。 Viking Village > Rendering > VikingVillageUniversal_ Renderer 利用渲染器功能和水效果。
  7. 要恢复这些,请将上述渲染器添加到渲染器列表并将其设置为质量级别中使用的每个 URP 资源的默认值。 现在您可以在“质量”面板中快速切换质量级别。
  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值