Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Исправить AssetBundles так же просто, как загрузить новый AssetBundle и заменить существующий. Если WWW.LoadFromCacheOrDownload или UnityWebRequest используются для управления кэшированными AssetBundles приложения, передача другого параметра версии в выбранный API вызовет срабатывание загрузка новых AssetBundles.

Более сложная проблема, которую нужно решить в системе исправлений, — определить, какие AssetBundles следует заменить. Для системы исправлений требуется два списка информации:

  • Список загруженных в данный момент AssetBundles и информация об их версиях.
  • Список AssetBundles на сервере и информация об их версиях.

Программа исправления должна загрузить список серверных пакетов AssetBundle и сравнить списки AssetBundle. Отсутствующие пакеты AssetBundles или пакеты AssetBundle, информация о версии которых изменилась, следует загрузить повторно.

Также можно написать собственную систему для обнаружения изменений в AssetBundles. Большинство разработчиков, создающих собственные системы, предпочитают использовать стандартный формат данных для своих списков файлов AssetBundle, например JSON, и стандартный класс C# для вычисления контрольных сумм, например MD5.

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

Unity не предоставляет встроенного механизма дифференциального исправления, и ни WWW.LoadFromCacheOrDownload, ни UnityWebRequest не выполняют дифференциальное исправление, когда с помощью встроенной системы кэширования. Если дифференциальное исправление является требованием, необходимо написать собственный загрузчик.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3