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

BuildAssetBundleOptions.DeterministicAssetBundle

Описание

Создает набор ресурсов, используя хэш для идентификатора объекта, хранящегося в наборе ресурсов.

Это позволяет перестраивать набор ресурсов и ссылаться на них напрямую. При перестроении пакета ресурсов объекты в нем гарантированно будут иметь тот же идентификатор после перестроения пакета ресурсов. Из-за того, что это 32-битное хеш-пространство, если у вас много объектов в комплекте ресурсов, это увеличит вероятность конфликтов хэшей. В этом случае Unity выдаст ошибку и не создаст пакет ресурсов. Хэш основан на GUID актива и локальном идентификаторе объекта в активе. Детерминированные AssetBundle также загружаются медленнее, чем обычные пакеты ресурсов, это связано с тем, что API потоковой фоновой загрузки обычно ожидает, что объекты будут упорядочены таким образом, чтобы чтение уменьшало поиск. С детерминированными наборами активов это невозможно.

Примечание. Эта функция всегда включена.

//Create a folder (right click in the Assets folder and go to Create>Folder), and name it “Editor” if it doesn’t already exist //Place this script in the Editor folder //This script creates a new Menu named “Build Asset” and new options within the menu named “Normal” and “Deterministic Asset Bundle”. Click these menu items to build an AssetBundle into a folder with different build options. using UnityEngine; using UnityEditor; public class Example : MonoBehaviour { //Creates a new menu (Build Asset Bundles) and item (Normal) in the Editor [MenuItem("Build Asset Bundles/Normal")] static void BuildABsNone() { //Create a folder to put the Asset Bundle in. // This puts the bundles in your custom folder (this case it's "MyAssetBuilds") within the Assets folder. //Build AssetBundles with no special options BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.None, BuildTarget.StandaloneOSX); } //Creates a new item (Deterministic) in the new Build Asset Bundles menu [MenuItem("Build Asset Bundles/Deterministic ")] static void BuildABsDeterministic() { //Build the AssetBundles in this mode BuildPipeline.BuildAssetBundles("Assets/MyAssetBuilds", BuildAssetBundleOptions.DeterministicAssetBundle, BuildTarget.StandaloneOSX); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3