关于使用可寻址对象在Unity游戏中加载许多唯一的精灵时的内存问题

时间:2019-06-26 21:19:20

标签: c# unity3d assetbundle

在Unity游戏中,我们正在创建2D第一人称游戏(Myst风格),因此我们自然会有许多Texture2D。在开始由于内存问题而在较旧的iOS设备上遇到崩溃之前,我们并没有考虑太多。因此,我需要立即将场景中所有的Texture2D加载更改为使用可寻址对象在运行时即时加载。

我看了2018年关于可寻址对象的演讲,但他似乎没有回答我的主要问题,即:如果我将所有纹理归为一组(从我的理解来看,这相当于资产捆绑) ,如果我仅加载一个纹理,它将加载整个组,从而将所有组都放入内存吗?

我需要知道将它们放在同一个组中是否可以(或者分组是否在内存上有所不同),或者是否需要使这些组更小以提高存储效率。如果是后者,那么使用Resources.LoadAsync()会更好吗?

1 个答案:

答案 0 :(得分:0)

我在这里对问题的回答很好:https://forum.unity.com/threads/addressable-group-memory-question.701669/

回顾:加载单个可寻址资产是按需的,不需要卸载整个组。组更适合组织和逻辑。