Version: 2017.4
Construyendo AssetBundles
Using AssetBundles Natively

Dependencias AssetBundle

Los AssetBundles pueden volverse dependientes de otros AssetBundles si uno o más de los UnityEngine.Objects contiene una referencia a unUnityEngine.Object ubicado en otro bundle. No se produce una dependencia si el UnityEngine.Object contiene una referencia a unUnityEngine.Object que no está contenido en ningún AssetBundle. En este caso, una copia del objeto del que dependería el bundle se copiará en el bundle cuando usted construya los AssetBundles. Si varios objetos en múltiples bundles contienen una referencia al mismo objeto que no está asignado a un bundle, cada paquete que tendría una dependencia en ese objeto hará su propia copia del objeto y lo empaquetará en el AssetBundle construido.

Si un AssetBundle contiene una dependencia, es importante que los bundles que contienen esas dependencias se carguen antes de que se cargue el objeto que está intentando crear una instancia. Unity no intentará cargar dependencias automáticamente.

Considerando el siguiente ejemplo, un Material en unas referencias Bundle 1 a una Textura en una Bundle 2:

En este ejemplo, antes de cargar el material desde Bundle 1, necesitaría cargar Bundle 2 en la memoria. No importa qué orden cargue Bundle 1 y Bundle 2, lo importante es que Bundle 2 se carga antes de cargar el material desde Bundle 1. En la siguiente sección, analizaremos cómo puede utilizar los objetos AssetBundleManifest que hemos mencionado en la sección anterior para determinar y cargar dependencias en el tiempo de ejecución.


Construyendo AssetBundles
Using AssetBundles Natively