去年年底的时候,团队做过一个用增强现实解决说明和维修指导的解决方案,我在其中负责用户体验设计,这应该算是我从普通的用户体验设计正式转向增强现实设计的第一个案例。而同期,我们根据这个具体的案例,也设计开发了一款面向企业客户的维修指导产品,帮助用户自己来完成从平台端的内容制作到AR眼镜端的呈现。
后面这款产品,团队现在还在持续优化迭代中,感兴趣的话可以访问我们的官网查阅:stARstudio
这篇文章里,我还是以这个案例为范本来总结和探讨。
这是一款尝试型的应用,帮助解决航天卫星设备的说明和维修指导问题,以期降低成本投入。之所以这么久才总结,是因为当时自己对AR设计的理解还有很多不足,不足以撑起这篇文章(其实就是懒)。
航天控制器AR解决方案
硬件设备:Hololens
软件功能:
- 需要识别出指定的真实物体;
- 需要在物体上展示设备说明;
- 需要在物体上播放维修指导;
- 可以进行远程协作沟通;
可以看出,相比起很多传统的UI设计,这份产品的功能并不多而且主线清晰,但是由于涉及到增强现实,在用户体验的设计上,主要有三个和以往设计不一样的问题。
第一个问题:参照物
万物都有相对性,在普通的界面设计里不需要考虑的东西,在增强现实的设计中却是第一个需要考虑的要点。
关于这点,因为当时的自己同样也是新介入,初入手的陌生和不适应感给我的印象很深,而恰好,这款尝试型应用产品的用户也是一样的新手,
所以,为了用户更容易将对真实世界的认知借鉴到增强现实后的世界里,我将整个应用的显示参照点定位于真实世界。
这意味着,用户或者设备的任何运动不会影响到用户界面。如果用户界面是显示在真实的桌面上,那么它就好像这张桌子上放的被子,书本等一样,你不看这张桌子,就看不到它,即使你拿着用于显示此用户界面的设备也一样。
具体到这款应用,即:定义该应用的界面显示是基于具体对象(真实物体)而不动的。
顺便提一句,我们传统的应用界面,比如手机应用或者电脑应用,它的参照物实际上是手机或者电脑。
第二个问题:用户所见界面
在使用AR眼镜进行测试的时候,我发现整个用户界面的最终呈现是由三类界面叠加而成的,包括:虚拟的UI元素,真实的物体或世界,屏幕真正能显示的区域。
为了区别于现在我们一般意义上说的用户界面,我将它称为用户所见界面。
在传统的UI设计中,用户界面=屏幕显示区域=用户所见界面。
在照相、录像或者市面上很多AR应用中,用户界面+真实环境=屏幕显示区域=用户所见界面。
在这个AR实例中,用户所见界面是用户界面与真实环境一起,和屏幕显示区域的共同作用。值得注意的是,这个真实环境和前述所说的真实环境还略微不同,确切的说,前述真实环境=摄像头拍摄的环境,而实例中的真实环境,就是肉眼所见的环境。
嗯,为了更清楚说明,我把用户所见界面以AUI(Augmented UI)代表,传统用户界面为UI,屏幕显示区域为S(screen),摄像头拍摄的真实环境为CE(camera environment),肉眼所见的真实环境为EE(eye enviroment),那么:
传统屏幕应用:UI=S=AUI ;
照相、录像及一般AR应用:UI+CE=S=AUI ;
该实例为代表的增强现实应用:(UI+EE)×S=AUI
理想状况下,我们希望屏幕显示区域至少能包含虚拟UI和其相关的真实物体,但在这个实例中,维修指导实际上是希望用户一边看操作指导一边操作真实对象,所以屏幕所见区域是会小于我们给出的信息范围的。
我们人眼在离得很近的情况下,其实余光也能看到比较宽的区域,但是摄像头所能够展示的区域就有限了,这里涉及到一个技术概念:FOV;虚拟UI其实是投射在屏幕显示区域内的,也就是说,你的眼睛能看到真实物体的左上角,但你却看不到左上角本来有的一块虚拟说明(或者被切了一角)。
第三个问题:识别
从第二个问题可以看出,最后用户所见的界面其实是三类界面的叠加,在这个实例中,由于UI需要和真实物体完美贴合,所以识别的好坏,直接影响了最终AUI的呈现效果。
类似于拍照应用,光线,对焦,用户的拍照水平等都会影响到一张照片最后的效果,而识别也是这样。不一样的是,拍照会影响到的只是最后的效果,而识别会影响到整个应用的后续操作。用户不是为了识别而去识别,识别的最终目的是为了能够更好的说明该物品和指导该物体的维修。
细究最上面的软件功能,识别功能是基石,在它之上,后面三个功能才有作用。如何在用户体验层面上对“识别出指定的真实物体”这一看似完全是功能层面的需求进行设计,就是接下来我考虑的重点。
以过程来说,我将识别分为了四个阶段。
-
准备阶段
在正式开始识别前告知用户,包括识别所需要的环境条件,基本操作知识(保持不到,与被识别物体保持水平等)。为了使用户重视这个阶段,参照物以用户/设备为准(即无论怎么移动界面都在眼前)。
-
识别过程
给出正在识别的状态提示
-
识别困难
需要注意的是,这里没有严格意义上的识别失败,如果一切顺利,真正的识别过程非常快,1-3s即可成功识别。如果没有识别成功,机器会一直处于识别之中,这时候需要人为给出定义,在识别多少秒后判断为识别困难,给出相应提示。
-
识别有误
我在之前的文章里提到过机器的三观,这里就是了。如果机器认为它识别成功了,它会立刻结束识别过程,如果它三观不正,那么你就会看到很诡异的UI了。
这个时候,需要在识别后的界面给出能够重新开始识别的入口。当然,如果够自信,这个按钮可以省略。。。
以上三个问题,在AR设计里其实是有通性的,如何在这些问题中去创造更好的体验,是我一直在思考的方面。
最后,附上此实例的视频地址:https://v.qq.com/x/page/e0791w4tl3x.html
航天通信控制器维修AR解决方案