使用 NVIDIA 虚拟现实捕捉和回放技术

Xsens动作捕捉 2023-05-04 2825

使用 NVIDIA 虚拟现实捕捉和回放技术  第1张


开发者和抢先体验用户现在可以使用 NVIDIA 虚拟现实捕捉和回放(VCR)技术准确捕捉和回放虚拟现实(VR)会话,以进行性能测试、场景故障排除等。


虚拟世界具有无限的潜力,而 VR 内容处理却面临着挑战,尤其是在录制或重现虚拟体验时。不同于现实世界,在虚拟世界中捕捉沉浸式场景并不像使用手机拍摄视频或按下电脑上的录制按钮那么简单。


在 VR 中无法重现相同的体验,而且沉浸式演示中往往会因为相机运动过度而出现妨碍观看的抖动。创建 VR 应用也是麻烦事——开发者在编码、测试和完善工作的过程中需要反复佩戴和脱下头显。此外,所有这些任务都必须采用 1:1 设备连接才能启动并运行 VR 应用。


所有这些原因让 VR 内容录制变得极其耗时和乏味。


Autodesk 高级产品经理 Lukas Faeth 解释说:“我们用在准备硬件和进入 VR 的时间,常常超过了测试或排查问题的时间。NVIDIA VCR SDK 可以帮助测试每次构建之间的性能,使我们无需在 VR 中连续工作数小时。”


Autodesk 汽车设计解决方案专家 Danny Tierney 表示:“ NVIDIA VCR SDK 第一眼看上去就很厉害很酷。在试用后,我更是思如泉涌!只需要加入一点创意,这个工具就会变得非常强大。我现在仍在努力思索在日常工作流程中使用它的无数种方法。在自动测试、培训潜在 VR 用户以及创建 OpenGL VR 会话的高质量 GI 渲染方面,它为我开辟了不少用例。”


更简单、快捷的 VR 视频制作


NVIDIA VCR 最初是用于测试 NVIDIA GPU 的 VR 性能的内部项目。NVIDIA XR 团队在发现新的用例后,继续扩大该功能集并提供给部分合作伙伴,以帮助评估、测试和确定该项目的其他应用。


使用 NVIDIA 虚拟现实捕捉和回放技术  第2张

潜在的 NVIDIA VCR 用例:性能测试、场景故障排查和 VR 视频生成。


借助 NVIDIA VCR,开发者和创作者可以更加轻松地开发 VR 应用、协助终端用户进行质量评估和故障排查并生成高质量的 VR 视频。


NVIDIA VCR 功能包括:


  • 准确、无痛点的 VR 会话回放。这对于性能测试和质量控制特别有用。
  • 缩短佩戴头显的时间。随着开发步骤的减少,用户花在进入和退出 VR 上的时间更少。
  • 在同一个 VR 场景中使用单个 HMD(头戴式显示器)进行多角色录制,同时通过重播录像来模拟协作。


诸如 ESI Group 等早期合作伙伴都在想象如何更加有效地使用 SDK。ESI Group 解决方案营销经理 Eric Kam 表示:“NVIDIA VCR 为沉浸式体验带来了无限可能性。”


“虚拟环境的录制和回放为 VR 会话增加了时间维度”,Eric Kam 指出,除了解决性能测试方面的挑战之外,VCR 经过开发后还可以用于下游工作流程。


NVIDIA VCR 入门


NVIDIA VCR 能够在沉浸式 VR 会话期间,记录带有时间标记的 HMD 输入和控制器输入。然后,用户可以在未连接 HMD 的情况下重播录像以再现会话。此外,用户还可以通过可选的处理步骤来过滤录制的会话,从而清理数据并去除过度的相机运动。


使用 NVIDIA 虚拟现实捕捉和回放技术  第3张

NVIDIA VCR 的 VR 捕捉、过滤和回放工作流程


NVIDIA VCR 的组成部分:


  • 捕捉(Capture)是一个 OpenVR 后台应用,用于存储 HMD 和控制器属性,并将运动和按键记录为追踪数据。
  • 过滤器(Filter)是用于读取和写入录制会话的可选处理步骤。开发者使用 VCR C++ API 分析会话、清理数据或重设 HMD 运动路径的时间。
  • 回放(Replay)使用 OpenVR 驱动程序模拟 HMD 和控制器、读取追踪数据并回放场景中的运动和按键。显示器分辨率和刷新率等硬件属性可以作为 JSON 文件进行编辑。


四个 NVIDIA VCR 用例


1. 使用简单的捕捉和回放工作流程来记录追踪数据并无限次回放。这是验证场景正确性的理想方法,例如在性能测试或质量控制用例中。


2. 在过滤工作流程中,使用运动数据平滑功能来最大程度地减少抖动,制作更专业的 VR 演示视频或教程。


3. 重复并混合 VCR 中捕捉的片段以生成全新的序列。在下面的视频中,相同的片段(字母“H”、“o”、“l”和“e”,以及运动和交互数据)经重新排序后拼出全新的单词。


4. 在 Autodesk VRED 应用中使用 NVIDIA VCR 来捕捉单用户协作示例。在该工作流程中,1 名用户用 1 个 HMD 系统生成了四个独立的 VCR 捕捉片段,然后在多个系统上同时回放这些画面以模拟多用户协作。

The End