VRTK将各种VR SDK结合打通,开发者们更方便了!
作为一名从网络和应用领域转向3D和XR的开发者,随着行业在以推特风暴的速度发生演变,我不得不对我的平台和工具选择进行重新评估。今天的XR开发渠道已被Oculus、HTC Vive、微软、谷歌、 苹果 、索尼和SteamVR等竞争对手所垄断的专有硬件和软件API以及SDK所阻塞——更不用说还有Logitech的 VR 跟踪键盘等新兴的第三方外设,适用于Rift或Vive的全新AR-enabled Zed Mini双眼相机,或者从我开始写这一段话起就可能已经出现的其他任何颠覆行业的新兴产品。
每个平台都很不错,甚至可以说是在技术上是令人惊叹的,它们也都有其优点、缺点和各自的用例。但是这种差异迫使XR开发商提出了一些难题:市场在往哪个方向发展呢?我如何投入我的技能建设时间?我的应用程序应支持哪些设备?我可以从哪个平台找到可研究的工作?开发人员必须如创意技术人员一样达到业务分析师的水平,才能在行业内保住自己的地位。可选的选项这么广泛,很容易会让你犯选择困难症,而且更容易让你作出错误的选择而导致损失的发生。
就我个人而言,作为中西部(美国)独立XR开发商,我也面临着一些技术、物流和财务方面的实际问题。在美国中西部地区,这个行业还没有像沿海主要城市那样繁荣发展。值得庆幸的是,Unity和Unreal这样的 游戏 引擎正迅速地在这个地区将这类产品大众化。两种引擎都试图弥合各XR SDK之间的差距,雇佣了数千名工程师来确保他们的软件能够很好地与任何重要的第三方API搭配使用。例如,正如我在八月份所写的那样,Oculus SDK与Unity的整合非常出色,并配备了许多快速原型化、开发和部署自定义Rift应用程序所需的脚本和预制件。
这简直太棒了,不过它仍是非标准化的。要将相同的Unity应用程序移植到HTC Vive或Windows HMD中,可并不是一件容易的事情——这不是不可能的,也算不上登天般困难,但却绝不是轻而易举的小事。长期为多个软件开发工具包(SDK)维护您的应用程序,同样也是一项不平凡的工作。这些并非轻而易举的小事都要花费成本和时间,而这两样东西我们都比较短缺。
相反,别去想象XR从业者是否要担心在正确的平台或设备上作出赌注,我们更应该专注于创造独特而令人叹服的体验、内容和用户体验(UX)。沿着这条道路走下去,第一步的成果就是VRTK——但遗憾的是,它作为对抗VR SDK盈余的最佳工具之一,很快就会因创始人的流失而步履艰难。
VRTK:开源方法
这个免费的开源Unity工具包旨在将各种VR API的单一工作流程结合在一起。它包含了你可能会在任何单个专有SDK中找到的相同库存预制和脚本机制,而其每一个功能部件都能保持一致,无论是被部署到Oculus、SteamVR(阅读:Vive和v3.3.0,Windows HMDs)还是Daydream 等当今所有主要的VR头盔制造商的产品上。
这对任何想要在VR开发领域试水的人士来说都是一个福音。想想看:想要在Unity NavMesh上实现远距传送运动?只需将组件拖放到播放器预制件上就行了。想要测试抓捕机制,还是一个快速的贝塞尔指针? VRTK的演示场景可以让你完成这一切,这些场景可以在各种设备上轻松运作。由于它是开源的,你也可以自由地潜入并自定义代码。觉得让某个功能在自己的项目中运作十分费劲儿?在各种SDK上查看一下这个实施方式吧——这是了解新的XR编码概念的一个不错方法。
可惜的是,VRTK的创造者正由于项目资金不足而不幸地走在下坡路上。总部位于英国的开发商TheStoneFox近日宣布,将会在3.3.0版本后退出项目,直到最近该开发商还在积极寻求项目贡献者、合作伙伴和各类支持。尽管VRTK拥有活跃的Slack社区,越来越多的自制游戏和最近的Kickstarter,但TheStoneFox仍无法获得长期发展所需的支持。
现在,助力、利用优秀的开源虚拟现实开发管道加速器的机会将会逐渐消失,但如果有什么东西能取而代之呢?
OpenXR:一个API即可驾驭所有
VRTK的方法 ——使用Unity脚本将各种VR SDK的类似机制结合在一起——这在当前分散的开发环境中是十分必要的,但也存在缺陷。有些社区仍然需要监控各种专有SDK的更新,并且您终端用户的VRTK应用程序仍然需要注意VRTK逐渐产生的改变。通过这种方式,VRTK处理了VR SDK过载的症状,但没有解决根本问题。接下来进入Khronos集团即将推出的行业标准OpenXR:
这个2016年12月发布的标准正在编写之中,并迅速引起了业内人士(显然除了Magic Leap之外)的关注。公司将会改变他们的硬件和软件,以符合OpenXR的规范,而不是迫使开发人员去处理带有可变属性的SDK和所有伴随而生的 商业 结果。非盈利组织Khronos正在领导这一计划,该组织是Vulkan、OpenGL、OpenGL ES和WebGL标准的引领者。请查阅图表!
左图为讨论的问题——右图为解决方案:
“每个VR设备只能运行已经传输到其SDK的应用程序。这样做的结果是,开发成本十分高昂,但客户却会产生疑惑,这都会限制市场增长,“他们网站上的一些相当确切的 营销 宣传中写道,“跨平台的VR标准能够让应用程序只编写一次就可在任何VR系统上运行,并访问集成在VR系统中供应用程序使用的VR设备,从而消除了行业碎片化的情况。”
一家行业巨头的一个工作组已经同意让这个标准具有可扩展性,给未来的创新留有余地,并且应该会支持一系列的体验——从3-自由度控制器,一直到高端的房间级设备,都将涵盖在内。
这个标准要想对开发社区和日常工作流程产生影响,还独缺一个实际的时间安排表。在市场动员者团结起来并采取共同行动之前,我们将会一直处于困境之中(并且在很多情况下对VRTK项目进行填补)。
“吸引力电影”:请放慢你的脚步
但是,在该技术刚新鲜出炉并充满各种可能性的时候,我们真的该如此迅速地接纳行业标准化吗?这是Kent Bye和Rebecca Rouse最近在VR播客中所提出的问题。两人讨论了电影院的早期发展状况——当时的探索和实验状态就是我们的现在的状况——而Rouse提出,那个时代和当前XR的生产和发展阶段之间有着惊人的相似之处。
“[早期电影学者]提出了‘吸引力电影’这个词,因为他们在那些早期的作品中看到了丰富得令人难以置信的多样性和宽广的实验范围,所以他们很难把它们聚集在一起——它们是如此丰富多样——但这个“吸引力”的想法是一个足够大的概念,因为所有这些早期的作品都在某种程度上展示了技术的能力,并为观众带来了奇妙或惊奇的体验。这些电影所放映的环境是具有吸引力的地点,所以都会在世界展会上展出,也是杂耍表演和其他表演及展览的一部分。”——伦斯勒理工学院传播与 媒体 助理教授Rebecca Rouse
听起来很奇怪,是吧?这整集播客都非常值得一听,虽然XR标准有明显的消费者和市场优势,但是Rouse认为,也许我们不应该急于在这里下结论——毕竟现在是个疯狂的时代,在艺术、科学、电影和游戏领域常常会进行激进前卫的XR实验。环顾整个行业,很难不赞同这一说法。
EditorXR
Unity实验室的EditorXR是一个用XR技术进行摄像的全新应用程序。EditorXR由Unity的远景未来研发团队(他们经常发现,他们研究的项目和产品上距离消费者采用要经过五年到十年的时间)创建,为您提供了一个界面,让您可以完全在虚拟现实中创建自定义的XR Unity场景。
哦!除了其他超能力之外,还有飞行能力——像超人一样在场景中翱翔,或者把整个事物缩小到针孔大小。他们在您手腕上佩戴的那个愈加用户友好的VR UI面板上,引入了Unity检察器、层级结构和项目窗口(等等)。有了最新的更新,您可以:在VR内部实时绑定到Google的Poly资产数据库Web API;创建多人EditorXR会话,与朋友和合作者一起编辑Unity场景;使用Unity的2017.x编辑器主版本运行EditorXR。
它还是一个新的东西,而且我遇到了一些bug,但是我们已经下了一个定论:是随着XR技术的成熟和普及,这个技术将成为Unity场景创建过程的标准功能。甚至,他们初期和后续的努力也唤起了那种早期电影魅力时代的观众所感受到惊奇感和可能性。
有关设计方面的更多信息,请参阅Unity Lab的Dylan Urquidior对XR UX设计的未来的深入了解,首席工具设计师Timoni West的推特信息。
ML-Agents
另一个实验性的Unity项目名为ML-Agents,该项目探索了通往XR开发、设计和UX未来的最有前途的途径之一:机器学习。使用所谓的“强化学习”技术,即不给AI模型提供任何供其分析的样本数据或规则,ML-Agents反而使了简单的奖励和惩罚机制(以微小浮动形式),该机制以他们[通常其定义非常狭窄]的行为结果为基础。
经过了数以百万计、甚至数以万计的反复试验,计算机对其能力进行了试验,并形成实现预期目标的最佳模式。这样,你的机器就成了他们自己的老师 - 你只要写下题目就行了。
最初的GitHub提交版包含了一些基本的演示场景,开发社区很快接下了传递过来的火炬。 Unity的Alessia Nigrettif在原来的博客中描述了如何将ML-Agent集成到2D游戏中。在Twitter上,@ PunchesBears已经展示了类似的概念,并且经常表明,Agent能以他们不能预料的方式回应开发者精心设计的奖励系统。有点类似于真实的玩家,不是吗?
在我最喜欢的一款ML-Agents应用中,开发者Blake Schreurs实际上带来了一个6-自由度的机器人Agent,他经受了训练去虚拟现实中寻找空间中的一个移动点——当他把移动的目标指定到他的脸上时,产生了一些可怕的结果。
想象一下,如果有人将这种训练模式应用到实际的机器人上,并用错误地敲下了按键,或者没有出错,随便吧。
他定会彻底失败!我立即想起1895年观众涌出剧院,害怕在拉米埃尔兄弟的《火车进站》(Arrival of Train at La Ciotat)时被碾压。我们仍然处于机器学习和XR发展的青涩时代,相比之下,我们希望的达到的水平要从现在起等待10年甚至50年才能到来。那时候,传统或程序化的AI与这些新的机器学习方法的结合,必将带来游戏和XR的巨大发展——甚至是在设计过程和计算机本身的日常工作流程中。
Rift OS Core 2.0
有了Rift的全新Core 2.0操作系统,您可以从右侧菜单按钮访问整个Windows PC。您还能够查看和使用桌面应用程序,以及其他VR应用程序中的pin码窗口,为VR中的XR工作流程(甚至传统计算工作流程)带来了新的可能性。
当我在VR中完成我的下一个项目时,我可以在固定浏览器上观看Danny Bittman在YouTube上的Unity渲染和照明教程,同时在手腕上的UnityXR中进行相同设置。我可以一边在Google Blocks中观看@_am处理原始资料,一边从Poly数据库中收集资料,并将其部署到实时VR的Unity场景中,并且如果我愿意的话,还可以用Visual Studio编写成一些游戏逻辑代码。
对我来说,这听起来很忙乱,但不久之后,我们甚至不需要代码了。
未来的XR开发者不是开发者
如果XR技术要成为主流,那么开发过程必须尽可能高效,且访问权限要尽可能地宽广,甚至可能通过内容创建和机器学习应用程序向非开发人员开放。这项技术跨越多门科学和学科,还有很多需要谈论和推敲的问题,但本文还没有涉及(下一次我将研究作为可行的XR开发路径的WebVR和A-Frame)。随着计算机革命的深入,越来越多的这类可访问的、标准化的XR开发流程将会落到实处,不过我仍十分赶集XR行业尚未准备放弃它的吸引力电影精神。如果XR技术要成为主流,那么开发过程必须尽可能高效,且访问权限要尽可能地宽广,甚至可能通过内容创建和机器学习应用程序向非开发人员开放。这项技术跨越多门科学和学科,还有很多需要谈论和推敲的问题,但本文还没有涉及(下一次我将研究作为可行的XR开发路径的WebVR和A-Frame)。随着计算机革命的深入,越来越多的这类可访问的、标准化的XR开发流程将会落到实处,不过我仍十分赶集XR行业尚未准备放弃它的吸引力电影精神。
来源:青亭网