配置 Universal Render Pipeline (URP)¶
EasyAR 支持的 URP 版本¶
Universal Render Pipeline (URP) 7.0.0 或更新版本是支持的。可以查看 Getting started with URP 来了解在Unity中使用URP的方法。
注意
关于Unity 6 URP 17+ render graph支持的声明
虽然EasyAR已经支持Unity 6 URP 17+ render graph,但在Unity那边仍有未解决的问题。因此,我们仍然建议在遇到异常情形时使用Unity提供的URP兼容模式。
Unity 6000.0.32f1 render graph(兼容模式下运行正常)中的已知问题包括但不限于:
[未解决] 当你从EasyAR获取相机纹理(类似 ImageTracking_Coloring3D 及 Workflow_FrameSource_CameraDevice 样例中的使用),在iOS/Mac设备上可以观察到视觉故障和伪影。我们已经在纯Unity包中复现该问题并报告给了Unity: Glitches on iOS with AR Camera Image Rendering (URP 17 render graph) 。问题进展请关注 Unity Issue UUM-87787 更新以及Unity未来版本的发布日志。(EasyAR中有 部分缓解措施 ,默认开启)
[未解决] 当你从EasyAR获取相机纹理(类似 ImageTracking_Coloring3D 及 Workflow_FrameSource_CameraDevice 样例中的使用),并设置Render Scale为非1(类似Unity的
Mobile_RPAsset.asset
模板中那样),在iOS/Mac设备上可以观察到黑屏。[EasyAR中已绕过(默认开启)] Windows DX11上相机画面会让场景中的物体渲染效果不可预测。
建议在Unity的问题跟踪页面确认问题的更新,并向Unity直接反馈。
导入 URP Unity Package¶
如果工程中没有URP的package,可以使用 Unity Package Manager 导入,
创建 URP 渲染管线资产¶
请注意,不同URP版本配置不同,请参考官方URP文档,本文档说明针对URP 11。
如果你的工程是使用 URP Project Template 创建的,或工程中已经存在 UniversalRenderPipelineAsset 和 UniversalRenderPipelineAsset_Renderer (Pipeline Asset (Forward Renderer)) ,可以跳过这一步。
在 Project
窗口中,在某个文件夹中右键点击并选择 Create > Rendering > Universal Render Pipeline > Pipeline Asset (Forward Renderer)
来创建管线资产,
这会在文件夹中创建两个资产文件,
配置 URP 以使用EasyAR功能¶
请注意,不同URP版本配置不同,请参考官方URP文档,本文档说明针对URP 11。
选择 Forward Renderer 资产,在Renderer Features列表中添加一个 EasyARCameraImageRendererFeature 。如果你的工程创建自 URP Project Template ,这个文件位于工程 Assets
目录的 Settings
文件夹中。
在 Project Settings
窗口中选择 Graphics
(菜单: Edit > Project Settings,并选择Graphics),然后选择 Scriptable Render Pipeline Settings 为 UniversalRenderPipelineAsset
。
在部分URP版本中,还需要需要在 Project Settings
窗口中选择 Quality
进行配置选择 Render Pipeline Asset 为 UniversalRenderPipelineAsset
(注意不同设备可能使用不同的Level,它们都需要配置)。
如果你在使用EasyAR的样例或在转换一个现有工程,一定要根据 Upgrading your Shaders 的说明来升级样例及其它资产。可以打开菜单 Edit > Render Pipeline > Universal Render Pipeline
, 并根据需求选择 Upgrade Project Materials to URP Materials
或 Upgrade Selected Materials to URP Materials
。
在部分URP版本中,你需要使用不同的菜单工具进行转换,请参考URP官方文档。