提示:文章中所有的链接均可通过阅读原文获取
9月23日,Google正式推出了Daydream VR SDK 1.0。
在Google I/O 2016大会上宣布了Daydream之后,新一代的Android系统所支持的VR开发无疑成为全世界持续关注的焦点。我们也了解到国内外的大量游戏研发团队都在等待Daydream的正式公布,很多移动开发者都纷纷看好国内新一代的Android手机。华为、小米等国内一线厂商成为首批支持Daydream的手机厂商之一,也使得人们更为期待新款手机为移动VR带来的市场。
限于国内对Google的限制,目前大陆地区访问Google VR仍然需要准备一些工具,作为开发者一般都有常用的办法,在此就不一一列举了。
一些准备工作
你为哪些平台而开发?Daydream为Unity、Unreal 4、Android、iOS分别提供了API供不同开发环境下的开发者使用。如果是已经开发了成熟的VR内容的开发者,想必快速搞清自己需要的内容入口并不难。而如果只是计划基于Daydream进行VR内容开发的话,最好根据自身所要开发的内容确定好从哪类开发环境入手。
我们整理了Daydream所提供的四类API的相关信息,大部分都是开发所需的信息。
Unity
访问Google官方的开发文档>>
Unity官方也提供了一个技术预览版供开发者了解通过Unity3D开发Daydream App的基本内容。开发预览版包括了一个定制版的Unity编辑器以及Daydream开发所需的安卓Runtime环境。Unity官方也声明由于移植的复杂性,该版本只支持Android而不会同时为开发者展示iOS下的开发。
unity-editor-for-daydream
最新的Unity3D for Daydream发行版的发行日期为2016年9月22日。
访问Unity3D的官方统一版说明(英文)>>
直接下载Unity3D for Daydream官方统一版for Windows>>,对应的Mac OS版本>>
Unity官方也为开发者提供了Unity3D for Daydream的开发预览版论坛,不过目前没有太多实质性的内容。
unity3d-for-daydream-preview-forum
Unreal Engine 4
Google VR官方拥有一个相对完整和详细Unity3D开发文档,然而在对UE4的支持上显然没有对Unity3D那么完好,Google VR所提供的UE开发文档,链接直接指向了UE的官网。而UE官方对于基于UE开发for Daydream的指导文档也语焉不详,目前仅提供了几个入门级的开发相关信息。
ue-for-daydream-document
不过,基于以往Android平台开发者更多的在使用Unity引擎而非UE这个事实来看,Google VR和UE4之间相互支持得并不完善也在意料之中。
UE官方表示,要基于UE4开发for Daydream的游戏和App,必须要单独下载Daydream开发所需的Android NDK 11c,然后配合UE开发编辑器使用。言下之意即,UE并没有提供像Unity3D一样的整合开发包。
访问UE 4 for Daydream开发文档(英文)>> ,诚如上图所示,内容很简单,不要抱有太多幻想。
基于UE4 (或其他开发工具)开发Daydream要注意的一点是:务必打开Scanline Racing的选项,这是Daydream类设备支持的一个特性,需要在特定的开发IDE中才有选项支持。这个特性要求开发者所开发的内容必须支持ARM64-v8a架构的设备,从这一点,也方便我们以后判断哪些型号的手机将能够支持Daydream,而哪些不能。
Android
因为自家的Android的开发框架并不包含渲染引擎方面的内容,因此,Daydream for Android也显得相对简单。
基于Android的开发你需要准备Android开发环境本身的SDK以及Daydream所需的NDK,所幸Google VR已经为此准备了一个一体安装包。
下载Google VR SDK for Android>>
Google VR SDK for Android包含了Daydream此前所描述的一些VR特性,包括如下:
镜头畸变矫正
全景声
头部追踪
头部追踪
定位校准
端对端渲染
构建立体几何空间
用户输入事件处理
Google VR同时也提供了一个基于Google VR SDK for Android开发的《寻宝猎人》的开发实例,也可以通过官方提供的资源下载。官方推荐使用Android自家的开发IDE,但并不确定是否必须使用此开发环境。
《寻宝猎人》的开发实例,已经发布到Github,可以通过Git工具克隆到本地。
git clone https://github.com/googlevr/gvr-android-sdk.git
有关该实例的使用和其他开发信息,可以参考Google VR Android Getting Started。
iOS
Google VR SDK for iOS所提供的开发特性与Android版没什么区别。差别在于——也很显而易见,Daydream手机显然都是Android系统,所以iPhone就不在支持之列了,但仍然支持Cardboard,然而体验上会产生何种差异,就不得而知,不过也不难想象。
下载Google VR SDK for iOS>>
对应的代码实例的说明以及下载>>
相对于Google VR SDK for Android所提供的实例,为iOS开发所提供的实例则相对简单很多。
google-vr-sdk-for-ios-getting-started
如何申请Daydream开发支持?
Google已经开放了Daydream开发相关所需的SDK、开发环境和APIs,因此当然不会拒绝开发者进行开发。然而Daydream作为一个全新的开发体系,对于追求更好适配和体验效果的开发者而言,获得Google的官方支持无疑能锦上添花。
获取Google VR官方工程师的支持(官方叫Daydream Access Program),需要进行一项申请,完成该申请并获得授权许可后,将获得一系列的资格/有利条件,包括:
优先获得Daydream开发工具的升级
对接Google VR团队的工程师
准许进入官方的Daydream开发者社区
提前发布自己的Daydream应用或游戏到Google Play
申请Daydream Access Program后的状态
关于第四项福利,尽管目前中国大陆地区访问Google Play是受限的,但由于目前VR的市场暂无国界,如果自身所开发的内容能够在海外市场获得欢迎,那未必不是一件好事。同时鉴于此前有消息称Google希望回归中国大陆,且很有可能先让Google Play首先进入中国,建议广大的Daydream开发者考虑申请。
相关的Daydream开发者社区资源
请注意:以下资源或社区的访问,均需通过“某种梯子”。
访问Google VR官方指导>>
访问Google+的VR开发者社区>>,这是官方推荐的社区之一。
访问Google官方提供的Unity开发API>>,这里提供了很多插件工具,不过目前大部分插件工具都是原先Android常规应用开发所需,VR相关的内容暂时还不多。以后也许会很多。
访问Google官方推荐的StackOverflow技术问答社区的Tag分类页,目前已经包含了7页内容。
访问Google VR发布在Github的代码资源>>
分析点评
(排序以日期倒序)
专访报道
(近期刊发)
上手测评
★★★ EXPAR.cn,更好的视角 ★★★
本文暂时没有评论,来添加一个吧(●'◡'●)