Трудно найти много информации о том, как на самом деле работают AssetBundles. Не могу найти никаких объяснений, как управлять пакетами ресурсов при сборке игры.
В основном у меня есть папка с именем AssetBundles
в моем окне проекта. Все активы, которые я помещаю в эту папку, создаются как AssetBundles в папке в моем каталоге сборки (например, GameName / Data / AssetBundles), которые затем загружаются при необходимости.
Но когда я создаю саму игру, знает ли он, что нельзя включать эти активы, которые используются в AssetBundles, в сборку игры? Или мне нужно как-то их исключить?
Изменить: я добился некоторого прогресса.
Насколько я понимаю, только активы, которые находятся в сценах, которые находятся в настройках сборки, будут построены вместе со сборкой игры. Сценарии всегда создаются в сборке игры (я не уверен, есть ли способ обойти это, но для меня это не проблема).
Итак, у меня есть единственная сцена в сборке игры, которая действует как запускаемый объект игры. В этой сцене есть сценарий Asset Manager с DontDestroyOnLoad
, указанным в Awake
.
Мой скрипт менеджера активов в основном просто обрабатывает загрузку / выгрузку пакетов, активов и экземпляров.
В настоящее время я не слишком уверен в том, как работает сборка пакетов ресурсов для сцен. У меня он работает с LoadAllAssets
, а затем с LoadLevel
, но что, если несколько сцен используют одни ресурсы? Раздуваются ли сборки сцены с копиями ресурсов, которыми можно делиться? Я читал, что зависимости автоматически обрабатываются в Unity 5, но я не уверен, относится ли это к этому.