课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
目前大多数的app软件都是通过java编程语言等传统技术开发的软件,那么,我们应该如何开发AR环境下的软件应用呢?
今天,我们就一起来了解一下,在AR增强现实技术下的软件开发方法都有哪些。
利用全屏提升参与感。将尽可能多的屏幕空间用于现实图景与虚拟物体的呈现,不要让沉浸式体验由于繁杂的界面控件和信息而遭到破坏。
创造生动逼真的虚拟物体。并不是所有的ARapp都需要栩栩如生的虚拟体验;但对于那些需要的来说,必须将虚拟物体打造得尽可能生动逼真,以融入周围的真实环境。要获取最佳的视觉体验,你需要设计出精细拟真的3D素材,利用ARKit提供的数据信息将虚拟物体放置在真实环境的表面,同时确保虚拟物体拥有恰当的比例,可以表现出真实环境光线的反射效果,并能在环境表面形成投影,而且要随着摄像头位置的变化而动态更新视觉效果。
考虑物理局限性。要记住,人们很可能会在不利于构造AR体验的环境当中试图使用你的app,譬如那些较难四处移动的狭小空间,或是缺少平面区域的地方。预先考虑到这些可能带来潜在问题的场景,并事先向用户阐明产品运行方式对于环境的需求,同时考虑针对不同的使用环境提供差异化的功能。
考虑用户的舒适度。手持设备保持着特定的距离和角度进行使用,超过一段时间便会使人感到疲劳。谨记,人们在使用你的app时必须保持特定的姿态,因此,要在提供愉悦体验的同时避免引发人们的不适感。例如,你可以将虚拟物体默认放置在恰当的位置,减少人们将其手动移近的必要性;对于游戏来说,要尽可能保持关卡的简短,并在进程当中穿插提供短暂的休息时间。
如果你的app鼓励人们通过肢体动作完成互动,那么要以渐进的方式进行引导。以游戏为例,不要让用户在刚刚上手时就必须通过复杂的肢体动作与虚拟物体互动;应该首先给人们一些时间去熟悉AR的体验模式,再逐渐提升互动机制的复杂性。
注意用户的人身安全。人们在使用ARapp时,如果附近有其他人或物体,那么过多的肢体动作可能会带来潜在的危险。要充分考虑如何确保操作的安全性。例如对于一款游戏来说,要避免将范围较大或突然性较高的肢体动作作为互动方式。
通过音效与触感反馈来增强沉浸体验。当虚拟物体与实体平面或其他虚拟元素产生触碰时,通过音效与震动触感提供交互反馈是非常有效的方式。在沉浸式的游戏当中,背景音乐也有助于塑造身临其境的虚拟体验。
提供情境化的操作提示。通过环绕在虚拟物体周围的3D旋转指示符来提示其操作方式,会比传统的文字说明形式更加符合直觉。不过在某些特定的情况下,譬如当系统正在探测实体平面,或是用户没有对情境化的操作提示给予响应的时候,文字浮层形式的提示可能更加有效。
如果必须使用文字提示,要确保其通俗易懂。一部分用户可能会对AR这样的高级技术概念感到恐惧。为了使文字内容更加通俗易懂,要避免使用技术术语,例如“ARKit”、“环境探测”、“追踪”一类,取而代之的是通过更友好、更具对话性的文案使多数用户理解概念含义。下面是一些话术风格对比:
恰当:“无法找到合适的平面,请试着向侧面移动,或调整手机的位置。”
不恰当:“无法探测到水平表面。调整追踪。”
恰当:“轻点某处,将[物体名]放在上面。”
不恰当:“轻点水平表面,锚定对象。”
恰当:“尝试调亮灯光,并稍作移动。”
不恰当:“特征不足。”
恰当:“尝试慢慢移动你的手机。”
不恰当:“探测到过快的运动速度。”
避免不必要的体验中断。用户每次退出并再次进入AR模式,环境分析与水平面探测都会被重新执行一次,而且手机与摄像头的位置通常会发生改变,致使之前已经被放置好的虚拟物体被重新定位;有时它们看上去甚至会脱离现实世界的表面。避免这种中断的方式之一,就是尽可能让人们在不必离开AR模式的情况下完成相关操作。譬如在家居类的ARapp当中,用户已经将一把心怡的椅子放置在客厅里,接下来他们很可能希望继续添加其他家具进行预览;要确保相关操作都可以在当前界面环境当中完成。
进入AR环境
明确提示初始化状态,引导用户参与完成。每当你的app进入AR模式,初始化流程都会执行一次,完成对环境的探测和评估。整个过程可能会花费数秒的时间。为了减少用户的困惑,加速流程的进行,你可以通过文字明确地向用户提示当前的系统状态,并鼓励他们通过摄像头探索周边环境,主动寻找能够提供水平表面的地方。
放置虚拟物体
帮助用户了解何时需要定位水平面,何时可以放置虚拟物体。可视化的指示标识可以有效地使用户了解到水平面定位正在进行。例如,当用户看到位于屏幕中央的梯形准星,就会明白现在应该去寻找一片平面区域;水平面测定完成之后,准星的样式发生变化,暗示用户可以放置虚拟物体。指示标识的外观样式需要与app的整体风格保持一致。
以恰当的方式响应用户放置虚拟物体的行为。水平面的精准定位过程需要耗费一定的时间(虽然极为短暂)。如果用户在这个过程中试图放置虚拟物体,你应该利用现有数据信息将物体立刻呈现在屏幕当中。水平面测定完成之后,再利用最终的数据对物体的位置进行微调。如果用户一开始将物体放在了已测定的水平面范围之外,那么要以平缓的方式将其拉回到平面当中。
避免将物体预置在水平面边缘。在AR当中,水平面的边缘范围可能会随着用户所在位置的变化而产生调整。
译作:C7210
来源:beforweb
【免责声明】:本内容转载于网络,转载目的在于传递最新信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。