Oculus新优化工具可大大加速Quest Unity开发迭代

2020-05-01 18:50:24来源:YiVian


查看引用/信息源请点击:oculus

大大减少Unity开发的迭代时间

1.OVRBuildAPKandRun

第一个工具是OVR-Build-APKandRun,它可以在构建APK时将构建和部署时间减少10%-50%。这个方法是在构建APK时利用gradle缓存。它的工作方式就像一个普通的UnityBuildandRun,但它会缓存文件,这样就不需要再次完全重建它们。所述工具产生的最终APK将与UnityBuild相同。OVRBuildAPKandRun位于Oculus菜单之下,如下图所示。

无我VR 聚合新闻

2.OVRQuickScenePreview

第二个工具是QuickScenePreview。它利用Unity的AssetBundle系统来减少部署时间。所述工具将把你的项目和场景分成多个AssetBundle,并上传到你的设备。然后,当你对场景进行更改时,所述工具将更新设备的Bundle。

无我VR 聚合新闻

2.1.工作原理

迭代所花费的大部分时间来与构建、打包和部署APK有关。对于更为大型的项目来说,这可能十分耗时。OVRQuickScenePreview的工作原理是首先构建一个剥离的APK,其包含项目代码和一个AssetBundle加载程序脚本。然后,项目按资产类型和场景划分为各个AssetBundle,并部署到设备的外部文件夹中。如果对某个asset进行更改,则只需构建所述asset对应的Bundle并将其部署到设备。这样可以节省大量时间。

无我VR 聚合新闻

2.2.结果

Oculus与《BeatSaber》,《DeadandburbedII》,以及《SUPERHOTVR》团队合作测试了OVRQuickScenePreview。团队同时将优化应用于UnityAssetStore的VikingVillage示例。测试的所有项目在迭代时间方面都有显著的改进。

无我VR 聚合新闻

从上表可以看出,每个项目的迭代时间减少了80%以上。团队测量了在一个项目中进行两个asset更改和场景更改所需的时间,并通过OVRQuickScenePreview看到迭代时间的显著减少。

3.1.工作原理

IPreprocessShaders从2018.2版本开始添加到Unity中,它允许派生的编辑器类实现OnProcessShader。一旦实现,每当为着色器组启动生成时,系统都会调用OnProcessShader,从而允许通过自定义代码修改将要处理的着色器列表。在这种情况下,当启用“SkipUnneededShaders”时,如果选择OculusGo或OculusQuest作为“TargetOculusPlatform”,则会从生成中移除所有Tier1和Tier3着色器。

无我VR 聚合新闻

3.2.结果

即使已经构建并且是最新,在迭代asset更改时依然需要处理着色器。以下的计时是使用VikingVillage示例时所测量,并用于已构建所有着色器build。

无我VR 聚合新闻

对于OVRQuickScenePreview,迭代时间减少了31%。OVRBuildAPKandRun(UnityBuildPlayer)的效果甚至更好,迭代时间减少了54%。

团队一直在努力改善Quest开发者的体验,所以他们当然对目前看到的结果感到兴奋。迭代时间是Oculus关注的一个领域,而他们相信这三个优化可以大大减少开发者的迭代时间。

映维网。