很难找到有关 AssetBundles 实际工作方式的大量信息。找不到有关如何使用游戏构建管理资产包的任何解释。
AssetBundles
基本上我的项目窗口中有一个文件夹。我放在这个文件夹中的所有资产都作为 AssetBundles 构建在我的构建目录中的一个文件夹中(如 GameName/Data/AssetBundles),然后在需要时加载。
但是当我自己构建游戏时,它是否知道在游戏构建中不包含 AssetBundles 中使用的这些资产?还是我需要以某种方式排除它们?
编辑:我已经取得了一些进展。
据我了解,只有存在于构建设置中的场景中的资产才会与游戏构建一起构建。脚本总是在游戏构建中构建的(我不确定是否有办法解决这个问题,但这对我来说不是问题)。
所以我在游戏构建中有一个场景,它充当游戏的启动对象。此场景上有一个 Asset Manager 脚本,其中DontDestroyOnLoad
指定了Awake
.
我的资产管理器脚本基本上只处理包、资产和实例的加载/卸载。
我目前不太确定如何为场景构建资产包。我让它使用LoadAllAssets
然后做LoadLevel
,但是如果多个场景共享一些资产怎么办?场景构建最终是否会因拥有可共享的资产副本而变得臃肿?我读到 Unity 5 会自动处理依赖项,但我不确定这是否与此有关。