6a广告位
6A资讯站 >网游>正文

oculus quest开发者分享rift和vive应用移植优化技巧

[2019-06-22]


在oculus quest发售前,oculus第三方内容主管曾表示,将pc内容移植到oculus quest更多的是格式化美术资源而非优化代码。
quest第三方内容开发商immerse曾在五周时间内实现了美术资源的再格式化,并将最初为pc开发的企业培训应用程序移植到了这款vr一体机上。他们究竟是如何做到的呢?
immerse产品负责人justin parry解释说,他们自2019年年初开始一直在使用quest开发套件,公司安排他们将为pcvr开发的dhl培训应用移植到vr一体机quest上。parry表示:由于客户业务的性质,vr中的培训场景被设置在一个巨大明亮的仓库环境中。我们的任务十分简单:令这款应用能在quest上运行,同时尽可能维持与pc版类似的体验。
尽管quest的房间规模(和仓库规模)inside-out追踪非常适合这种类型的应用,高端pc性能的缺乏也是他们面临的一个问题。开发者虽然可以通过标准的unity设置瞬间实现部分资源的再格式化,但需要付出保真度方面的代价。parry认为重写unity的设置并采用其他多项技巧对于维持类似pc版的体验非常必要。
举个例子,unity的标准着色器质量设置默认为低,在该设置下法线贴图是无法使用的。parry建议开发者应该将该设置调整为中或高,以预览所有内容,然后再开始优化资源。immerse同时注意到,简单的纹理格式改动会导致在rift中清晰的纹理在quest中显得模糊,但采用gpu原生格式(如rgba 32位)通常可以解决问题,此外针对个别纹理进行额外设置调整也有助于改善清晰度。
开发者不应该简单地减少quest模型资源的多边形数量来降低复杂性,减少模型的数量效果更好。换句话说,将一只箱子、一个桶、一块地板以及一张桌子合并成为一个模型会有显著的性能提升,因为程序不需要同时加载四个对象来获取所有数据。尽管开发者无法实现将场景中的所有物体合并到一个文件中,因为如此会阻止quest剔除当前未被查看的对象,但创建相关物品的集群可以使情况大为改观。
immerse同时通过texture atlas和ui sprite atlas来减少加载时间和draw call,他们将sprite纹理大小设置成512像素或更低,并尽可能重用纹理以节省内存。为了最大化近处sprite的视觉质量,parry建议禁用近处sprite的mip-mapping,但他强烈建议为所有其他纹理启用这一点,因为它是最接近抗锯齿的功能。对近处和远处纹理的优化可能需要单独设置,但最终视觉效果会更好。

6A打造六星级的专业游戏服务平台,更多相关游戏资讯请关注【6A游戏专区】

想要获取更多第一手手游资讯,点击直达【手游专区】

更多游戏同步直播观看,请前往【6A直播站】

[ 6a.com发布此文仅为传递信息,不代表6a.com认同其观点或证实其描述 ]

更多 >相关文章

分享到: