〔Part 3〕Oculus Quest手部交互指南之交互设计

查看引用/信息源请点击:映维网

关于实现手部追踪的技巧

映维网 2020年02月27日Oculus日前为开发者带来了“Designing for Hands”设计指南,用以帮助开发者利用Hand Tracking(手部追踪)功能构建体验。团队同时利用一系列的博文来介绍相关的原则技巧和最佳实践。下面映维网进行了相应的整理:

交互

在设计交互时,Oculus已经尝试了多种条件。根据你设计的体验类型,“Interaction Options(交互选项)”页面列出了你可能会遇到的注意事项。“Interaction Primitives(交互原语)”页面则根据Oculus实验的内容列出了最适合特定任务的选项。

1. 交互选项

最佳体验结合了多种交互方法,可为任何给定的任务或活动提供正确的方法。

下面Oculus概述了多个供你参考的选项。

1.1 目标距离

Near-Field Components:这个组件位于手臂触及范围之内。使用直接交互时,空间应保留给最重要的组件或你最频繁交互的组件。

Far-Field Components:这个组件位于手臂触及范围之外。要与它们进行交互,你需要在组件附近使用光线投射或移动到其附近,从而将其带入近场。

注:近场和远场适合一系列的体验。

1.2 交互方法

直接交互:对于直接交互,双手与组件进行交互,你可以伸出手指来“戳按”按钮,或者用手“捏抓”对象。这种方法简单易学,但会将你限制在一臂范围之内。

光线投射:光线投射类似于你所熟悉的Touch控制器交互方法。这种方法可用于近场组件和远场组件。因为无论目标距离如何,它都能允许用户保持中性的身体姿态。

1.3 选择方法

戳按:戳按是一种直接交互,你可以伸出手指并朝对象或组件移动,直到在空间中与它们“碰撞”。但这只能用于近场对象,缺少触觉反馈可能意味着需要指示符和其他反馈进行补偿。

捏抓:捏抓可以与直接交互和光线投射同时使用。瞄准光线或将手移向目标,然后捏抓对象。拇指和食指的触碰感觉可以帮助弥补对象或组件的触觉反馈不足。

注:使用这一方法可以在近场组件和远场组件之间实现更无缝的过渡,这样用户就可以捏抓并与任意距离的目标进行交互。

1.4 手与输出的关系

绝对运动:对于绝对运动,手和输出之间存在1:1的关系。输出可以包括游标,对象和界面元素。例如,手每移动1度,光标就会朝所述方向移动1度。这感觉非常直观,并且能够反映出物理对象的行为方式,但操作起来可能很累,并且常常限制了交互的可能性。

相对运动:对于相对运动,你可以调整手部运动与输出运动之间的距离比。例如,手每移动1度,光标可以朝所述方向移动3度。你可以降低比例以提高精度,或增加比例以提高效率。

注:要获得更高的效率,你可以使用可变比率。手移动得越快,输出的移动速度将呈指数级增长。另一种选择是基于加速度的比率,类似于使用遥感。如果用户将手保持在最左边位置并维持在那里,则对象将继续沿所述方向移动。但是,将对象放置在所需位置方面将变得更加困难,所以不建议需要精确放置目标精的体验中。

1. 5系统控制选项

抽象手势:抽象手势是特定的手势动作,可用于导航系统和操纵对象。你可能已经从科幻影视作品中看过未来版本。尽管它们对于提供抽象功能非常有用,但抽象手势存在一定的缺点:

  1. 抽象手势难以学习,记忆和跟踪
  2. 选择用户不会意外执行的手势可能非常困难,并可能会导致意外触发
  3. 请务必注意手势在不同文化背景中的含义,以免出现不当或亵渎行为。

我们建议你谨慎使用抽象手势,并转而应使用模拟控件来操纵大多数虚拟界面和对象及与之交互。

Oculus的“System Gesture(系统手势)”是团队在系统中实现的唯一抽象手势。

模拟控制:使用模拟控制时,手部运动对输出有明显的影响。这会令交互感觉更为敏感。我们很容易理解:当你向右移动手部时,光标,对象或元素就会向右移动。光线投射和直接交互都是模拟控制的例子。

所述的交互选项根据情况以不同的方式一起工作。例如,如果目标对象在远场中,则唯一可用的交互方法是光线投射(除非将对象带入近场)。或者,对用于与近场对象的直接戳按交互,手部-输出关系只有唯一的选择。

下表列出了适用于不同情况的选项。

2. 交互原语

正如简介页面所述,双手必须允许3个交互原语或基本任务成为有效的输入方式。

根据你的体验,上述某些交互选项可能会比其他更为有效。

2.1 选择

你可以选择两种类型:2D面板元素和3D对象。戳按对按钮或面板选择效果很好。但如果你要拾取虚拟对象,Oculus发现拇指和中指的捏抓效果很好,因为它可以补偿虚拟对象无法触觉反馈的这一事实。你既可以用直接交互,也可以选择光线投射。

2.2 移动

如果目标在一臂范围之内,则可以直接移动目标。光线投射可以在整个运动过程中帮助身体保持中性的姿态。

绝对运动可以让你感觉更加自然和轻松,因为这类似于你在现实生活中移动和放置对象的方式。为了获得更高的效率,你可以使用相对运动轻松地移动任意距离的对象或将其放置在精确的位置。

2.3 旋转

如果你正在寻找一种直观的旋转方法,同时又不太担心精度,则可以令对象在握持时跟随用户手部旋转。

一种更精确的旋转方法是将对象附接到2D表面,如桌子或墙壁。这样可以限制对象的自由度,使其只能在一个轴上旋转,从而更易于操作。如果是2D对象,则可以通过使对象自动旋转并面对用户,从而以类似的方式限制其自由度。

2.4 调整大小

均匀缩放是调整对象大小的最简单方法,而不说尝试垂直或水平拉伸。

与旋转类似,一种简单的尺寸调整方法是将对象附接到二维表面,并使其自行对齐和缩放。但这限制了用户的自由度,因为对象的大小是根据表面的大小自动确定。

要定义大小,你可以用两只手进行调整。你可以用一只手捏抓对象,然后另一只手拉伸或压缩。但Oculus团队发现有存在问题,因为不是人人都拥有一双灵巧的双手,或者第二只手可能已经占用。另外,这种方法增加了双手交叉的可能性,从而导致遮挡。

手柄:另一种操作方法是将手柄附加到对象身上。这提供了分别控制移动,旋转和调整大小的单独手柄。用户捏抓(直接交互或通过光线投射)以选择所需的控件,然后执行交互。

这允许用户轻松地操纵对象,不用担心对象的大小或距离如何。分开的移动,旋转和缩放同时可以支持你精确控制每个方面,并允许用户完善对象的位置并更改其旋转,无需在空间中四处移动。但是,必须分别执行每个操作任务相当繁琐,尤其是不需要这种精度的情况下。

 

本文链接https://news.nweon.com/72294
转载须知:转载摘编需注明来源映维网并保留本文链接
入行必读:腾讯可以向Facebook学习什么

更多阅读推荐......

资讯