Hero background image
Упростите управление контентом с помощью Addressables

Узнайте, как система адресных активов может упростить управление контентом как во время редактирования, так и во время выполнения, чтобы первые и новые релизы вашей игры проходили более гладко и легко. Эта статья основана на выступлении Билла Рамсура из команды Live Content на конференции Unite Copenhagen 2019.

Обзор адресных устройств

Addressable Asset System (т.е. Addressables) - это система управления активами Unity Editor и runtime, которая улучшает поддержку больших производственных команд со сложными потребностями в доставке живого контента. Система использует асинхронную загрузку для поддержки загрузки из любого места с любым набором зависимостей. Благодаря более эффективной упаковке пакетов активов и сокращению времени итераций Addressables предоставляет простой способ сделать вашу игру более динамичной.

Addressables решает такие проблемы разработчиков, как время итерации, управление зависимостями, управление памятью и упаковка контента.

работа с адресуемыми ресурсами
Рабочий процесс The Addressables

Если актив (например, сборный объект) помечен как "адресуемый", он генерирует адрес, который можно вызвать из любого места. Где бы ни находился актив (локально или удаленно), система найдет его и его зависимости, а затем вернет его. Актив - это контент, который вы используете для создания игры или приложения. Обычные примеры активов - префабы, текстуры, материалы, аудиоклипы и анимация.

Addressables абстрагирует пакеты активов, чтобы сделать управление контентом более эффективным, и при этом содержит сам актив и все его базовые данные.

В рабочем процессе Addressables запрос сначала проходит через систему Catalog. Система декодирует адрес в местоположение, которое состоит из данных, полученных во время сборки, о том, что представляет собой актив, его зависимости, является ли он локальным или удаленным и так далее.

Из Каталога запрос проходит через систему Провайдера. Один или несколько провайдеров используют эти местоположения для поиска контента и возврата его на устройство.

В Addressables время выполнения является асинхронным. Это дает вам возможность извлекать актив, когда он вам нужен, независимо от того, где он находится - его местоположение может меняться в зависимости от стадии разработки - без необходимости изменять код игры.

группы адресуемых ресурсов
группы адресуемых ресурсов

Когда вы помечаете что-то как адресуемое, оно становится частью группы Addressables Group, которая представляет собой контейнер для адресуемых активов и их данных. Вы можете визуализировать группы в окне Groups, которое является домашней базой для Addressables. Группы могут определять, будет ли этот актив локальным на устройстве или размещен на сервере.

Данные о группах адресатов хранятся в схемах, которые представляют собой договоры о предоставлении данных. Одна из схем посвящена тому, как ваши активы и контент будут собираться в пакеты. Build Path и Load Path - одни из самых полезных настроек, позволяющие установить локальный или удаленный контент, выбрав переменную из выпадающего меню.

В системе Addressables Profile вы создаете профиль для группы Addressables Group, а затем определяете для данного профиля, что должны оценивать переменные. Это позволяет устанавливать данные в группе и вносить в них изменения удаленно, не перекодируя ни одну из частей группы.

Производство

Чтобы получить максимальную отдачу от Addressables, нужно визуализировать данные с точки зрения того, как вы хотите поставлять свою игру. Вам не обязательно придерживаться определенной структуры, поскольку переменные Profile легко изменить в процессе разработки, но у вас должен быть общий подход к организации ваших пакетов.

Например, если вы хотите поставлять свою игру с удаленным контентом, но хотите, чтобы этот контент был локальным во время разработки, вы можете создать профиль, в котором удаленные пути будут указывать на потоковые активы. Таким образом, вы можете глобально изменить весь удаленный контент и сделать его локальным, не трогая код группы.

редактор адресуемых ресурсов, хостинг
Редактор хостинга

Иногда вам нужно разместить содержимое на сервере. Вы можете задать удаленный путь и вместо ссылки на реальный URL использовать переменные, определенные службой хостинга.

