间接寻址级别不同_使用Unity Addressables可寻址资源系统

本文介绍了在面临内存减半的移植任务时,如何使用Unity Addressables可寻址资源系统来优化内存管理,减少游戏内存占用。通过对比传统资源管理方法,展示了Unity Addressables在内存效率、加载速度和设备兼容性方面的优势。文章还提供了逐步实施的教程,从资源标记到异步加载,以及引用计数和实例化,帮助开发者更好地理解和应用这一系统。
摘要由CSDN通过智能技术生成

Rubén Torres Bonet是一名优秀的游戏开发者,参与开发的游戏包括:《Time Stall》、《Catan Universe》、《Diamond Dash》、《Jelly Splash》等,这些游戏面向Oculus Quest、Android、iOS、PS4、Xbox One等多个平台,全球的累计安装量超过3000万次。

本文,Rubén Torres Bonet将分享使用Unity Addressables可寻址资源系统的方法。

引言

如果你正带领着一支由程序和美术组成的团队,在6个月内要完成将精美的PS4 VR游戏移植到Oculus Quest,并且面临只有1个月的时间处理内存减半的问题

你会怎么做?我们可以考虑使用Unity Addressables可寻址资源系统

在移植的过程中,我们必须同时处理多项复杂的任务,不同的开发者会有不同的考虑方向。但哪项任务会最耗费时间呢?

我猜超过70%的人会说:在把游戏移植到Oculus Quest平台时,CPU和GPU的性能是开发者面临最大的问题

性能是VR游戏中最难提升的方面之一。对于这类优化,我们需要对产品有深入的了解。但这是一个极为耗时的过程,有时我们甚至无法进一步优化,只能牺牲大量游戏内容和图形效果。但这样导致移植出来的成品不符合玩家的期待,这也是非常棘手的问题。

“性能”这个词往往让开发者感到不寒而栗。Oculus Quest平台的性能是怎样的?项目在Oculus Quest的运行效果如何?

实际上,如果对Oculus Quest有一定开发经验,你可能知道,其实把Oculus Quest作为移动硬件来看,它的功能是非常强大的。Oculus Quest的主要区别在于它的主动冷却系统,该系统对可用CPU/GPU硬件级别提供了其它移动平台没有的大幅提升效果。

此外对于Oculus Quest的软件方面,和通用的Android变体相比,专用操作系统更加适合对虚拟现实渲染进行优化。

在过去几年中,移动硬件正在快速赶上独立平台。但要实现持续在72fps下渲染依旧非常困难,特别是从高端平台移植的VR项目。更确切地说,谈到Oculus Quest的移植时,我们必须把该平台设想为使用带有屏幕、电池、四个摄像头和一个风扇的高通骁龙835处理器的设备。

这款设备的缺点从其它角度看也可以是优点。该移动平台是经过大量研究的硬件,如今有很多已知的技巧可以快速把其CPU和GPU的负载降低到可以接受的程度。

我们任务重点是:和PS4相比,Oculus Quest减少了一半RAM内存。PS4的RAM内存是8GB,而Oculus Quest是4GB

这是粗略估算的结果,因为在两个平台上,操作系统都不会允许使用所有内存,这样它可以跟踪一些子系统,让生态系统正常工作。在Oculus Quest上,我们最多可以使用约2.2 GB的RAM内存,否则会出现问题

合适的内存处理对游戏来说非常重要,因为有两个限制:

  • 严格的内存限制:如果超过特定使用量阈值,操作系统会直接关闭游戏。

  • 缓冲的内存限制:除了特定限制外,在用户最小化游戏窗口,脱下VR设备,或走出Oculus Guardian区域时,操作系统也可能会关闭游戏,

我们不希望这些问题出现在游戏中,否则可以想想一名玩家在丢失2小时游戏进度后的愤怒。

78408c4a1067b35ac03fff6bb626ecd8.png

2.2 GB的可用RAM内存其实并不多。对于从一开始就跟踪统计数据的新项目,这并不是问题,但如果要移植项目到性能大幅降低的硬件,这会是一个大问题。

如果过去处理过类似的移植过程,你一定明白减半游戏的RAM内存预算有多么困难。这项任务取决于游戏架构是否对这种改动做好准备。

减小内存压力的最常用方法包括:调整资源压缩设置、优化脚本、减少着色器变体等

根据项目的具体情况,调整纹理导入设置是我们的首选方法,但如果需要的话,我们也可以压缩网格、动画和音频。但这些方法本身非常复杂,而且有一定限制。

不是所有平台都支持相同的导入设置,面向多个设备构建会大幅提升构建管线的开销,更不用说QA阶段、美术、设计和编程方面的复杂性。开发者要考虑:某款Android设备是否支持ASTC或ETC2?

我们也希望构建64位的版本,同时在32位版本上留住玩家。我们要想好到底要创建多少个APK版本,更糟糕的是,游戏的每次更新都要对每个版本分别管理和测试。我们希望让工作变得轻松,所以我们不应该只依赖这些方法。

我们希望更进一步,让事情尽可能简单,特别是在进行移植的时候。为了性能而重新设计游戏是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值