苹果 AR 的人机界面设计规范

作者:michitang

前言

现在应用可以使用苹果的AR技术——ARKit,将有真实感的虚拟物体与现实世界无缝衔接,给用户带来身临其境、有参与感的体验。在AR app里,将3D的虚拟物体叠加到通过摄像头实时拍摄的真实环境中,制造出虚拟物体真实存在的错觉。用户可以通过改变设备的位置,从不同角度来探索虚拟物体,如果设计得当,也可以通过手势或者动作来与虚拟物体互动。

设计有参与感的体验

使用全屏让用户参与其中:尽可能使用更多的屏幕空间来呈现物理世界和app里的虚拟物体。避免过于杂乱的操作和信息出现在界面里,影响临场感。

构建仿真物体时要有说服力:不是所有的AR体验都需要仿真物体。但如果需要用到仿真物体,就需要把在这个物体在真实世界里的相关元素也设计进去。为了获得最佳表现,需要为3D物体设计逼真的材质,使用ARKit提供的信息把物体放到现实世界的平面上,并且缩放到适当的比例。同时,需要在虚拟物体上投射环境光,在现实空间里投射出物体的阴影。当相机的位置发生变化的时候,需要实时刷新视效。

将物理限制考虑在内:一定要记住,用户可能会在非AR最佳体验的环境里使用你们的app。例如,他们可能在一个没有多大的移动空间,或者没有足够大的平整的平面的地方打开你们的app。要提前考虑那些会出现问题的场景,清晰地向用户传达要求或预期。可以考虑在不同环境下,给用户提供不同的功能。

要考虑用户的舒适度:人处在某个距离、保持某个角度长时间持握设备,会产生疲劳。要考虑用户持握设备使用app时,仍能获得愉快的体验。比如,你可以默认设置成,把物体放在一个不需要用户靠近的距离。做游戏的时候可以把每个关卡设计得短一些,多加入一些短时间的休息。

如果你的app鼓励用户做出一些动作,需要渐进的引导:例如,在一个游戏刚开始的时候,不能让用户大步移动来躲避虚拟的投射物。需要给他们一些时间来适应这种体验,然后逐步引导他们。 要考虑用户的安全:当用户所处的环境里有很多人或物体的时候,太频繁地让用户移动,会带来潜在的危险。要考虑用户可以安全地使用app。例如,游戏设计时需要避免大幅度的动作,或要求用户突然地做出动作。

使用音频或触感来提升临场感:在虚拟物体和物理表面或其他虚拟物体发生了接触时,使用音效或者震动可以提供很好的反馈。在一个身临其境的游戏中,使用背景音乐也可以很好的把用户带入到虚拟的世界里。相关指南可以看音频触觉反馈部分。

尽可能在上下文中提供线索:例如,在可以旋转的物体周围放一个3D旋转示意的箭头,这要比单纯的文字提示更直观。但在表面检测完成之前,或是用户对上下文提示没有进一步操作时,文字提示还是有必要的。

如果一定要使用文字说明,请使用容易理解的文案:AR是一个前卫的概念,容易让一些用户退缩。为了让用户更容易接受,要避免使用太过技术性的、面向开发的词汇,例如ARKit、现实检测、追踪。而要用大部分用户可以理解的友善的、对话型的词汇。

例如,可以使用:

“无法找到表面。可以尝试走到一边,或挪动一下手机的位置。” “点击要放置xx物体的位置” “试一试打开灯光,或是来回走动一下。” “试一下慢一点移动你的手机”

不要使用:

“无法找到平面,调整跟踪。” “点击平面来定位物体” “功能缺陷” “检测到运动过频”

避免打断AR体验的不必要的操作:每一次用户退出或重新进入AR的时候,都会重新检测环境和表面,此时手机和摄像头的位置很可能发生过改变,会导致之前放置的物体会被移位,甚至可能不再出现在平面上了。为了避免这种问题,要让用户可以在不退出AR的情况下,也能调节物体、设置。例如,用户把想购买的椅子放进房间时,他们可能会想试一试其他面料的选项,可以把选项的调整设计在AR环节中。

进入增强现实

在初始化的时候需要告知用户:每次你的app进入AR时,都会进行初始化,此时会对环境进行评估,大概需要几秒的时间。为了减少用户的困惑,加快初始化进程,可以向用户展示初始化正在进行的事项,鼓励用户探索他们周围的环境,或是去寻找实物表面。

放置虚拟物体

提示用户定位表面,以及放置物体的时机:当进入了“表面定位模式”,可以用视觉标识来传达。例如,在屏幕中间放一个梯形框,可以帮助用户了解到此时他们需要找一个水平面。当表面已经选中时,要变换一下提示的图标,来告诉用户“现在可以放置物体”了。设计视觉标识也是app设计的一部分。

用户放置物体时,要予以恰当的反馈:在表面检测时(时间非常短),精度会逐步提高。如果此时用户点击屏幕来放置物体,要尽可能使用已获得的信息尽快放置物体。一旦表面检测完成,再巧妙地优化物体的位置。如果一个物体放置的位置超出了检测到的表面,就需要将物体轻轻地推回表面上。

避免将物体对齐到检测出的表面边缘:在AR中,表面的边缘是近似的,进一步分析用户环境之后,可能会发生改变。

与虚拟物体互动

直接控制物体,比操作多个按钮要好:通过点屏幕上的物体直接发生互动,会带来更强的临场感,要比在屏幕的不同区域,操作多个独立的按钮要好。不过要记住的是,当用户在移动的时候,直接控制物体会变得难以操作。