Когда вы включаете хостинг, служба хостинга устанавливает HTTP-хост в редакторе. Вы можете подключить свое устройство или плеер к этому узлу, чтобы протестировать его.

Одна из мощных особенностей хостинга Editor заключается в том, что вы можете настроить все на удаленное использование. Это особенно полезно для разработчиков контента и художников, потому что вы можете создать плеер и развернуть его на устройстве, продолжая итерации своего контента. Вам не придется развертывать плеер или беспокоиться о переносе контента с одного устройства на другое. Ознакомьтесь с нашей документацией, чтобы узнать больше о создании и настройке хостинг-услуг с адресными таблицами.

Многие из ключевых технических проблем поддержки динамического контента решены с помощью Addressables, но остается проблема "последней мили" - хостинг и доставка активов в игры и приложения в режиме реального времени. Позже в этом году мы запустим готовое решение для глобального хостинга контента, полностью интегрированное в систему Addressables. Если вы хотите узнать больше об этой услуге, подпишитесь здесь.

Как загрузить активы в Addressables

Команда разработчиков живого контента работает над ускорением рабочих процессов, включая несколько быстрых способов загрузки активов.

Как загрузить активы в Addressables?

По адресу: Кодеры часто загружают адресуемые объекты по строке, используя идентификатор местоположения актива для удобства поиска во время выполнения.

По этикетке: Предоставляет дополнительный адресный идентификатор актива для загрузки аналогичных элементов во время выполнения.

По AssetReference: AssetReference работает как прямая ссылка, но с отложенной инициализацией. Объект AssetReference хранит GUID в виде адресуемой информации, которую можно загружать по требованию. Художники, работающие в редакторе, могут предпочесть этот рабочий процесс.

Если актив, на который вы ссылаетесь, имеет под-объекты (например, спрайты в SpriteAtlas), вы можете дополнительно ссылаться на под-объекты.

Если вы хотите увидеть Addressables и процесс загрузки спрайтов в действии, посетите демонстрационную часть сессии, посвященную спрайтам.

адресуемые ресурсы, настройка сборки
Настройка вашей сборки

Пакет Addressables содержит три сценария сборки, которые создают данные Play Mode, чтобы ускорить разработку приложений. Сценарии: Use Asset Database, Simulate Groups и Use Existing Build.

Сценарий " Использовать базу данных активов ". Это позволяет вам переходить в режим Play Mode и выходить из него, пока вы итерируете контент; вы можете быстро запустить игру, пока вы работаете над ее течением. Он загружает активы непосредственно через базу данных активов для быстрой итерации без анализа и создания пакетов активов.

Simulate Groups анализирует содержимое на предмет компоновки и зависимостей без создания пакетов активов. Чтобы увидеть, когда пакеты загружаются или выгружаются во время игрового процесса, просмотрите использование активов в окне Addressables Event Viewer(Window > Asset Management > Addressables > Event Viewer). Этот режим помогает моделировать стратегии нагрузки и настраивать группы контента, чтобы найти правильный баланс для производственного релиза.

Сценарий Use Existing Build похож на сборку развернутого приложения, но он требует создания данных в качестве отдельного шага. Если вы не изменяете активы, этот режим является самым быстрым, поскольку при переходе в режим воспроизведения не обрабатываются никакие данные.

Где можно узнать больше об адресных системах?

Если вы хотите использовать адресные системы в своем проекте, ознакомьтесь с документацией Addressable Asset System, чтобы узнать, как начать работу. Прочитайте нашу статью в блоге, проверьте образцы на GitHub или присоединитесь к обсуждениям на форумах.

Cloud Content Delivery Последняя миля

Cloud Content Delivery (CCD), запущенная в сентябре 2020 года, - это наше собственное глобальное решение для хостинга контента, полностью интегрированное в систему Addressables. С помощью CCD вы можете легко создавать и выпускать обновления для игр с мощным управлением активами и доставкой контента через облако - необходимая функциональность для работы с живыми играми и приложениями. Узнать больше и зарегистрироваться можно здесь.

Нравится ли вам этот контент?