Найти в Дзене
Виталий Власов

Unity Addressable Asset Система

Оглавление

Addressables-это система управления активами Unity Editor & runtime, которая улучшает поддержку больших производственных групп со сложными потребностями в доставке контента в реальном времени. Этот релиз знаменует собой важную часть в нашем путешествии, чтобы облегчить боль разработчиков, а также принести возможности живого контента в пределах досягаемости небольших команд, менее оснащенных для решения инженерных задач. Addressables теперь не доступен для предварительного просмотра и будет доступен в виде проверенного пакета для Unity 2019.3. Он будет полностью поддерживаться в релизах Unity 2018 LTS.

Background

В Unity 4 пакеты активов были введены как низкоуровневый механизм построения активов в дискретные единицы для динамической загрузки во время выполнения. Реализация пакетов ресурсов позволяет разработчикам отделять контент от установки приложения. Это дает возможность доставлять регулярные обновления контента в живые приложения с небольшим начальным размером загрузки, оставаясь ниже предела установки по воздуху при добавлении дополнительного содержимого приложения.

Несмотря на эти преимущества, использование пакетов активов в реальном производстве является сложной задачей. В Unity нет очевидных рабочих процессов для перехода контента в пакеты активов из простых механизмов ссылки и загрузки активов в Unity – через прямые ссылки в сценах и публичных полях GameObjects. Переход приложения или игры от использования чисто статического, встроенного контента к контенту с возможностью динамической загрузки контента с добавочными обновлениями требует большого количества рефакторинга и пользовательского программирования. Поэтому эта возможность остается недоступной для многих, если не для большинства разработчиков.

Addressable Asset System

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


Основная функция Addressables состоит в том, чтобы отделить
, какие активы загружаются от того, где и как эти активы загружаются. Любой ресурс, включая сцены, префабы, текстовые ресурсы и т.д. можно пометить как Addressables и присвоить уникальное имя. После адресации на ресурс можно ссылаться и загружать по его Addressables имени в коде и через специальную ссылку на ресурс тип сценария. Отдельно, адресуемые активы могут быть сгруппированы вместе для построения и загрузки в виде встроенного контента или в пакеты для динамической загрузки во время выполнения. Именно благодаря этому разделению проблем решения о упаковке и распространении контента могут быть отложены на более поздний период производства, не требуя изменений в коде игры.

Окно Addressables
Окно Addressables

Управление Памятью Во Время Выполнения

Ключевым преимуществом загрузки из пакетов активов в Unity является то, что они обеспечивают эффективное средство для выгрузки, больше не нужен контент из памяти. Эффективное отслеживание того, что загружено и что может быть безопасно выгружено, является сложной задачей кодирования, ранее оставленной разработчику. Загрузка через Addressables автоматически обеспечивает высокий уровень подсчета ссылок загруженных активов и их зависимостей и может автоматически выгружать пакеты и связанные с ними активы, когда они больше не используются. Кроме того, Addressables предоставляет визуальный профилировщик для отладки в реальном времени загруженных счетчиков ресурсов и ссылок на пакеты ресурсов.

Профилировщик
Профилировщик

Более быстрая итерация

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

  • Моделирование режима воспроизведения: ресурсы загружаются непосредственно с диска, не требуя процесса сборки, при этом обеспечивая возможность отладки отсчетов ссылок на активы через профилировщик.
  • Быстрые инкрементные сборки: Addressables поставляется с новым конвейером сборки сценариев, который повышает скорость и надежность инкрементных сборок.
  • Услуги редактора: встроенное средство для обслуживания адресуемого контента на локальные устройства, подключенные к локальной сети, обеспечивает быстрый и удобный метод для итерации контента на устройстве.

Приступая к работе

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

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

Спасибо за прочтение статьи, это был
перевод,

Подписывайтесь и наслаждайтесь полезной информацией!