用户引导优化
浅谈人机交互
用户界面(User Interface)
用户界面(User Interface,简称UI )是指对软件的人机交互、操作逻辑、界面美观的整体设计。好的UI设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由、充分体现软件的定位和特点。
用户体验(User Experience)
用户体验(User Experience,简称UX或UE)是一种纯主观的在用户使用一个产品(服务)的过程中建立起来的心理感受。它是指用户使用一个产品时的全部体验。他们的印象和感觉,是否成功,是否享受,是否还想再来使用。
举例:如何描述平面检测

ARKit 提供的 UX 方案
AR 引导视图 [AR Coaching View] 遮罩 [Overlays]

官方AR应用示例:

注:遗憾的是,该AR动画引导流程内置在 iOS 12+ 系统中,因此ARFoundation作为跨平台AR开发框架,目前未集成在框架中。
ARFoundation 提供的 UX 方案
将 ARFoundation 官方示例导入项目,并将 ScreenSpaceUI 复制到自己项目的场景中即可。


AR经典的交互场景
- 放大缩小场景中的模型
- AR测量
- 平面交互升级为3维交互
人机交互准则
1. 使用引导动画帮助用户入门
当用户需要扫描地面或者是垂直的墙面的时候,最好先暂时隐藏其他不必要的操作界面,先帮助用户定位平面并且放置虚拟物体。

2. 设备不可用提示
当用户使用不支持ARKit的苹果设备打开应用时,应该及时提示,否则会给用户带来困惑,严重影响体验。
3. 适度使用持久按钮和菜单
当需要为用户提供功能菜单的时候,可以考虑在屏幕上使用间接控件,这样用户可以直接使用,无需移动设备在场景里到处寻找按钮。
另外,一些控件的颜色可以考虑设置为半透明,避免遮挡场景。

4. 引导用户找到虚拟物体
当用户找不到场景中的虚拟物体,又不想重新开始的的时候,可以提供箭头、指南针等虚拟引导工具,帮助用户找到当前场景中的AR物体。

5. 允许用户重置场景、初始化平面
当用户想要重新开始扫描平面或放置虚拟物体的时候,我们需要给用户提供重新开始的按钮。

6. 允许用户直接操作物体
简单的放大、缩小、平移和旋转,都可以直接用屏幕手势来实现,这样操作起来更加灵活便利,并且最好在用户操作的时候给出适当的响应动画,让用户意识到这样操作是正确的。

7. 使用三维提示
在AR应用中,绝大多数情况下,生动的三维提示会比传统的二维提示方式带来更好的用户体验。

8. 在支持AR的选择界面中使用AR标记
当想要在选择界面告诉用户可以使用AR模式的时候,可以通过AR标记来表达。

9. 创造舒适的增强现实体验
- 稳定60fps (帧率),保证画面中的物体不会出现跳跃或者闪烁
- 实现光照估计
- 为有光滑表面的虚拟物体添加环境纹理实现反光效果
- 正确的遮挡关系,呈现合理的视觉效果
- 添加刚体物理效果
- 尽可能的让相机/视场角覆盖整个设备可见的画面

10. 优秀AR应用展示
注:本ARKit系列博客是根据 【子羽老师】发布在腾讯课堂的ARKit视觉风暴课程学习整理总结:https://ke.qq.com/course/575145