增强现实的设计与开发

当iOS 11于9月19日发布时,苹果一夜之间成为增强现实(AR)的最大参与者。 利用AR(允许虚拟对象覆盖在现实世界之上)的产品已经问世多年。 Snapchat的镜头使用AR,而App Store则堆满了较旧的应用程序,这些应用程序可带来相对错误的AR体验。

但是在iOS 11上,苹果通过发布名为ARKit的开发人员工具包改变了竞争环境。 该工具包由复杂的技术组成,开发人员可以以此为基础来提供高质量的AR体验。 自从90年代以来我就一直是AR的忠实拥护者,因此我一听说它就渴望在ARKit的基础上构建。

自从我将Float发布到App Store以来已经有几个月了。 在我从事硬件,移动,Web和VR产品的产品,市场营销和开发工作的同时,创建AR产品时出现的考量和挑战是新颖且令人着迷的。 这是我遇到的一些最重要的问题,以及我如何(或没有)解决这些问题。

增强现实的声音设计

Float的一些核心功能是允许用户创建虚拟屏幕,以循环播放用户的视频。 然后,用户可以在3D空间中以拼贴方式将视频布置在自己周围,将视频缩放到100英尺高,或者以其他方式重新混合其内容。 视频带来声音。 在测试早期版本的Float时,我的想法是“嗯……每个虚拟视频屏幕都应该播放自己的音频。 当然。”

当所有视频相互尖叫时,这导致了嘈杂的用户体验。 我的解决方案是在静音的同时播放最近播放的视频音频。

但是,那里有更好,更直观的解决方案。 虚拟屏幕的理想行为是随着用户靠近特定虚拟屏幕而变大的音频。 随着用户离屏幕越来越远,该视频的音频变得越来越安静。 从理论上讲,这种行为听起来不错,但是在实践中,这种设计可能会迅速变成一堆的屏幕静音,取消静音,增大或减小特定屏幕的体积,侵入性的UI覆盖或尴尬的UI交互,以及我没有做过的其他行为。认为将其内置到我的实验应用中是无益的。

最好的移动应用程序采用周到的声音设计,以令人赞叹的提示音和流行音来通知和激发我们,预示着新的聊天或通知。 此处的区别在于,我们每天使用的大多数应用都是二维的。 它们是生活我们屏幕上的平面应用程序。 AR应用程序通过放置虚拟物品,数据或我们通过屏幕与之交互的其他事物来修改和改善我们周围的世界。

与常规移动应用程序相比,AR应用程序在玩法上有更多的选择,因此AR应用程序的声音设计需要更接近3D视频游戏的声音设计。

我认为我们已经离开了几年,发生了重大的硬件范式转变,并且进行了大量的产品实验,而无法起草用于处理增强现实音频的可靠设计准则。

增强现实的对象放置和信息架构

当您在普通的非AR移动应用中点击某些内容时,该应用通常会全屏显示或突出显示或放大您所点击的内容。 这些应用程序的设计可能会提示您要经过人工操作的深度和屏幕层次,但是您的交互仅限于触摸二维平面:手机的屏幕。

AR应用程序可帮助您浏览屏幕以与虚拟对象和真实对象进行交互。 与虚拟对象进行交互的一个示例是在Float中捏一个虚拟视频屏幕,以将其缩放到200英寸宽。 与真实对象进行交互的一个示例是浏览无数卷尺AR应用程序之一,然后点击房间的各个角落以测量墙的长度。

假设您正在开发一个AR应用,每次点击屏幕时都会生成一只闪亮的新飞小狗。 恭喜! 您的应用已经可以运行,您只需要处理一些小细节。 例如:新的幼犬应该在哪里产卵? 他们是否应该在轻按的屏幕前出现一只脚? 两只脚? 他们应该总是面对着你吗? 或以其他方式旋转? 它们应该总是一样大小吗? 那是什么尺寸 他们应该受到重力的影响吗?

好的,既然您已经做出了所有这些决定,那么您就决定添加功能,例如,轻按小狗即可显示带有小狗名称的标签。 但是那个标签应该是什么尺寸? 如果小狗在房间对面,是否应该在小狗上贴标签? 还是应该将标签从屏幕弹出18英寸,以便您可以不动地阅读它? 标签应该是什么字体大小? 哪种字体? 什么颜色? 标签应该多大? 标签是否应该始终可以在一只脚远的地方阅读? 五英尺? 更多? 标签是否应始终面向相机? 还是应该使用其他默认方向和旋转来生成它?

对于上述许多问题,肯定存在错误的答案。 但是我不太确定,如果今天写的话,肯定会有正确或理想的建议将其编入详尽,定量的《 Apple AR接口指南》(Apple有一些关于AR的指南,但它们含糊不清-尤其是与常规应用的详尽指南)。

再一次,我提出的许多AR对象放置和AR信息体系结构设计问题将是3D游戏开发人员/设计人员非常熟悉的,并且只是他们工作的一部分。

如果AR软件的规模增长到与Apple, Google Facebook 一样大 ,我可以看到许多初创公司,代理商和公司组建或发展了自己的3D建模者/艺术家/开发者/设计师团队。

