随着Unity5.1的发布,之前的Oculus Rift和Gear VR 开发流程发生了巨大的变化,这也算是小白鼠们必须付出的代价了~
那么Unity5.1和Oculus的整合究竟发生了哪些变化,对开发者们开发应该如何来调整开发策略呢?下面是Oculus官方的详细说明,不得不看。
1.Unity提供了第一方的支持
Unity从5.1版本开始提供了对虚拟现实的第一方开发支持,当开发者在Player Settings中勾选”Virtual Reality Supported”选项时,就会自动使用一个全景的VR摄像机来取代默认的主摄像机。
V5.1最开始只支持Oculus Rift,从6月12日开始Unity发布了5.1.0p1,开始支持Gear VR.。开发者可以从这里下载最新的补丁版本。
http://unity3d.com/unity/qa/patch-releases
目前最新的版本是5.1.2p1,7月22日发布。
当然,不是说最新的版本就是最好的,开发者一定要注意看bug修复清单,另外还有附加的说明。比如针对VR开发来说,Unity官方推荐先停留在5.1.2f1版本。因为在5.1.2p1版本有个bug,要等到1周后才会在5.1.2p2版本中修复。
关于如何实现Unity第一方的VR支持,可以参考Unity官方的说明:
http://docs.unity3d.com/Manual/VROverview.html
2.Unity5.1和Oculus Integration的整合开发
需要注意的是,Unity5.1的第一方VR支持和Oculus Unity Integration的历史遗留版本并不兼容(v0.6.0及之前的Oculus SDK)。如果想要在Unity5.1中使用遗留的integration,那么久必须在Player Settings中取消勾选”Virtual Reality Supported“。
不过Oculus正在抓紧工作,很快会对Unity Integration做一个更新。届时就可以在VR项目中正常使用新的Oculus Integration了。
3.已知的问题
考虑到迁移到Unity5.1对VR项目开发来说存在相当大的变化,因此我们建议大家慎重考虑升级的时间。简单来说,再次强调,做小白鼠是要付出代价的~
如果大家在这个过程中遇到任何问题,请在Oculus Unity论坛中提出来,Oculus的技术支持人员本尊会是不是出来看看情况。
目前我们已知Unity5.1版本在开发VR游戏时存在以下问题:
(1) 所有的moonlight脚本(包括平台UI,CPU/GPU level,overlay)都不兼容Unity5.1.0。为了解决这一问题,我们会尽量在Oculus SDK 0.6.0.1中进行修正。除此之外以下特性无法正常实现:
(2) MediaSurface
(3) TimeWarp sub-stepping(仅支持60,不再支持20或30)
(4) Linear lighting(sRGB)和eye texture MSAA当前无法正常使用,预计在Unity5.1.0p2中解决。
(5) VR.VRSettings.renderScale在Android上面无效
(6) 当前无法实现对每只眼睛渲染不同的内容(立体电影)。该特性看会在未来的某个Unity版本中得到解决。
关于Unity5.1的更新说明和问题说明,请参考:
https://unity3d.com/unity/whats-new/unity-5.1
最后的小结,在更完美的Unity版本出来之前,对于VR开发者来说最好的选择是:
仍然使用Oculus官方的Unity Integration,同时不要在Unity的Player Setting中开启”Virtual Reality Supported”.
我的VR资讯网站:赛隆网(http://www.cylonspace.com)