Unreal 中的 QR 码

如果不熟悉如何使用 QR 码,可能需要查看 QR 码跟踪概述

HoloLens 2 可以使用网络摄像头查看世界空间中的 QR 码,这会在每个代码的实际位置将其呈现为全息影像。 HoloLens 2 还可以在多个设备上的同一位置呈现全息影像,以打造共享体验。 请确保遵循将 QR 码添加到应用程序的最佳做法:

  • 安静区域
  • 照明和背景
  • 大小、距离和角度位置

将 QR 码置于应用中时,请特别注意环境注意事项。 可以在 QR 码跟踪概述文档中,查找有关每个主题的详细信息以及下载所需 NuGet 包的说明。

注意

HoloLens 当前只能跟踪 QR 码这种图像类型,HoloLens 上尚不支持 Unreal 的 UARTrackedImage 模块。 如需跟踪自定义图像,可访问设备的网络摄像头,并使用第三方图像识别库来处理图像。

启用 QR 检测

由于 HoloLens 2 需要使用网络摄像头来查看 QR 码,因此需要在项目设置中将其启用:

  • 打开“编辑”>“项目设置”,滚动到“平台”部分,然后选择“HoloLens”。
    • 展开“功能”部分,选中“网络摄像头”。  
  • 还需要通过添加 ARSessionConfig 资产来选择使用 QR 码跟踪。

如果你使用的是 UE 4.26,则建议使用以下蓝图设置来添加一个短暂延迟时间,因为必须在启动 AR 会话后初始化 QR 码跟踪:

Blueprint of the Toggle ARCapture function with delay

设置已跟踪的 QR 码

QR 码通过 Unreal 的 AR 跟踪几何系统显示为跟踪图像。 若要实现此操作,需执行以下操作:

  1. 创建 Actor 蓝图,并添加 ARTrackableNotify 组件:

QR AR Trackable Notify

  1. 选择“ARTrackableNotify”,然后在“详细信息”面板中展开“事件”部分 :

QR Events

  1. 单击“关于添加跟踪几何”旁的 +,将节点添加到事件图中。

Add node to On Add Tracked Geometry

使用已跟踪的 QR 码

下图中的事件图显示了 OnUpdateTrackedImage 事件,该事件用于呈现 QR 码中心的一个点并输出其数据。

以下是具体过程:

  1. 首先,将跟踪图像转换为 ARTrackedQRCode,以检查当前更新的图像是否为 QR 码。
  2. 编码数据是从 QRCode 变量中检索的。 可以从 GetLocalToWorldTransform 位置获取左上方的 QR 码,并在 GetEstimateSize 中获取维度。

还可以在代码中获取 QR 码的坐标系统

查找唯一 ID

每个 QR 码都具有一个唯一的 GUID ID,可以通过以下方式查找:

  • 拖放“作为 ARTracked QRCode”引脚并搜索“获取唯一 ID”。

QR Guid

下一个开发检查点

如果你遵循我们规划的 Unreal 开发检查点历程,则可以继续下一主题:

或直接跳到在设备或模拟器上部署应用:

你可以随时返回到 Unreal 开发检查点

另请参阅