增强现实用户体验

专注于用户体验(UX)的才华横溢的团队通常会推出一款使用愉快的产品。 现在,移动应用程序行业已经成熟,并且有一些最佳实践已融入iOS,或者可以通过无数个广泛分布的应用程序进行研究,以使Apple尝试将最无知的开发人员推向“正确的” UX选择。

但是,同样, 没有详细的Apple AR接口指南手册。 没有十年的AR应用程序经验,也没有多年可观察到的AR产品成功和可怕的学习失败。 我为避免这种缺乏指导而采取的方法是在开发过程中进行无数次的编码,构建和测试。 我的主要目标是尝试让Float绝对不烂。

我想到实现该目标的最佳方法是编写一些代码,实现新的设计或交互,在手机上构建应用程序,然后尝试一下。 立刻清楚的是,由于人们通过屏幕与AR应用程序进行交互,并且由于屏幕应该是摄像机看到的视图,且AR元素叠加在顶部,因此任何接管屏幕或弹出摄像机接口的界面视图是一个主要的麻烦。

在Float的第一个版本中,我开发了一个自定义媒体选择工具,该工具使用户可以从其相机胶卷中选择图片和视频,以放置在现实世界中的虚拟屏幕上。 这种自定义媒体选择方法占据了屏幕的下半部分,而不是操纵用户的整个屏幕并隐藏了相机的AR视图。 但是,我遇到了复制官方Apple工具包以从相机胶卷中选择媒体并最终插入Apple工具包的开发问题。 由于苹果官方的媒体选择工具套件是针对典型的2D移动应用程序而设计的,因此与良好的AR UX设计背道而驰,但是它具有即插即用功能的优势,否则该功能可能需要几天的开发时间。

将来,我可能会花些时间来适应Float的媒体选择工具,使其对AR友好,但是与此同时,芝加哥AR初创公司Thyng已经在其应用程序的媒体选择工具中做到了这一点。

我进入移动开发游戏的时间很晚-在2008年App Store推出之后整整6年了。因此,我不知道这些早期的iOS应用程序开发多么丑陋。 我不确定现在开发iOS ARKit应用程序时遇到的麻烦是由于技术的新颖性还是是否有一些更悲观的解释。 虽然我对ARKit感到非常兴奋,并且喜欢用Xcode编写Swift,但是如果我不得不描述Apple提供给开发人员创造出色的3D AR体验和功能的工具的质量,我会形容它:不好。

苹果和Xcode缺乏高质量的3D开发工具可能是由于iOS及其大多数内置工具包旨在在二维屏幕上运行应用程序这一事实所致。 苹果提供的超过99%的开发人员工具包并不是为通过屏幕与3D对象(虚拟或真实)进行交互而制作的。 时间将证明苹果是否试图纠正这种情况。

iOS上的增强现实的粗糙边缘

未来几年和未来的主要产品平台将决定Apple是否致力于AR。 如果他们致力于这项技术,并计划开发一些重要的新平台(眼镜,透明手机/平板电脑,单片眼镜或其他东西?),我希望ARKit的重大更新会在WWDC(苹果公司年度开发者大会)上发布。在六月)。 这些更新将基于现有的ARKit核心,并将更多的iOS工具包过渡到3D,AR的未来,以取代现有的现有2D,电话屏幕。 但是,如果不更新ARKit的局限性和日常iOS设计模式以解决AR用例,我希望该技术停滞在iOS上,并加入像Messages / iMessage应用程序框架和ReplayKit这样被忽视的工具箱。

可以肯定的是:苹果的AR竞争对手并没有因此而感到吃惊。

在过去的两年中,Google主导了VR和AR的发展。 他们对VR和AR开发现实的最有说服力的理解是他们的Poly产品,这是他们在Sketchfab和其他3D模型库中的作品。 除其他好处外,Poly还解决了数百万移动开发人员没有为AR应用程序创建3D文件所需的软件,技能或时间的问题。

就在两天前,Facebook向所有开发人员开放了他们的AR Studio。 Facebook对复制竞争对手毫不留情,因此当他们举起Snapchat的AR镜头供Messenger和其他Facebook产品使用时,这并不奇怪。 Facebook希望在AR Studio上开发人员和设计师可以通过其相机应用程序创建数百万个特效。

然后就在今天,Snapchat发布了自己的软件平台,供开发人员和设计人员构建定制的AR镜头。 Snapchat称软件为Lens Studio。 类似于Facebook的游戏,Snapchat希望品牌,设计师,艺术家,开发商和代理商学习这个新的3D软件工具,以创建可在其相机应用程序中使用的自定义AR镜头。

苹果可能是第一个发布大型,先进的AR工具包的人,可被数百万的开发人员使用-但希望他们在提供现代,强大且友好的3D建模工具和工具包方面与Snapchat和其他公司保持同步。 如果苹果继续进军增强现实领域,我预计科技巨头之间的增强现实技术之战将继续下去,并不断推出有趣的事物。