XR 中的手

VR 中或通过 MR 呈现的真实环境中,与三维场景交互时,手用于提供手势,以及通过呈现更自然的感觉来提供更逼真的体验。

手势

仅 Varjo XR-3 支持。

此部分提供在与数字设计交互时支持使用的 VRED 手势。当您使用食指指尖点击模型的某些部分以启动触摸事件、从 xR 主页菜单选择工具或与 HTML 5 HMI 屏幕交互时,系统会跟踪您的手部移动。使用这些手势可以浏览场景,而无需使用控制器。

重要信息:

食指与菜单中的工具之间必须成一个小的角度才能触发它。

在 VR 中触发工具

如果食指垂直,VRED 的传感器在检测动作时可能会出现问题。在 2022.3 版中,针对食指 VR 交互实现了新的碰撞模型,该模型使用改进的传感器角度和位置。

注意:

虚拟手将自动调整以匹配您的真手。

xR 主页菜单

xR 主页菜单

有关 xR 主页菜单及其工具的信息,请参见 xR 主页菜单

传送

要进行传送,您需要启动传送器,确定弧和箭头方向,然后跳转到新位置。完成后,终止传送器。

启动和终止传送

要启动和终止传送,请使用相同手势。

使用一只手,点击另一只手的手背。这将从被点击的手启动传送。现在确定弧方向传送。重复此手势可终止传送器。

启动传送

传送方向

显示传送弧时,旋转腕部以确定传送器方向。现在传送

传送方向

传送

在手部当前未显示传送弧时,将食指与拇指捏在一起。这将接受传送弧位置和方向,并执行传送。完成后,终止传送以退出该工具。

传送

有关传送的信息,请参见传送

激光指针

要使用激光指针,您需要启动、执行然后终止它。

启动和终止激光指针

要启动和终止激光指针,请使用相同手势。

使拇指、食指和中指指向外,并使手掌朝向摄影机。现在,使用激光指针指向对象或触发与场景内容的交互。重复此手势可终止激光指针。

启动和终止激光指针

使用激光指针

使用食指指向场景内容。

使用激光指针进行指向

将食指与拇指捏在一起以触发与场景内容的交互,例如从 xR 主页菜单中选择工具、激活点击传感器或与 HTML 5 HMI 屏幕交互。完成后,终止激光指针以退出该工具。

使用激光指针

VR 中的手

VR VRED 随附了一组标准手,通过它们可以使用具有预蒙皮顶点的关节/骨骼来表示手。这样,两个手势之间的过渡就会更加平滑。手势由特定于 HMD 的控制器设置驱动。

手使用 X 射线材质来改善体验。

VR 手

要进入 VR,请在 xR 主页菜单中选择 VRVR 功能)。

在 VR 中使用手

激活 Oculus Rift 或 OpenVR 模式时,每个受跟踪的控制器都会显示一只手。

注意:

VRED 使用 OpenVR 1.12.5 SDK。

您可以使用它与场景中的 Web 引擎点击传感器交互。交互时只能使用食指。当手指接触可交互的几何体时,该几何体上的 Web 引擎和点击传感器即会模拟按下/移动/释放鼠标左键的操作。

结合使用脚本和 vrOpenVRController 时,手将自动消失。您可以通过 controller.setVisualizationMode(Visualization_Hand) 再次启用它们。

例如,与场景中的点击传感器和 Web 引擎进行交互:

如何使节点可交互

默认情况下,场景中的节点是不可交互的。您需要使用 Python 命令 setNodeInteractableInVR(node, True) 将要与之交互的所有节点设置为“可交互”。有关详细信息,请查看 Python 文档(“帮助”>“Python 文档”)。在“脚本编辑器”中输入命令,然后按“运行”。 setNodeInteractableInVR 命令并非永久性的,每次加载场景时都需要执行该命令。建议您使用脚本保存场景,以便在下次打开场景时节点处于可交互状态。

VR 手势

除了使用手指和手来按下和触摸 HTC VIVE 或 Oculus Touch 控制器上的按钮之外,还可以使用它们与其他人进行通信。

可使用以下手势:

提示:

如果您有 Varjo XR-3,则可以使用手势与您的数字设计进行交互。请参见手势

VR 手自定义

使用 Python 脚本和 HTML5 创建自定义设置。您可以在 VRED 示例文件夹 (C:\\ProgramData\\Autodesk\\VREDPro-11.0\\Examples) 中找到脚本文件。

下面是一些已添加的脚本:

MR 中的手

当前,MR 仅支持 Varjo XR HMD。

MR 在 MR(混合现实)中,VRED 将 VR X 射线材质的手替换为您自己的手。

MR 中的手

要进入 MR,请在 xR 主页菜单中选择 MRMR 功能)。

请注意,MR 中 XR-1XR-3 支持的功能存在差异。

使用 Python 连接手部跟踪器

仅适用于 Varjo XR-3 和 Varjo VR-3 用户。

要查看如何使用 Python 连接手部跟踪,请选择“文件”>“打开示例”,然后导航到 vr 文件夹,您可以在其中找到 externalHandTracking.py。这提供了如何设置手部跟踪的示例。

返回的对象类型为 vrdTrackedHand

在 VR 中使用跟踪的手

仅适用于 Varjo XR-3 和 Varjo VR-3 用户。

使用“虚拟现实”首选项可以设置 VR 中手部跟踪的默认行为。选择 Varjo 集成 Ultraleap 以在 VR 和 MR 中进行手部跟踪,或选择自定义以使用其他手部跟踪设备。要调整跟踪的手和 VR 中渲染的手之间的任何偏移,请使用平移偏移旋转偏移

为其他设备设置手部跟踪

对于“自定义跟踪器”选项,必须向 VRED 的 Python 界面提供所有跟踪数据。如何执行此操作可能因设备而异;但是,如果您可以通过 Python 脚本访问跟踪数据,则需将数据设置为所用方法返回的 vrdTrackedHand 对象。这需要跟踪的手和/或不同手指关节的变换数据(有关该操作的工作方式,请参见 externalHandTracking.py 示例文件)。

要进行测试,请设置相应的首选项,加载脚本,然后进入 VR。您可能必须通过更改手和/或关节变换的值来修改脚本,以了解所有内容的工作方式。

手部深度估算

当前,MR 仅支持 Varjo XR HMD。

“手部深度估算”工具 在混合现实视频中检测您的真手,并在虚拟对象前面显示它们(如果它们比该对象更近)。禁用后,从 VRED 进行的渲染将始终遮挡真手,即使手比渲染的对象更近也是如此。

此选项位于 xR 主页菜单中。要设置此选项的默认行为,请访问“虚拟现实”首选项 >“HMD”选项卡 >“Varjo”部分

“手部深度估算”已禁用 “手部深度估算”已启用
“手部深度估算”已禁用 “手部深度估算”已启用

在混合现实中显示手

当前,MR 仅支持 Varjo XR HMD。

在混合现实中,使用“手部深度估算”工具显示手。

  1. 佩戴支持 MR 的已连接 Varjo HMD 后,在 VRED 中选择“视图”>“显示”>“Varjo HMD”。

  2. 按控制器上的“菜单”按钮以访问 xR 主页菜单。

    “手部深度估算”已禁用

  3. “手部深度估算”图标 以在 MR 中查看真手。