通过标准、用户熟悉的手势让用户与虚拟物体直接互动:例如,可以考虑使用单指拖拽物体,使用两指旋转物体。更多相关的规范可以参考“手势”。

一言以概之,交互要简单:轻触手势本质上是二维的,但在AR体验中涉及到三维的真实世界。可以参考以下几点来简化用户和虚拟物体互动的交互。

当操作手势接近可交互的虚拟物体时,要予以反馈:对用户来说,要精确的点击一些比较小、薄、放在较远距离的物体上的某一点是很难的。当你的app检测到,在接近交互区域有手势操作时,就可以假设用户想要完成这个互动。

要考虑是否有必要让用户缩放物体:通常来说,没有固定尺寸的玩具或者是游戏角色,用户可能希望可以看到它放大或是缩小的状态,提供缩放功能也显得比较合理。而对于一个在现实世界有相对尺寸的物体,比如说固定尺寸的家具,缩放功能就没有必要了。缩放不是一个调节物体距离的补救措施,把物体放大并不一定能让它看起来离用户更近,可能只会让用户感觉这是一个离自己较远的较大的物体。

要小心手势冲突:例如,两指的捏的手势,可能和用两指旋转的手势很接近。如果要设计这样类似的手势操作,一定要提前测试,确保操作起来不会有冲突。

确保虚拟物体的变化要顺滑:物体缩放、旋转、移动到某一点的过程,不能是跳跃式的,需要平滑地过渡。

探索更有临场感的交互方式:在AR中,手势不是唯一能和虚拟物体产生互动的方式。你的app也可以考虑运用其他细节来让内容变得更生动。例如,一个游戏角色可以在他走向用户的时候把头转向用户。

问题处理

允许用户重置:不要强迫用户去等待客观条件具备,或是在放置物体有困难的时候,也要他们先完成放置。给他们一个重新开始的选择,看看是不是可以获得更好的结果。

发生问题时,提示用户可能的解决办法:“环境分析”和“表面识别”有时可能因为一些原因无法完成。比如说光线不够好,平面上的反光太强,平面没有足够的细节,或摄像头移动得太快。如果你的app可以检测到这些问题,或者当表面检测太慢时,可以给到用户解决办法。

问题——建议的解决办法

检测到功能缺陷——试一试打开灯光,或是来回走动一下。 检测到运动过频——试一下慢一点移动你的手机 表面检测时间过长——试一试来回走动一下,打开灯光,确保你的手机对准有纹理的表面。

只为硬件条件具备的设备提供AR功能:如果你的app的核心功能就是AR,让你的app仅支持可以支持ARKit的设备。如果在你的app里,AR功能不是核心功能——比如说“有商品照片的家具目录,支持用户在AR场景里看商品”,就需要避免让一个不支持的设备进入AR模块时卡在报错环节。如果设备不支持ARKit,最好一开始就不对用户展示AR功能入口。

更多

开发指南请参阅ARKit

苹果官方原文地址: https://developer.apple.com/ios/human-interface-guidelines/technologies/augmented-reality/

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏钱塘大数据

【钱塘号】用R语言爬取美国总统的twitte进行数据分析

Twitter是一个流行的社交网络,这里有大量的数据等着我们分析。Twitter R包是对twitter数据进行文本挖掘的好工具。 本文是关于如何使用Twitt...

3787
来自专栏Crossin的编程教室

用程序帮你炒股(2)

6月26日A股大跌,据估算市值蒸发4.5万亿。当日的领涨板块,你们感受一下: 银行 -4.66% 食品饮料 -6.94% 建筑装饰 -7.14% 有入市的...

2627
来自专栏机器学习算法全栈工程师

免费使用谷歌GPU资源训练自己的深度模型

作者:刘威威 编辑:黄俊嘉 注:本文编译自medium,原英文链接:https://medium.com/@nick...

4828
来自专栏AI科技评论

独家丨基于规则和检索的聊天机器人引擎

AI 科技评论按:本文作者王海良,呤呤英语开发总监,北京 JavaScript/Node.js 开发者社区的运营者,曾就职 IBM 创新中心。本文为系列文章第二...

3728
来自专栏知晓程序

想和外国人谈笑风生?用这 5 款小程序拿下英语!

1403
来自专栏AILearning

scikit-learn(sklearn) 0.19 中文文档的翻译计划,邀请你的加入 | ApacheCN

scikit-learn(sklearn)官方地址: http://scikit-learn.org/ * 简单高效的数据挖掘和数据分析工具  * ...

1666
来自专栏腾讯大数据可视化设计团队的专栏

遇见大数据可视化 : 【云图】让数据可见

今天,即使你不熟悉云计算,大数据是什么。但是这些词汇已经充斥在我们的身边。我们被超负荷的信息和过多的数据折磨。谁没被定义成数字?

1.6K1
来自专栏BestSDK

Cloudsight推出图像识别API,免费开放给教育机构

如果自己研发做图像识别的成本比较高,尤其是在没有一个很好的硬件设施(GPU)的情况下,还是通过API比较合适。 ? 计算机科学学位的技术往往要落后于现实。许多学...

2953
来自专栏互联网杂技

曾经我是一个只会Excel的数据分析师,直到我遇到了……

算法与数据结构 我是一个数据分析师。 准确来说我是一个当年只会excel数据透视表,就天不怕地不怕地来当数据分析师的人。当年的某一天,我的老板Q我: 小刘啊,我...

3957
来自专栏ATYUN订阅号

上辈子是运动员?一款人脸识别AI应用检测你与哪个世界杯运动员长得最像

挪威新闻机构VG团队开发了一款全新的AI工具,使用面部识别技术,来查找与你的长相最为相似的足球运动员。

947

扫码关注云+社区